中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ELK7.4-Lostash Grok格式化Nginx日志

發布時間:2020-06-20 12:21:46 來源:網絡 閱讀:1110 作者:小生博客 欄目:系統運維

小生博客:http://xsboke.blog.51cto.com

                -------謝謝您的參考,如有疑問,歡迎交流

目錄

  • 需求
  • 環境
  • Grok官方介紹
  • Web端配置
  • 部分效果展示

需求

使用filebeat收集nginx訪問日志,output到logstash,
logstash使用grok filter plugin將獲取到的nginx日志結構化
將結構化的nginx日志output到elasticsearch

環境

  • 這里只列出了和grok相關的配置,其他配置參考文章ELK7.4-快速入門實現數據收集.

    web               172.16.100.251      nignx/filebeat/logstash 
    elasticsearch 172.16.100.252      elasticsearch/kibana

Grok的官方介紹

  1. 解析任意文本并將其結構化。

  2. Grok是將非結構化日志數據解析為結構化和可查詢內容的好方法。

  3. 該工具非常適合syslog日志,apache和其他Web服務器日志,mysql日志,以及通常用于人類而非計算機使用的任何日志格式。

  4. Grok語法:%{SYNTAX:SEMANTIC}

    • SYNTAX:匹配語法,也就是Grok語法.附:點擊查看:Grok Patterns
    • SEMANTIC:用于標識匹配到的字符串,也就是field.
  5. 官方推薦的一個驗證Grok語法的web工具,使用方法,將需要解析的字符串寫入到第一個文本輸入框,將寫好的Grok表達式寫入第二個輸入框,然后勾選Named Captures Only即可.

    示例:

    • Nginx Log Format:$request_time|$host|$remote_addr|[$time_local]
    • Nginx Log:0.123|baidu.com|192.168.0.1|[18/Oct/2019:11:22:14 +0800]
      -ELK7.4-Lostash Grok格式化Nginx日志
    • 提示,為了避免"|"被轉義,這里使用"\"禁止其轉義.

web配置

1. Nginx Log Format
# 這里的日志格式比較復雜,是為了更好的展示Grok
log_format access   '$request_time|$host|$remote_addr|$remote_user|[$time_local]|$request|$status|$upstream_status|$upstream_response_time|$upstream_addr|$body_bytes_sent|$request_body|$http_referer|$http_user_agent|$http_x_forwarded_for|$http_x_forwarded_path,$server_addr|$upstream_cache_status';
2. filebeat
vim /etc/filebeat/filebeat.yml

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/nginx/jpg_access.log
  tags: ["nginx_access"]
3. logstash
vim /etc/logstash/conf.d/nginx.conf

input {
    beats {
        port => 5044
    }
}

filter {
    if "nginx_access" in [tags] {
        grok {
            match => { "message" => "%{NUMBER:request_time}\|%{IPORHOST:host}\|%{IPORHOST:remote_addr}\|%{USERNAME:remote_user}\|\[%{HTTPDATE:time_local}\]\|%{NOTSPACE:request_method} %{NOTSPACE:request} (?:HTTP/%{NUMBER:http_version})\|%{NUMBER:status}\|%{NUMBER:upstream_status}\|%{NUMBER:upstream_response_time}\|%{NOTSPACE:upstream_addr}\|%{NUMBER:body_bytes_sent}\|%{NOTSPACE:request_body}\|%{NOTSPACE:http_referer}\|%{GREEDYDATA:http_user_agent}\|%{NOTSPACE:http_x_forwarded_for}\|%{NOTSPACE:http_x_forwarded_path}\|%{NOTSPACE:upstream_cache_status}" }
        }

        geoip {
            source => "http_x_forwarded_for" # 通過geoip庫查詢IP歸屬地
        }
    }
}

output {
    if "nginx_access" in [tags] {
        elasticsearch {
            hosts => ["172.16.100.252"]
            index => "nginx_access-%{+YYYY.MM.dd}"
        }
    }
}

效果

然后在Kibana上面添加索引,在Discover頁面就會看多自定義的fields

這樣在更利于后期的數據分析,并且在Discover頁面可以更直觀的過濾或者查看數據.
ELK7.4-Lostash Grok格式化Nginx日志

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

信宜市| 和林格尔县| 宜兴市| 武义县| 图们市| 咸丰县| 博兴县| 江安县| 兴文县| 蒙城县| 东阳市| 洞头县| 沙雅县| 仁怀市| 广德县| 彰化市| 济宁市| 浪卡子县| 长垣县| 岚皋县| 吉水县| 建水县| 陈巴尔虎旗| 凤凰县| 富宁县| 凤冈县| 呈贡县| 廉江市| 仙桃市| 资源县| 治县。| 沭阳县| 马尔康县| 甘德县| 永川市| 三门峡市| 青铜峡市| 成武县| 禄劝| 莱西市| 东城区|