Beats
FileBeat
FileBeat是一個agent,輸出到es、logstash
配置輸入,可以有多個輸入/var/log/*.log
工作原理
libbeat 平臺
安裝filebeat
配置filebeat
filebeat有很多modules 常見的日誌模組
filebeat.reference.yml
參考
最基本的定義一個日誌的來源
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
複製程式碼
/var/log/*/*.log
從/var/log
子資料夾中獲取所有.log,現在還不支援獲取所有層中的所有檔案
輸出要麼ES 要麼Logstash進行額外的處理
還可以使用filebeat提供的Kibana示例儀表盤
ES
output.elasticsearch:
hosts: ["myEShost:9200"]
複製程式碼
setup.kibana:
host: "mykibanahost:5601"
複製程式碼
如果ES和kibana設定了安全性 (這裡密碼應該配置是加密的,不要硬編碼),如果沒有為Kibana指定憑據,那用ES的憑據
output.elasticsearch:
hosts: ["myEShost:9200"]
username: "filebeat_internal"
password: "YOUR_PASSWORD"
setup.kibana:
host: "mykibanahost:5601"
username: "my_kibana_user"
password: "YOUR_PASSWORD"
複製程式碼
詳細配置相關資訊
配置filebeat到logstash
配置Logstash接受filebeat傳來的訊息
output.logstash:
hosts: ["127.0.0.1:5044"]
複製程式碼
For this configuration, you must load the index template into Elasticsearch manually because the options for auto loading the template are only available for the Elasticsearch output. ??索引模板是什麼?
載入索引模板
在Elasticsearch中,索引模板用於定義確定如何分析欄位的設定和對映。
Filebeat包安裝了推薦的Filebeat索引模板檔案。
setup.template.settings:
index.number_of_shards: 1
複製程式碼
Elastic Search
ES的索引的分片在一開始就要確定好,因為文件具體分到了那個分片上是根據分片的個數算出來的,分片數目如果可以修改的話那麼讀文件的時候就找不到分片了。
Kibana