日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 综合教程 >内容正文

综合教程

Beats及Filebeat轻量型日志采集器

發(fā)布時(shí)間:2023/12/19 综合教程 39 生活家
生活随笔 收集整理的這篇文章主要介紹了 Beats及Filebeat轻量型日志采集器 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Beats簡(jiǎn)介

  Beats被官方稱(chēng)為L(zhǎng)ightweight Data Shipper,就是輕量級(jí)數(shù)據(jù)傳送者,它主要有幾個(gè)分類(lèi),如下:

    1. Filebeats日志文件,主要是針對(duì)日志文件。

    2. Metricbeat度量數(shù)據(jù),主要可以收集CPU等數(shù)據(jù),內(nèi)存,磁盤(pán),服務(wù)器軟件(如nginx,Mysql等)。

    3. Packetbeat網(wǎng)絡(luò)數(shù)據(jù),主要收集網(wǎng)絡(luò)數(shù)據(jù)。

    4. Winlogbeat Windows數(shù)據(jù),針對(duì)windows系統(tǒng)日志數(shù)據(jù)。

    5. Heartbeat健康檢查。  

下圖是Beats在整個(gè)Elastic Stack中的位置。

  

  Beats位于上圖的左側(cè),也就是數(shù)據(jù)產(chǎn)生的起始端,它們可以將數(shù)據(jù)直接傳輸?shù)絜lasticsearch中,也可以通過(guò)logstash對(duì)數(shù)據(jù)進(jìn)行解析和轉(zhuǎn)換,然后在傳輸?shù)絜lasticsearch,最后在對(duì)數(shù)據(jù)進(jìn)行可視化的展示。

什么是Filebeat

  Filebeat是一款使用go語(yǔ)言開(kāi)發(fā)的,主要是對(duì)日志文件進(jìn)行處理的,是一個(gè)屬于Beats系列的日志托運(yùn)者 (一組安裝在主機(jī)上的輕量級(jí)托運(yùn)人),用于將不同類(lèi)型的數(shù)據(jù)傳送到ELK堆棧進(jìn)行分析。每個(gè)Beat專(zhuān)門(mén)用于傳送不同類(lèi)型的信息,例如,Winlogbeat發(fā)布Windows事件日志,Metricbeat發(fā)布主機(jī)指標(biāo)等等。顧名思義,F(xiàn)ilebeat提供日志文件。

  Filebeat處理流程

    1. 日志文件輸入(Input)。

    2. 處理日志文件(Filter)。

    3. 輸出到目標(biāo)對(duì)象中(Output)。

上圖是Filebeat的結(jié)構(gòu)圖。 上圖左邊灰色框中就是Filebeat,右邊是Filebeat的輸出對(duì)象,F(xiàn)ilebeat可以將日志輸出到Elasticsearch,Logstash,Kafka,redis等。

Filebeat的組成

根據(jù)上圖可以看到Filebeat由兩個(gè)主要組件組成,prospector 和 harvester。
    1. harvester(收割者):
      負(fù)責(zé)讀取單個(gè)文件的內(nèi)容。
      如果文件在讀取時(shí)被刪除或重命名,F(xiàn)ilebeat將繼續(xù)讀取文件。

    2. prospector(觀察者):
      prospector負(fù)責(zé)管理harvester并找到所有要讀取的文件來(lái)源,主要監(jiān)控文件是否變化,如果輸入類(lèi)型為日志,則查找器將查找路徑匹配的所有文件,并為每個(gè)文件啟動(dòng)一個(gè)harvester(上圖prospector1就有兩個(gè)harvester),如果文件有變化harvester就會(huì)收集新的日志。

     Filebeat可以有多個(gè)prospector,每個(gè)prospector負(fù)責(zé)的文件是不同的。    
      

Filebeat安裝

  可以先將Filebeats下載,去官網(wǎng)下載,地址:https://www.elastic.co/downloads/beats,也可以在這個(gè)地址 https://elasticsearch.cn/download/

  Filebeats官網(wǎng)地址:https://www.elastic.co/cn/beats/filebeat

