2016-12-15 152 views
5

我需要監控非常不同的日誌文件以查找錯誤,成功狀態等。我需要使用Prometheus抓取相應的指標,並在Grafana中顯示並設置一些警報。普羅米修斯+格拉法納是好的我已經用它們很多像不同的出口商,如node_exporter或mysql_exporter等。此外在新的格拉法納4.x警報工作得很好。使用一些指標監控日誌文件exporter + Prometheus + Grafana

但我有一個相當大的問題找到合適的出口商/程序,可以分析日誌文件「實時」並從中提取指標。

到目前爲止,我嘗試:

  • mtail(https://github.com/google/mtail) - 的作品,但現有的版本不能輕鬆地監控多個文件 - 一般它可以具體mtail程序(收據分析)不能結合一些具體的日誌文件+ I不能輕易地將日誌文件名添加到標記中
  • grok_exporter(https://github.com/fstab/grok_exporter) - 有效,但我只能提取有限的信息+一個實例只能監視一個日誌文件,這意味着我必須啓動更多實例導出更多端口並配置全部關閉他們在普羅米修斯 - 這使得太多新的失敗點
  • fluentd普羅米修斯出口國(https://github.com/kazegusuri/fluent-plugin-prometheus) - 的作品,但看起來我只能提取非常簡單的指標,我不能讓從日誌文件中的行(或多個)的任何先進的正則表達式分析

請問這裏的任何一個有一個真正運行解決方案,使用「一些出口商」從日誌文件監控高級指標+ Prometheus + Grafana?或者,我可以使用Prometheus推送網關,而不是出口商的某個程序來獲取結果。謝謝。

+0

日誌是否在某處運送/處理?以某種方式可能更容易進入該過程。 –

+0

日誌是由fluentd抓住的,所以我嘗試了這一點,但我可以使用fluentd prometheus exporter的指標似乎非常簡單和有限。我嘗試在fluentd的bash腳本中加入外部處理,但我不知道爲什麼在fluentd裏它很慢,而且很長時間。外面流利的腳本是好的 – JosMac

回答

1

看看Telegraf。它確實使用輸入插件logparsertail支持拖尾日誌。要將度量標準導出爲prometheus端點,請使用prometheus_client輸出插件。你也可以申請在飛行聚合。我發現配置多個日誌文件比grok_exporter或mtail更簡單

+0

是的你是對的 - 我實施了telegraf,它滿足了我所需要的 – JosMac

1

這些是目前獲取日誌數據到普羅米修斯的3個答案。

您也可以考慮獲取任何正在生成日誌以直接公開Prometheus指標。

+0

問題是過程是非常不同的(bash腳本,去程序),但主要問題是很多都是傳統的東西,沒有人想擺弄。所以最安全的方法是處理日誌文件。 – JosMac

+0

問題還在於我對每個實例/服務器和15個以上的實例至少有5個以上不同的日誌文件 – JosMac

+1

@JosMac:然後,您需要集中式日誌記錄(例如使用Graylog)並從中導出度量標準。 –