将NLog日志保存到Azure TableStorage的最快方法

时间:2018-07-26 08:58:49

标签: nlog azure-table-storage

我已经设置了一个POC,该POC使用NLog将日志消息保存到Application Insights和Azure Table Storage。我使用了Harouny的AzureTableStorageNLogTarget NuGet软件包,但是我不确定这是否是保存到表存储的最快方法。

我需要成批保存日志消息以提高性能。  Harouny会这样做吗,还是应该使用叉子? JDetmar说他分批写作,但是Harouny也这样做吗?如果有人知道,那就太好了。

我将尝试对它进行基准测试,以便在此期间找出并在我进一步了解之后发布我的发现。

1 个答案:

答案 0 :(得分:1)

  

我需要成批保存日志消息以提高性能。 Harouny会这样做吗,还是应该使用叉子? JDetmar说他分批写作,但是Harouny也这样做吗?如果有人知道,那就太好了。

由于代码是开源的,因此您可以轻松地进行检查。

  1. 在两个存储库中找到目标
  2. 检查它们是否覆盖接受多个logEvent(列表或数组)的Write方法,例如override void Write(IList<AsyncLogEventInfo> logEvents)

结果:

  • JDetmar:使用单个和多个logEvent覆盖Write,因此在使用异步包装程序时可以批量工作。 see code

  • Harouny:使用单个logEvent而不是多个覆盖Write。所以没有批量写作。 see code

请注意,Harouny未得到维护。 (请参阅readme