具有Azure Blob存储容器文件大小的NLog

时间:2019-04-01 11:25:23

标签: nlog azure-blob-storage

我已在我的应用程序中用Nazure BLOB存储配置了NLog。但是如果我的日志 内容太大,如50万行,那么它只能存储5万行。

每个BLOB容器文件可以存储多少行日志?

2 个答案:

答案 0 :(得分:2)

认为您在一个Blob中达到了50000个块的硬限制:

https://docs.microsoft.com/en-us/azure/storage/common/storage-scalability-targets#azure-blob-storage-scale-targets

一次写入一行时,每一行变成一个块。

我猜NLog Blob目标应该具有一些批处理逻辑,并且只能每1-2秒写入一次。 (可以通过以非频繁刷新间隔应用AsyncWrapper或BufferingWrapper来完成此操作。

我想NLog Blob目标应该尝试并跟踪写入操作的数量。并且在达到49999次写入时自动滚动(并且由于达到块限制而失败时也滚动)。

答案 1 :(得分:0)

已创建新的更新的NLog Blob存储目标。默认情况下,它执行批处理,并减少了达到50000个文件操作限制的机会。

请参阅:https://www.nuget.org/packages/NLog.Extensions.AzureBlobStorage/