【问题标题】:Any way to reduce number of repetitive messages with NLog?有什么方法可以使用 NLog 减少重复消息的数量?
【发布时间】:2011-09-09 00:54:06
【问题描述】:

NLog 是否具有在记录到文件时合并重复日志消息的任何功能?

代替:

09/08/2011 17:48:12  Your Foo hit a Bar
09/08/2011 17:48:13  Your Foo hit a Bar
09/08/2011 17:48:14  Your Foo hit a Bar
09/08/2011 17:48:15  Your Foo hit a Bar
09/08/2011 17:48:16  Your Foo hit a Bar

这样做:

09/08/2011 17:48:12  Your Foo hit a Bar
09/08/2011 17:48:16  [4 additional messages just like the last one]

总的来说,这没什么大不了的——但它可以帮助我减少调试日志中的一些“闲聊”。

谢谢!

【问题讨论】:

  • 如何定义分组规则?同一条消息重复多次而没有中断?您会使用哪个时间戳(第一次出现)?
  • 我在想如果当前消息与最近的“书面”消息相同,它将被分组。时间戳将是最后一条相同消息的时间。我喜欢你下面的缓冲想法。我可能会尝试分叉 FileTarget 来尝试一下。

标签: nlog


【解决方案1】:

NLog 中没有开箱即用的目标解决您的问题。如果你真的需要这个,你必须实现自己的包装器目标,它会在短时间内缓冲消息(以检测重复)并将其传递给实际目标。

如果您在分析日志时遇到问题,您应该使用工具过滤日志,或者重新考虑您的日志记录方法。这些信息是必要的吗?如果是,请保持原样。单独的时间戳可能是一个有用的信息。如果没有,请更改您的日志记录方法并仅记录有用的信息。

【讨论】:

  • 我同意您的评估——消除不必要/无用的日志记录。然而,我真的希望保持一个懒惰的程序员,避免做任何思考和/或工作! ;)
猜你喜欢
  • 1970-01-01
  • 2022-11-22
  • 1970-01-01
  • 1970-01-01
  • 2018-10-09
  • 2018-03-02
  • 1970-01-01
  • 2018-07-19
  • 2016-03-06
相关资源
最近更新 更多