我正在尝试使用 .net framework 4 将应用程序记录到 c# 中的 Windows 事件日志,但是当我将日志条目插入 TimeCreated 字段时(事件查看器 -> Windows 日志 -> 应用程序 -> -> 详细信息 -> Friendly View -> System) 得到一个值,如
[SystemTime] 2012-03-28T11:07:12.000000000Z
如您所见,亚秒级精度缺失,但我可以在查看器中看到一些其他事件,其中“.”后面也有数字。指示更精确的时间戳。
这是 .Net Framework/CLR/C# 的某种限制还是我只是做错了什么?
谢谢。
VS2010SP1,Win7/Server 2008 R2环境
更新:
我可以说我已经尝试过
EventLog.WriteEntry("applicationName", "message", logEntryType, (int)eventId, (short)taskCategory);
和 log4net 的 EventLogAppender 到目前为止。
更新 2:
因此,使用 ETW 将事件插入事件日志实际上会产生 SystemTime 具有亚秒分辨率的事件。难道这实际上是必要的,对我来说感觉有点过分了。
最佳答案
Microsoft 终于为这个问题提供了解决方案。查看此博客文章:Announcing the EventSource NuGet Package – Write to the Windows Event Log .
关于c# - 插入日志事件时,TimeCreated 字段不够准确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9906542/