logstash與filebeat收集日誌

2021-08-13 10:43:00 字數 2225 閱讀 4338

1、背景介紹

日誌收集,採用的是 elk 框架,即 elasticsearch,logstash,kibana,另外還有 filebeat 元件,其中 filebeat 用於掃瞄日誌檔案,將日誌傳送到 logstash 服務,logstash 服務則完成將日誌切分,傳送到 elasticsearch 服務。

2、filebeat的部署步驟(日誌 -> logstash)

建立***.filebeat.yml檔案,注意內容的格式,否則你會找半天的錯誤都可能找不出原因。

啟動服務

[root@hadoop1 opt] tar -xf  filebeat-5.2.2-linux-x86_64.tar.gz  ./

# 這裡根據實際的業務需要編寫filebeat.yml檔案

[root@hadoop1 filebeat-5.2.2-linux-x86_64] vim swordfish.filebeat.yml

# 檔案的具體內容如下:

filebeat.prospectors:

- input_type: log

multiline.timeout: 1s

paths:

- /opt/swordfish/target/swordfish-all-1.0-snapshot/logs/exec-server*.log

multiline:

pattern: '^\['

negate: true

match: after

# exclude_lines: ["^\\[debug\\]"]

output.logstash:

hosts: ["192.168.14.148:9999"]

配置解釋

multiline:適用於日誌中每一條日誌佔據多行的情況,比如各種語言的報錯資訊呼叫棧。這個配置的下面包含如下配置:

pattern:多行日誌開始的那一行匹配的pattern

negate:是否需要對pattern條件轉置使用,不翻轉設為true,反轉設定為false

match:匹配pattern後,與前面(before)還是後面(after)的內容合併為一條日誌

max_lines:合併的最多行數(包含匹配pattern的那一行)

timeout:到了timeout之後,即使沒有匹配乙個新的pattern(發生乙個新的事件), 也把已經匹配的日誌事件傳送出去

啟動指令-後台啟動

[root@hadoop1 filebeat-5.2.2-linux-x86_64]$ nohup ./filebeat -e -c udp-filebeat.yml -d publish &
3、logstash的部署(logstash -> elasticsearch)

建立swordfish-pipeline.conf檔案,注意內容的格式,否則你會找半天的錯誤都可能找不出原因。

啟動服務

# 解壓

[root@hadoop1 opt]# tar -xf logstash-5.2.2.tar.gz ./

[root@hadoop1 opt]# vim swordfish-pipeline.conf

# 內容格式要注意

input

}filter \]\[%\](?.*)\[jobid=(?[\w\d\-_]+)\](?.*)", "%\]\[%\](?.)(?.*)"] }

add_field => ]%%" }

remove_field => [ "message", "v1", "v2" ]

} if ![jobid]

}mutate }}

output

elasticsearch "

}}

啟動指令-後台啟動

[root@hadoop1 logstash-5.2.2]# nohup bin/logstash -f udp-pipeline.conf &
4es的部署我們之前有介紹過,下面我們去es-head頁面去看一下日誌是否在es中儲存。

上面中我們發現日誌是可以收集到的。

Logstash的安裝與使用

logstash logstash是elastic技術棧中的乙個技術。它是乙個資料採集引擎,可以從資料庫採集資料到es中。我們可以通過設定自增id主鍵或者時間來控制資料的自動同步,這個id或者時間就是用於給logstash進行識別的 安裝logstash 外掛程式 logstash input jd...

Logstash學習1 logstash的簡單例子

如何安裝elk redis外掛程式 logstash f test.conf config.test and exit 會列印出錯誤並且會自動退出 7.測試顯示ok的話。執行 logstash f first pipeline.conf config.reload.automatic 這個配置可以使...

logstash 輸出外掛程式之redis與es

logstash 輸出外掛程式之redis與es 第二章 logstash 輸出外掛程式之redis與es 最常用的兩個輸出外掛程式 redis es一 redis 1 用法 複製 1 output 20 複製 2 配置項 以上所有配置項都是可選的,沒有必須的。以下4個紅色配置是最重要的4個配置 批...