Filebeats文檔地址:https://www.elastic.co/guide/en/beats/filebeat/current/index.html

  

  Filebeats目錄說(shuō)明

  Mac系統(tǒng)安裝:

  可以先查看filebeat安裝信息

  

  安裝

  

  查看安裝是否成功

  

安裝后Filebeat的相關(guān)安裝位置:

  1. 安裝目錄:/usr/local/Cellar/filebeat/{filebeat版本}/

  2. 配置目錄:/usr/local/etc/filebeat/

  3. 緩存目錄:/usr/local/var/lib/filebeat/

  

  啟動(dòng)featbeat,可以通過(guò)命令brew services start filebeat

  

Filebeat配置

  Filebeat的配置文件是filebeat.yml。Filebeat使用的是yaml語(yǔ)法,下面是Filebeat配置示例

filebeat.prospector:
  - input_type: log     
paths:                  
  - /var/log/apache/httpd-*.log
document_type: apache
  - input_type: log
paths:
  - /var/log/messages
  - /var/log/*.log 

說(shuō)明:

  1. prospector可以配置多個(gè),所以這里yaml對(duì)于數(shù)組是用 - 符號(hào)來(lái)表示的,每個(gè)prospector都有輸入類(lèi)型(input_type),這里log表示日志文件。

  2. paths也是數(shù)組(下面也有-這個(gè)符號(hào)),path用于指定日志路徑。

  Filebeat Output配置

    1. Filebeat Console(標(biāo)準(zhǔn)輸出):Filebeat將收集到等數(shù)據(jù),輸出到console里,一般用于開(kāi)發(fā)環(huán)境中,用于調(diào)試。

output.console
    pretty.true
enable: true

    2. Filebeat Elasticsearch

output.elasticsearch
    host:["http://localhost:9200"]
    username: "admin"
    password: "123456"

  

  Filebeat Filter配置

   Filebeat本身可以對(duì)數(shù)據(jù)進(jìn)行處理,不過(guò)處理能力還是有點(diǎn)弱,同時(shí)也缺乏對(duì)數(shù)據(jù)轉(zhuǎn)換的能力。

Filebeat 演示-收集Nginx日志

  通過(guò)stdin收集日志。

先查看Nginx是否啟動(dòng),在瀏覽器上輸入http://127.0.0.1:8080/

  

  如果不知道你的環(huán)境nginx監(jiān)聽(tīng)的端口,可以查看nginx.conf配置文件中l(wèi)isten就可以。

  

  查看下nginx日志內(nèi)容

songguojundeMacBook-Pro:~ songguojun$ head -n 10 /usr/local/var/log/nginx/access.log 
127.0.0.1 - - [07/May/2020:22:38:13 +0800] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:76.0) Gecko/20100101 Firefox/76.0"
127.0.0.1 - - [07/May/2020:22:44:36 +0800] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:76.0) Gecko/20100101 Firefox/76.0"

先對(duì)nginx.yml文件進(jìn)行配置,我的Mac系統(tǒng)nginx.yml路徑在/usr/local/etc/filebeat/modules.d/下面,如果沒(méi)有,可以新建一個(gè)nginx.yml文件。

該文件內(nèi)容配置如下:

filebeat.prospectors:
- input_type: stdin

output.console:
    pretty: true

在輸入命令head -n 10 /usr/local/var/log/nginx/access.log | filebeat -e -c /usr/local/etc/filebeat/modules.d/nginx.yml

nginx日志每一條都被封裝到j(luò)son中。

Filebeat和Elasticsearch Ingest Node

  Filebeat是缺乏對(duì)數(shù)據(jù)轉(zhuǎn)換的能力。所以ES在5.x版本的時(shí)候增加了一個(gè)新的node類(lèi)型Ingest Node。這個(gè)Ingest Node可以在數(shù)據(jù)寫(xiě)入ES之前可以對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換,使用的Api是pipeline。

Filebeat Module介紹

  Filebeat Module是針對(duì)社區(qū)中常見(jiàn)的需求進(jìn)行配置,封裝來(lái)增加易用性,比如常見(jiàn)nginx的日志,apache日志,mysql日志。這些封裝都在featbeat.yml這個(gè)配置文件中。

總結(jié)

以上是生活随笔為你收集整理的Beats及Filebeat轻量型日志采集器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。