cecil
June 26, 2021, 12:08am
1
我是新手,已測試了filebeat如何取得多個不同log源,也試了單一ilm是怎樣發生,也稍為明白template的用途。
現在有一個以下問題,目標是在同一伺服器上,把/var/log/syslog和/var/log/auth.log經filebeat分別套用在不同template上,然後各自也配不同ilm
例如syslog的ilm是hot 1day, delete 30days,而auth.log的ilm是hot 30 day, delete 365days。
應該要怎樣做?
如果單用Filebeat設定ilm便會所有放進同一indexes裡,我想系統能夠分別有像server001-auth和server001-syslog之類分別查看。
使用版本:
elasticsearch 7.13
filebeat 7.13
kibana 7.13
謝謝
joecwu
(Joe Wu)
July 15, 2021, 2:33am
2
filebeat 的設定上可以自定義 fields,將這兩種不同來源的資料區分開來。
filebeat.inputs:
- type: log
paths:
- /var/log/syslog/*
fields:
- log_type: syslog
- type: log
paths:
- /var/log/auth.log
fields:
- log_type: authlog
ILM 自己先在 Elasticsearch 設定好這兩種不同的規則,建立好各自的 aliases,然後把 Filebeat 的 ILM disable,不要讓 Filebeat 自己決定 Elasticsearch output 時的 index name.
setup.ilm.enabled: false
在 output 時,可以指定 index name 包含這個自定義的 fields.
output.elasticsearch:
hosts: ["http://localhost:9200"]
index: "server001-%{[fields.log_type]}"
這樣就可以寫到不同的 alias 之中 (這時應該就不用指定日期,就讓 ILM 的機制自己去 rollover index)。
======
中文的討論歡迎到 Facebook 社團: Elasticsearch Taiwan - ELK 台灣臉書群
或是 喬叔的 Elastic 技術交流粉絲頁
cecil
July 21, 2021, 3:33am
3
好像做到了XD
在filebeat裡備註所有setup.template.XXXX
然後只加入setup.template.enable: false和joecwu介紹的setup.ilm.enabled: false,接著在kibana建立index templates和ilm
成功了,真的大大大的感謝
system
(system)
Closed
August 18, 2021, 3:34am
4
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.