2015-09-08 29 views
0

我們在AWS beanstalk託管實例中託管我們的服務。這迫使我們從基於文件的日誌記錄轉移到使用基於數據庫的日誌記錄。使用DynamoDB替換日誌文件

DynamoDB是替代基於文件的日誌記錄的好選擇。如果是這樣,那麼主要的關鍵是什麼。我想過使用時間戳,但是同一個時間戳內的同一個服務可能記錄多條消息,因此可能不可靠。

任何意見,將不勝感激。

回答

2

請勿使用DynamoDB存儲日誌。你將無謂地支付吞吐量和空間。

Amazon CloudWatch具有內置的日誌功能。

http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatchLogs.html

另一個替代方案是一個專用日誌服務如Loggly這是基於雲的,並且可以在許多常見的格式接收日誌,加上他們有一個API來發送自定義的日誌。在基於Web的控制檯中,您可以搜索並過濾日誌。

+0

完全同意這一點,只需在使用前查看DynamoDB定價模型即可。 – Anatoly

1

作爲替代方案,您爲什麼不使用cloudwatch?我最終編寫了一個應用程序來整合beanstalk應用程序中的ec2實例的日誌,然後去年AWS開放了cloudwatch作爲服務,所以我把我的東西廢棄了。您告訴cloudwatch您的日誌位於實例的哪個位置,併爲其指定日誌組和流名稱,並將所有日誌合併到cloudwatch中的一個位置。您也可以使用標準AWS設置來關閉警報。它非常漂亮,而且很簡單 - 不必編寫前端查詢,它已經在那裏了。

不知道你在用什麼進行日誌記錄 - 我們是一個node.js商店,使用winston進行日誌記錄,並且有一個很好的NPM模塊可以與Winston一起自動登錄,稱爲winston-cloudwatch。