logstash event
input - filter -output
- 數(shù)據(jù)在內(nèi)部流轉(zhuǎn)時(shí)的具體表現(xiàn)形式。數(shù)據(jù)在input階段被轉(zhuǎn)換為event宰掉,在output被轉(zhuǎn)換為目標(biāo)格式數(shù)據(jù)麻汰。
- Event是一個Java Object,在配置文件中可以對event的屬性進(jìn)行增刪改查
queue
In memory queue
進(jìn)程crash,機(jī)器宕機(jī),都會引起數(shù)據(jù)丟失Persistent queue
queue.type.persisted(默認(rèn)是memory)
queue.max_bytes: 4gb
機(jī)器宕機(jī)网持,數(shù)據(jù)也不會丟失;數(shù)據(jù)保證會被消費(fèi)匀钧;可以代替kafka等消息隊(duì)列緩沖區(qū)的作用https://www.elastic.co/guide/en/logstash/7.1/persistent-queues.html
Input plugin — File
- 支持從文件中讀取數(shù)據(jù)翎碑,如日志文件
- 文件讀取需要解決的問題
只被讀取一次谬返。重啟后需要從上次讀取的位置繼續(xù)(通過 sincedb 實(shí)現(xiàn)) - 讀取到文件新內(nèi)容之斯,發(fā)現(xiàn)新文件
- 文件發(fā)生歸檔操作(文檔位置發(fā)生變化,日志 rotation)遣铝,不能影響當(dāng)前的內(nèi)容讀取
Filter plugin
對logstash event 進(jìn)行各種處理佑刷,例如解析、刪除字段酿炸、類型轉(zhuǎn)換
Date(日志解析)瘫絮,Dissect(分隔符解析),Grok(正則匹配解析)填硕,Mutate(處理字段麦萤。重命名、刪除扁眯、替換)壮莹,Ruby(利用Ruby代碼來動態(tài)修改event)-
Mutate
Mutate插件