【问题标题】:Where does FileLoggingSession in Windows 8.1 keep the log files?Windows 8.1 中的 FileLoggingSession 将日志文件保存在哪里?
【发布时间】:2015-12-31 03:20:06
【问题描述】:

Windows 8.1 引入了FileLoggingSession 类来将消息记录到文件中。文档说:

FileLoggingSession 类将记录的消息发送到磁盘文件 他们被记录下来。 FileLoggingSession 类使用顺序日志记录, 这意味着所有消息都发送到磁盘文件,并且 消息的顺序历史被保留。这有别于 LoggingSession 类,将记录的消息按需发送到磁盘, 当出现问题和直接历史时,就会发生这种情况 分析需要内存中的消息。

但是我找不到日志文件。我在LocalState/Logs 中找到了一个Log-MySession-1.etl 文件,但它只有1kb 并且似乎不包含日志。这是我写的一些测试代码:

    FileLoggingSession loggingSession;
    LoggingChannel loggingChannel;

    loggingSession = new FileLoggingSession("MySession");
    loggingChannel = new LoggingChannel("MyChannel");
    loggingSession.AddLoggingChannel(loggingChannel);

    for (int i = 0; i < 1000; i++)
    {
        loggingChannel.LogMessage("Test message: " + i);
    }

【问题讨论】:

    标签: windows-runtime windows-8.1


    【解决方案1】:

    它应该可以通过LogFileGenerated 事件 (documentation) 获得:

    事件参数LogFileGeneratedEventArgs (documentation) 包括File 属性。

    【讨论】:

      【解决方案2】:

      “.etl”文件包含二进制格式的日志。 在命令提示符下使用以下命令提取 XML 格式的日志:

      c:\ tracerpt.exe my_etl_file_name.etl -of XML -o readable_logs.xml
      

      您可以选择在收到日志创建事件后从代码中调用它。 C++/PInvoke 的另一种选择是在将“.etl”文件上传到您的服务器后使用OpenTraceProcessTraceCloseTrace 方法。

      【讨论】:

        【解决方案3】:

        遇到了这个。创建 FileLoggingSession 挂钩后,LogFileGenerated 事件处理程序。然后在您的事件处理程序方法中转储 args.File.Path。

            public FileLoggingHelper( ...) 
            {
                m_fileLoggingSession = new FileLoggingSession( "mylogsession" );
                m_fileLoggingSession.LogFileGenerated += FileLoggingSession_LogFileGenerated;
            }
        
            private void FileLoggingSession_LogFileGenerated(IFileLoggingSession sender, LogFileGeneratedEventArgs args)
            {
                System.Diagnostics.Debug.WriteLine( "generated " + args.File.Path);
                ...
            }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-03-19
          • 2011-02-20
          • 1970-01-01
          • 2013-04-14
          • 1970-01-01
          • 1970-01-01
          • 2015-07-13
          相关资源
          最近更新 更多