一千萬個為什麽

搜索

我應該使用filebeat還是具有伐木工人功能的應用程序日誌記錄模塊來收集我的日誌



我有一個非常基本的elk設置,它匯集了大約15個運行各種服務的虛擬機的日誌。

他們都在logstash中配置了一個單一輸入的filebeat syslog forwarder。

我有運行NodeJS Web應用程序的應用程序服務器,它們輸出JSON日誌。為了使我的日誌結構化,我有兩個選擇:

選項A

告訴NodeJS應用程序在 /var/app/app.log 可旋轉文件中輸出日誌。將 app.log 添加到filebeat中的日誌propspect中,並推送到logstash,在此處我在 [source] =〜app.log 上設置過濾器來解析JSON。

選項B.

告訴NodeJS應用程序使用獨立連接logstash並在那裏推送日誌的模塊(例如 node-bunyan-lumberjack ),而不使用filebeat。

我的問題是:

Which one is a more common setup and why?

轉載註明原文: 我應該使用filebeat還是具有伐木工人功能的應用程序日誌記錄模塊來收集我的日誌

一共有 1 個回答:

兩者都很常見,並帶有他們自己的利弊。

這取決於如果你可以接受丟失日誌,如果logstash死了,你的應用程序重新啟動,另一方面,如果你可以寫日誌到磁盤並消耗在那裏。

這些是要為其中一個選擇的基本點,你可能最終會在IO /緩存/等方面提出更多的警告。

沒有“最佳”選項,對於您的組織/團隊來說,最好的選擇是我們不能為您回答,因為我們不了解您的環境。