amazon-s3 - AppHarbor 和 Amazon S3 的良好日志记录策略

标签 amazon-s3 ravendb nlog appharbor

我在 AppHarbor 上托管一个使用 NLog 进行日志记录的应用程序。我一直在尝试 Logentries 附加组件,这是一个很好的服务,可以将所有应用程序日志记录通过管道传输,然后通过其 Web 界面进行查看。现在免费试用已经结束,我想在支付该服务费用之前先考虑一下自己进行日志记录。

因为我使用的是 AppHarbor,所以他们建议不要写入文件系统,因为它会在每次部署时被删除,并且在运行时,我每天都会进行多次部署。无论如何,我使用 S3 来存储图像,因此在那里存储日志似乎也是很自然的。

我发现这种方法的问题是,我会将日志语句发送到存储在 S3 上的文本文件,我需要将其附加到该文本文件中。一旦站点获得一些流量,就会有多个同时调用来存储日志条目,这可能最终会锁定写入机制。有没有更好的方法来做到这一点,我不知道?也许在发送日志条目之前以某种方式对日志条目进行批处理?我使用 Raven 作为数据库,因此如果没有更好的选择,可能会考虑将日志直接写入 Raven。

最佳答案

看起来 S3 或 RavenDB 没有 NLog 目标,但有很多或其他选项:http://nlog-project.org/wiki/Targets

关于amazon-s3 - AppHarbor 和 Amazon S3 的良好日志记录策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15303654/

相关文章:

amazon-web-services - NoSuchKey : The specified key does not exist AWS S3 Codebuild

amazon-s3 - 如何使 Plupload 直接上传到 Amazon S3?

authentication - ServiceStack - UserAuth "Id"是 INT,而 RavenDb 预计 "Id"是 STRING

c# - RavenDB session > 30

.net - 使用备份 appender 进行日志记录

sql-server - Elmah.MVC + NLog - 将所有错误存储在一个地方

amazon-web-services - parquet 文件存储在 AWS S3 中时可以拆分吗?

amazon-web-services - AWS S3 cli - 标记目录中的所有对象

c# - 如何从 RavenDB 数据库中获取所有实体名称(集合名称)?

c# - aspnet-sessionId 不适用于 Asp.Net Core