<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      ELK實時監控Nginx日志

      ELK分析Nginx日志和可視化展示

      一、概述

      使用ELK收集nginx access日志,利用Grafana做出一套可視化圖表

      二、環境準備

      環境說明

      操作系統:centos 7.6
      docker版本:19.03.12
      ip地址:192.168.31.196

      elk搭建

      關于elk的搭建,請參考以下3篇文章:

      • docker安裝elasticsearch和head插件
      • docker安裝logstash
      • docker安裝kibana

      nginx安裝

      線上nginx直接用yum安裝的

      yum install -y nginx
      

      三、nginx日志格式

      默認的nginx日志格式,需要改為指定的格式

      http {
          log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                            '$status $body_bytes_sent "$http_referer" '
                            '"$http_user_agent" "$http_x_forwarded_for"';
      
          log_format aka_logs
                            '{"@timestamp":"$time_iso8601",'
                            '"host":"$hostname",'
                            '"server_ip":"$server_addr",'
                            '"client_ip":"$remote_addr",'
                            '"xff":"$http_x_forwarded_for",'
                            '"domain":"$host",'
                            '"url":"$uri",'
                            '"referer":"$http_referer",'
                            '"args":"$args",'
                            '"upstreamtime":"$upstream_response_time",'
                            '"responsetime":"$request_time",'
                            '"request_method":"$request_method",'
                            '"status":"$status",'
                            '"size":"$body_bytes_sent",'
                            '"request_body":"$request_body",'
                            '"request_length":"$request_length",'
                            '"protocol":"$server_protocol",'
                            '"upstreamhost":"$upstream_addr",'
                            '"file_dir":"$request_filename",'
                            '"http_user_agent":"$http_user_agent"'
          '}';
      
          #access_log  /var/log/nginx/access.log  main;
          access_log  /var/log/nginx/access.log  aka_logs;
      

      注意:這里的nginx的所有訪問日志,統一在/var/log/nginx/access.log。
      如果你的環境,單獨為每一個虛擬主機分配了access日志,那么就需要在對應的虛擬主機配置文件,應用格式aka_logs即可。

      四、logstash配置

      注意:由于本文,直接使用logstash采集nginx日志,并發送給elasticsearch。
      如果是使用filebeat收集nginx日志,請查閱參考文章中的配置說明。

      nginx.conf

      新建文件nginx.conf

      /data/elk7/logstash/config/conf.d/nginx.conf
      

      內容如下:

      input {
        file {
              ## 修改你環境nginx日志路徑
              path => "/var/log/nginx/access.log"
              ignore_older => 0 
          codec => json
          }
      }
      
      filter {
        geoip {
          #multiLang => "zh-CN"
          target => "geoip"
          source => "client_ip"
          database => "/usr/share/logstash/GeoLite2-City.mmdb"
          add_field => [ "[geoip][coordinates]", "%{[geoip][longitude]}" ]
          add_field => [ "[geoip][coordinates]", "%{[geoip][latitude]}" ]
          # 去掉顯示 geoip 顯示的多余信息
          remove_field => ["[geoip][latitude]", "[geoip][longitude]", "[geoip][country_code]", "[geoip][country_code2]", "[geoip][country_code3]", "[geoip][timezone]", "[geoip][continent_code]", "[geoip][region_code]"]
        }
        mutate {
          convert => [ "size", "integer" ]
          convert => [ "status", "integer" ]
          convert => [ "responsetime", "float" ]
          convert => [ "upstreamtime", "float" ]
          convert => [ "[geoip][coordinates]", "float" ]
          # 過濾 filebeat 沒用的字段,這里過濾的字段要考慮好輸出到es的,否則過濾了就沒法做判斷
          remove_field => [ "ecs","agent","host","cloud","@version","input","logs_type" ]
        }
        # 根據http_user_agent來自動處理區分用戶客戶端系統與版本
        useragent {
          source => "http_user_agent"
          target => "ua"
          # 過濾useragent沒用的字段
          remove_field => [ "[ua][minor]","[ua][major]","[ua][build]","[ua][patch]","[ua][os_minor]","[ua][os_major]" ]
        }
      }
      output {
        elasticsearch {
          hosts => "192.168.31.196"
          #user => "elastic"
          #password => "password"
          index => "logstash-nginx-%{+YYYY.MM.dd}"
        }
      }
      

      注意2個位置:
      /usr/share/logstash/GeoLite2-City.mmdb,這個是地圖數據文件;
      elasticsearch {xx} 這里填寫elasticsearch信息,由于我的elasticsearch 沒有開啟認證,因此不需要用戶名和密碼,請根據實際情況填寫。

      GeoLite2-City.mmdb

      GeoLite2-City.mmdb是IP信息解析和地理定位的。官方下載是需要收費的,因此我找了一個免費下載地址。
      下載地址1: https://pan.baidu.com/s/1sjtdvPV
      備用下載地址:
      鏈接: https://pan.baidu.com/s/1eJkDqq2nvV3vETyUfOBypw 提取碼:2jq5

      下載完成后,將此文件,上傳到/data/elk7/logstash目錄,待會啟動logstash,就會掛載進去。

      以新的方式啟動logstash

      docker rm -f logstash
      
      docker run -d \
        --name=logstash \
        --restart=always \
        -p 5044:5044 \
        -v /data/elk7/logstash:/usr/share/logstash \
        -v /var/log/messages:/var/log/messages \
        -v /var/log/nginx:/var/log/nginx \
        logstash:7.5.1
      

      等待30秒,查看logstash日志是否有錯誤

      docker logs -f logstash
      

      訪問head插件,查看索引是否生成

      http://192.168.31.196:9100/
      

      有出現logstash-nginx 索引,說明成功了。
      image

      五、Grafana配置

      關于grafana的安裝,此處不再贅述。

      添加數據源

      添加elasticsearch數據源,這里輸入elasticsearch的url
      image
      如果elasticsearch需要認證,在下面的Auth設置中,Basic auth開啟,輸入用戶名和密碼。
      輸入索引值,時間戳,選擇版本:7.0+
      image
      如果測試通過,則會添加成功。

      安裝插件

      進入grafana容器,安裝2個插件,用來支持展示圖表的。

      grafana-cli plugins install grafana-piechart-panel
      grafana-cli plugins install grafana-worldmap-panel
      

      重啟grafana

      docker restart grafana
      

      導入模板

      模板下載地址為: https://grafana.com/grafana/dashboards/11190
      下載最新版本,導入json文件,選擇2個數據源
      image

      查看效果

      刷新頁面,效果如下:

      image
      轉載:https://blog.51cto.com/u_16099281/10665577

      posted @ 2024-10-16 10:27  先鋒之客  閱讀(285)  評論(0)    收藏  舉報
      主站蜘蛛池模板: av色国产色拍| 国产精品天干天干综合网| 丁香色婷婷国产精品视频| 精品久久一线二线三线区| 99久久亚洲综合网精品| 雷州市| 一区二区三区国产不卡| 亚洲国产欧美一区二区好看电影| 国产成人一区二区不卡| 成人欧美日韩一区二区三区| 亚洲AV蜜桃永久无码精品| 高清偷拍一区二区三区| 日本va欧美va欧美va精品| 亚洲自拍偷拍中文字幕色| 亚洲高清免费在线观看| 精品久久久久久中文字幕202| 两个人的视频www免费| 日本一区二区精品色超碰| 日韩永久永久永久黄色大片 | 巨胸爆乳美女露双奶头挤奶| 欧美人成精品网站播放| 美女人妻激情乱人伦| 一区二区三区四区国产综合| 精品国产亚洲午夜精品a| 人妻无码中文字幕免费视频蜜桃| 国产真实乱对白精彩久久| 亚洲一二三区精品美妇| 亚洲成人av综合一区| 亚洲 中文 欧美 日韩 在线| 91久久性奴调教国产免费| 亚洲精品韩国一区二区| 日本久久精品一区二区三区| 俺也来俺也去俺也射| 狠狠色噜噜狠狠狠777米奇小说| 99精品国产中文字幕| 亚洲加勒比久久88色综合| 亚洲中文无码永久免费| 激情人妻中出中文字幕一区| 美日韩精品一区二区三区| 性欧美大战久久久久久久| 久久精品国产高潮国产夫妻|