C# Windows 8.1应用程序中的事件日志记录

C# Windows 8.1应用程序中的事件日志记录,c#,events,logging,win-universal-app,windows-error-reporting,C#,Events,Logging,Win Universal App,Windows Error Reporting,我想在我的windows 8.1应用程序中实现日志框架,我也是windows 8.1的新手 当文件达到一定大小时,它将具有追加和滚动的属性 在Windows8.1中,我找到了两个选项,但也找到了很少的文档和关于使用哪一个和何时使用的信息 Microsoft建议使用本构建视频中提到的FileLoggingSession 关于FileLoggingSession,我有几个问题 (a) 我做过一个POC,当我调用closeAndSaveToFileAsync()时,日志只会写入磁盘,但这应该是一个终止

我想在我的windows 8.1应用程序中实现日志框架,我也是windows 8.1的新手 当文件达到一定大小时,它将具有追加和滚动的属性

在Windows8.1中,我找到了两个选项,但也找到了很少的文档和关于使用哪一个和何时使用的信息

Microsoft建议使用本构建视频中提到的FileLoggingSession

关于FileLoggingSession,我有几个问题

(a) 我做过一个POC,当我调用closeAndSaveToFileAsync()时,日志只会写入磁盘,但这应该是一个终止/暂停场景调用,用于关闭文件。我希望有日志,即使没有错误或应用程序终止。日志何时实际写入磁盘? 我需要更像日志记录会话的saveFileAsync()

(b) 需要指出的是,当达到最大文件大小时。内存中的内容被刷新到磁盘,并调用LogFileGenerated事件。我无法计算文件的最大大小。它可以以任何方式进行配置吗

我发现的第二个选择是使用Metro日志。虽然我还没有在我的应用程序中尝试过。但似乎只有很少的文档和社区支持

如果有人能分享他/她的登录Windows 8.1应用程序的经验,并回答/评论我上面的问题/理解,我将不胜感激

干杯,
索拉夫只是为了回答我的决定

我决定使用微软提供的FileLoggingSessionAPI

优点:

  • 不要依赖于任何其他库/API

  • 微软推荐

缺点:

  • 无法配置用于滚动的文件大小

  • 每次将日志写入磁盘后,都会创建一个新文件。所以 文件数量增加

干杯

索拉夫