剛接手elk就被這個問題困惑過,或許仔細閱讀官方文檔是最佳方式
提到的場景,Filebeat 雖然能讀取不同的日志目錄,但是在 Logstash 這邊,或者是 Elasticsearch 這邊,怎么區分不同 application server 的日志數據呢?
解決方案:Filebeat 的配置項 fields 或者 配置tags 可以實現不同日志來源的區分
filebeat.yml
tags: ["tomcat-a"]
fields:
log_source: tomcat-a
在logstash添加判斷條件
if "tomcat-a" in [tags] {
elasticsearch {
hosts => ["localhost:9200"]
index => "log1-%{index_date}"
}
}
