Logging Nlog文件目标-缓存日志并仅在选择时写入文件

Logging Nlog文件目标-缓存日志并仅在选择时写入文件,logging,.net-4.0,nlog,Logging,.net 4.0,Nlog,我已经编写了一个.net应用程序来定期处理一些文件,并使用NLOG2.0文件目标登录到文件。应用程序每5分钟调用一次,但实际处理仅在有文件需要处理时发生。我想缓存日志,只在应用程序结束时决定日志是否有用,然后写入文件。有什么内置配置和方法可以用来实现这一点吗?我刚刚提交了一个 目前,它不允许您清除排队的日志条目,但允许您控制何时以及是否刷新目标。它可以很容易地进行调整,以允许您在需要时清除队列。我刚刚提交了一个解决方案 目前,它不允许您清除排队的日志条目,但允许您控制何时以及是否刷新目标。它可以

我已经编写了一个.net应用程序来定期处理一些文件,并使用NLOG2.0文件目标登录到文件。应用程序每5分钟调用一次,但实际处理仅在有文件需要处理时发生。我想缓存日志,只在应用程序结束时决定日志是否有用,然后写入文件。有什么内置配置和方法可以用来实现这一点吗?

我刚刚提交了一个

目前,它不允许您清除排队的日志条目,但允许您控制何时以及是否刷新目标。它可以很容易地进行调整,以允许您在需要时清除队列。

我刚刚提交了一个解决方案


目前,它不允许您清除排队的日志条目,但允许您控制何时以及是否刷新目标。它可以很容易地进行调整,允许您在需要时清除队列。

谢谢,代码看起来非常简单,您是为这个问题写的吗?它已经处于非常早期的阶段一段时间了,所以这个问题是触发CompletionThank的原因,经过测试,它工作正常。我正在调用另一个方法
((ManualFlushWrapper)LogManager.Configuration.FindTargetByName(“manualflush_wrapper”)).EmptyLogs()要清除日志,代码看起来非常简单,你写这篇文章只是为了这个问题吗?它已经处于非常早期的阶段一段时间了,所以这个问题是触发完成的原因谢谢,经过测试,它是有效的。我正在调用另一个方法
((ManualFlushWrapper)LogManager.Configuration.FindTargetByName(“manualflush_wrapper”)).EmptyLogs()以清除日志