日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

目錄
  • 1.為什么要針對不同的應用系統創建不同的索引
  • 2.搭建web集群環境
    • 2.1.環境準備
    • 2.2.web集群部署
    • 2.3.配置應用支持json格式的日志輸出
  • 3.配置filebeat實現不同日志對應不同索引
    • 3.1.實現思路
    • 3.2.配置filebeat不同日志使用不同索引庫
    • 3.3.在es上查看創建的索引庫
    • 3.4.在kibana上關聯es索引庫
      • 3.4.1.創建www索引庫
      • 3.4.2.創建bbs索引庫
      • 3.4.3.創建blog索引庫
      • 3.4.4.所有應用索引庫都一一對應上了
  • 4.在kibana統計日志分析
    • 4.1.統計nginx01主機www應用200狀態碼數量
      • 4.2.統計所有節點訪問狀態碼為200的日志

      1.為什么要針對不同的應用系統創建不同的索引

      公司生產環境中一臺機器上一定會運行著多個域名的應用,web應用也是集群的方式,如果filebeat收集來的日志都是分散存儲,且在es上建立的索引也都是分散的,這樣不利于日志的聚合匯總,因此就需要把同一種應用的不同機器上的日志全部采集過來存儲到一個索引庫中,在kibana根據各種條件去匹配

      2.搭建web集群環境

      2.1.環境準備

      IP 服務 應用
      192.168.81.210 nginx01 bbs、blog、www
      192.168.81.220 nginx02 bbs、blog、www

      2.2.web集群部署

      所有節點都按如下配置

      1.安裝nginx
      yum -y install nginx
      2.配置站點配置文件
      cat www.conf 
      server{
      	server_name www.jiangxl.com;
      	listen 80;
      	location ~ / {
      		root /web/www;
      		index index.html;
      	}
      }
      cat bbs.conf 
      server{
      	server_name bbs.jiangxl.com;
      	listen 80;
      	location ~ / {
      		root /web/bbs;
      		index index.html;
      	}
      }
      cat blog.conf 
      server{
      	server_name blog.jiangxl.com;
      	listen 80;
      	location ~ / {
      		root /web/blog;
      		index index.html;
      	}
      }
      3.創建站點路徑
      mkdir /web/{www,bbs,blog} -p
      chown -R nginx.nginx /web/
      echo "www index" > /web/www/index.html
      echo "bbs index" > /web/bbs/index.html
      echo "blog index" > /web/blog/index.html
      4.重載nginx
      nginx -t
      nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
      nginx: configuration file /etc/nginx/nginx.conf test is successful
      systemctl reload nginx
      5.訪問站點
      curl www.jiangxl.com bbs.jiangxl.com blog.jiangxl.com
      www index
      bbs index
      blog index
      

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      2.3.配置應用支持json格式的日志輸出

      所有節點都這樣配置

      cat www.conf 
      server{
      	server_name www.jiangxl.com;
      	listen 80;
      	location ~ / {
      		root /web/www;
      		index index.html;
      	}
      	access_log  /var/log/nginx/www_access.log  main;
      }
      cat bbs.conf 
      server{
      	server_name bbs.jiangxl.com;
      	listen 80;
      	location ~ / {
      		root /web/bbs;
      		index index.html;
      	}
      	access_log  /var/log/nginx/bbs_access.log  main;
      }
      cat blog.conf 
      server{
      	server_name blog.jiangxl.com;
      	listen 80;
      	location ~ / {
      		root /web/blog;
      		index index.html;
      	}
      	access_log  /var/log/nginx/blog_access.log  main;
      }
      

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      3.配置filebeat實現不同日志對應不同索引

      3.1.實現思路

      **日志索引思路:**如何才能讓filebeat根據不同的日志路徑去創建不同的索引,其實我們可以想一下ls -l命令,使用ls -l命令才能得到文件的詳細信息,但是使用ll也可以得到,這是為什么呢?是由于ll僅僅只是一個別名,我們也可以當成一個標記,ll對應的就是ls -l命令

      那么日志也一樣的,我們可以把www_access.log當成是一個標記,當標記內容為www_access.log時,我們就把他的日志存儲在www_access_xxx的索引庫中

      具體配置:如果一個主機上有多個不同應用的日志需要采集,我們可以定義多個type類型,最后根據定義的標記在indices中進行匹配

      **日志聚合思路:**我們也可以將所有機器的tomcat、nginx日志進行聚合收集,不需要根據應用去區分,而是把所有的tomcat日志收集在一起,這樣便于開發人員去查詢日志,查哪臺主機的就在kibana上進行過濾就行了

      如下圖所示,tomcat就是聚合收集,查哪臺機器的日志就添加一個篩選寫上主機名就可以了

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      filebeat標記匹配語法:

      filebeat.inputs:
      - type: log 									//一個日志一個type
        enabled: true										//是否寫在es中
        paths:											//日志路徑
          - /var/log/nginx/www_access.log
        json.keys_under_root: true								//開啟json格式解析
        json.overwrite_keys: true  
        tags: ["www"]														//標記內容,在[]里填寫即可
      output.elasticsearch:
        hosts: ["192.168.81.210:9200"]
        indices:													//索引匹配
          - index: "nginx-www-access-%{+yyyy.MM.dd}"					//索引庫名稱
            when.contains:										//匹配什么標記
              tags: "www"											//匹配標記為www的日志
      

      3.2.配置filebeat不同日志使用不同索引庫

      nginx集群內的所有filebeat都需要如下配置

      vim復制小技巧:復制2-8行的內容,粘貼到第9行的操作命令:在vim命令模式輸入:2,8t9,2,8表示2-8t行復制,9表示粘貼在第九行

      1.配置filebeat
      vim /etc/filebeat/filebeat.yml 
      filebeat.inputs:
      - type: log 
        enabled: true
        paths:
          - /var/log/nginx/www_access.log
        json.keys_under_root: true
        json.overwrite_keys: true  
        tags: ["www"]
      - type: log 
        enabled: true
        paths:
          - /var/log/nginx/bbs_access.log
        json.keys_under_root: true
        json.overwrite_keys: true  
        tags: ["bbs"]
      - type: log 
        enabled: true
        paths:
          - /var/log/nginx/blog_access.log
        json.keys_under_root: true
        json.overwrite_keys: true  
        tags: ["blog"]
      output.elasticsearch:
        hosts: ["192.168.81.210:9200"]
        indices:
          - index: "nginx-www-access-%{+yyyy.MM.dd}"
            when.contains:
              tags: "www"
          - index: "nginx-bbs-access-%{+yyyy.MM.dd}"
            when.contains:
              tags: "bbs"
          - index: "nginx-blog-access-%{+yyyy.MM.dd}"
            when.contains:
              tags: "blog"
      setup.template.name: "nginx"
      setup.template.pattern: "nginx-*"
      setup.template.enabled: false
      setup.template.overwrite: true
      2.重啟filebeat
      systemctl restart filebeat
      

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      3.3.在es上查看創建的索引庫

      由于nginx集群相同的應用是要寫在同一個索引庫中的,因此我們要觀察每加一個集群產生的數據變化

      剛配置完nginx01時的樣子

      www:12條 blog:11條 bbs:12條

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      增加nginx02后的樣子

      訪問nginx02上的應用六七次后,數據明顯發生了變化

      www:19條 blog:18條 bbs:19條

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      可以具體看索引中的數據,看看是不是對應的日志,完全正確

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      3.4.在kibana上關聯es索引庫

      3.4.1.創建www索引庫

      點擊Managerment—-索引模式—創建索引

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      字段選擇@timestamp

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      3.4.2.創建bbs索引庫

      操作與www的一致

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      3.4.3.創建blog索引庫

      操作與www的一致

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      3.4.4.所有應用索引庫都一一對應上了

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      4.在kibana統計日志分析

      4.1.統計nginx01主機www應用200狀態碼數量

      篩選添加:beat.name(主機名)is(是) nginx01(主機名)

      ? 狀態碼(訪問狀態碼) is(是) 200(狀態碼為200)

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      4.2.統計所有節點訪問狀態碼為200的日志

      只需要添加一個篩選器即可

      篩選添加:狀態碼(訪問狀態碼) is(是) 200(狀態碼為200)

      日志也起到了聚合的作用,所有節點都可以統計

      filebeat收集多個域名網站日志并存儲到不同es索引庫過程

      以上就是filebeat收集多個域名網站日志并存儲到不同es索引庫過程的詳細內容,更多關于filebeat收集網站日志存儲es的資料請關注其它相關文章!

      分享到:
      標簽:多個 收集 服務器 索引 過程
      用戶無頭像

      網友整理

      注冊時間:

      網站:5 個   小程序:0 個  文章:12 篇

      • 51998

        網站

      • 12

        小程序

      • 1030137

        文章

      • 747

        會員

      趕快注冊賬號,推廣您的網站吧!
      最新入駐小程序

      數獨大挑戰2018-06-03

      數獨一種數學游戲,玩家需要根據9

      答題星2018-06-03

      您可以通過答題星輕松地創建試卷

      全階人生考試2018-06-03

      各種考試題,題庫,初中,高中,大學四六

      運動步數有氧達人2018-06-03

      記錄運動步數,積累氧氣值。還可偷

      每日養生app2018-06-03

      每日養生,天天健康

      體育訓練成績評定2018-06-03

      通用課目體育訓練成績評定