一千萬個為什麽

搜索

在AWS上處理服務器日誌的理想方法



我們目前在AWS上的EC2服務器上托管了一些ruby應用程序,每隔幾周我們就會看到應用程序日誌以及工作人員日誌完全占用了磁盤空間。

有關像我們這樣的雲托管環境的日誌存儲的最佳做法是什麽?我們考慮了日誌輪轉,將日誌推送到CloudWatch或簡單地截斷日誌文件。

轉載註明原文: 在AWS上處理服務器日誌的理想方法

一共有 3 個回答:

我喜歡使用ELK, ElasticsearchLogstashKibana 使用節拍

Filebeat, that belongs to Beats series will forward the logs that read from a file to logstash.

在logstash中,您可以標記,過濾,解析和修改存儲在Elasticsearch中的日誌條目。

為了可視化,你可以使用Kibana。您可以根據日誌創建一個很棒的儀表板,並提供真正為您的業務帶來價值的所有信息

如果您不想安裝代理,則可以直接使用rsyslog轉發日誌,但是可以通過深層信息而不是簡單日誌獲取更多信息。

這個ELK套件可以讓你對你的應用程序有很大的控制,但你必須保持它

還要檢查日誌文件的內容並詢問“這是相關的日誌記錄”?有時會記錄完整的堆棧跟蹤。如果是這種情況,是什麽原因造成的以及如何抑制它?一些應用程序定義了幾個日誌級如果應用程序運行時沒有問題,請將日誌級別設置為正常。如果有問題,請將其更改為在短時間內進行調試。

如果微調日誌記錄沒有幫助,那麽引入日誌輪換或將日誌保留一個月,但我要做的第一件事是檢查日誌並查看是否有可通過修改代碼來刪除的多余信息。

完全同意RuBiCK的回答。

我處理3臺服務器的日誌。我們只保留系統中非常重要的日誌。 Rest被立即推送到elasticsearch數據庫。

我的觀點是,使用elasticsearch將比日誌輪換更有用,因為您可以根據需要隨時保留日誌。而且,您還可以輕松制作可視化和儀表板,這有助於加快分析速度。它還提供全文搜索功能,因此您可以即時在日誌中搜索任何類型的錯誤或狀態。

我使用rsyslog將日誌推送到elasticsearch。這真是一種發送日誌的快速可靠的方式。而且,您不需要在系統中添加任何代理。

Here is link which can help you. https://sematext.com/blog/2013/07/01/recipe-rsyslog-elasticsearch-kibana/

另外,請檢查記錄的內容。像Rabbitmq這樣的應用程序會在日誌中存儲大量信息。