【发布时间】:2015-05-24 19:19:33
【问题描述】:
每当我的应用程序在我们的托管服务提供商的基础架构上的测试、Preprod 或 Prod 服务器 (Windows 2012 R2) 上运行时,所有文件目标都只写入一个日志条目,然后在没有任何原因的情况下停止工作。如果我删除日志文件(或者如果它被归档,例如在第二天),则会写入一个新的日志文件,但同样只有一条日志记录。
这里的 NLog 论坛上描述了同样的问题,但没有解决方法或解释:http://nlog-forum.1685105.n2.nabble.com/Only-one-entry-written-to-log-file-td7399596.html
我尝试了以下方法:
- 启用 NLog 的内部日志记录。同样的问题,带有内部日志的日志文件只包含一个日志项。内部日志记录只能使用文件目标设置,因此无法在另一个目标(如 DebugView)上监听内部日志记录。
- 使用 Sysinternals DebugView 监听 NLog 的内部错误消息,但没有。
- 检查了日志文件的只读属性,但它被设置为 false。
- 将所有目标切换为异步。没有效果。
还有其他想法吗?我无法在这些服务器上运行 Visual Studio,因此无法使用 NLog 源对其进行调试。
因为一个愚蠢的错误而切换到log4net会很遗憾。
编辑:我必须补充一点,其他目标(如 DebugView 或 ADO.NET)工作正常,这确实是文件目标的问题。而且由于内部日志记录仅限于文件目标,我看不到如何找到问题的原因
【问题讨论】:
标签: .net .net-4.5 nlog windows-server