2010-01-07 78 views

回答

4

顯然我有偏見(我在MongoDB上工作),但我認爲它對日誌非常有效。

原因:

  • 它的快速插入和更新...你可以每秒
  • 以及正常的查詢做成千上萬,你可以運行分析和使用JavaScript的 生成報告。你可以每天晚上運行一個cron作業,這樣做不錯 MapReduce事情到你的日誌。
  • 您可以使用上限的集合,它是集合,像隊列,以 只保留最新的N KB的/ MBS日誌/金紫荊星章的

我不知道你是什麼意思「確保誠信一個日誌文件「......你的意思是你擔心不知道你要退出的文件在哪個域中?如果是這樣,我想你會發現處理關係數據庫中的空字段並不難,而且更靈活。

另請參閱:the MongoDB blog post on logging

2

我正在使用MongoDB存儲來自許多應用程序的日誌,到目前爲止它的工作狀況非常好。

您可能想看看我在Mongo SV和最後一次MongoDB SF Meetup上給出的slides from a presentation on Logging Application Behavior to MongoDB關於爲什麼我認爲它對日誌有好處的更多背景以及有關Java庫的信息,支持日誌記錄到MongoDB的Python,Ruby,PHP和C#。

我現在是MongoDB的log4mongo-java,Log4J appenders的主要提交者。所以,這可能不是那麼令人驚訝,那就是我正在使用的。

關於日誌完整性,我假設你的意思是它在寫入後沒有被修改過。您有一個選項,至少在log4mongo-java中,它將日誌事件存儲在需要驗證的數據庫中。這會在一定程度上限制可以添加,刪除或更新事件的用戶數量。

此外,您可以設置一個被嚴格鎖定的複製從屬設備。從站的頻繁備份至少會限制可以修改一組記錄事件的時間。