當我打開 Kibana 介面時,當輸入logstash-*作為查詢時,配置索引時出現錯誤:
kibana 錯誤:請指定預設索引模式
如何查看 filebeat 是否正在將日誌傳送到logstash?我完全按照 filebeat 和 ELK stack 教學進行操作。當我在 Kibana 中輸入 filebeat-* 時,我可以看到數據,但當我在 Kibana 中輸入logstash-* 時,我看不到數據。
答案1
Filebeat 保留發送到 Logstash 的內容的資訊。檢查 ~/.filebeat (對於執行 filebeat 的使用者)。
您也可以在 filebeat 中啟動偵錯,它會顯示訊息何時傳送到 Logstash。
編輯:根據新訊息,請注意您需要告訴 filebeat 它應該使用哪些索引。轉到“設定”選項卡並在那裡配置索引模式。這是醫生。
答案2
如果您遵循官方 Filebeat 入門指南並且從 Filebeat -> Logstash -> Elasticsearch 路由數據,那麼 Filebeat 產生的數據應該包含在索引中filebeat-YYYY.MM.dd
。它使用filebeat-*
索引而不是索引,logstash-*
以便它可以使用自己的索引範本並對該索引中的資料具有獨佔控制權。
因此,在 Kibana 中,您應該根據索引模式配置基於時間的索引模式,filebeat-*
而不是logstash-*
.或者,您可以執行import_dashboards
Filebeat 提供的腳本,它會為您將索引模式安裝到 Kibana 中。該腳本的路徑import_dashboards
可能會根據您安裝 Filebeat 的方式而有所不同。這適用於透過 RPM 或 deb 安裝的 Linux。
/usr/share/filebeat/scripts/import_dashboards -es http://localhost:9200
filebeat-YYYY.MM.dd
您可以使用將列印事件計數的curl 指令檢查Elasticsearch 的索引中是否包含資料。
curl http://localhost:9200/filebeat-*/_count?pretty
如果 Elasticsearch 中沒有事件,您可以檢查 Filebeat 日誌是否有錯誤。/var/log/filebeat/filebeat
預設情況下,日誌位於Linux 上。您可以透過logging.level: debug
在設定檔中進行設定來增加詳細程度。
答案3
如果 Filebeat 使用 RPM 或 DEB 套件安裝:
日誌預設儲存在journald中。要查看日誌,請使用journalctl:
journalctl -u filebeat.service
更多資訊請訪問Filebeat 日誌
答案4
您也可以檢查資料夾內的文件
/etc/log/filebeat/
也許與
tail -f filebeat