ETW跟踪:连续跟踪几天后,日志文件已损坏

时间:2017-12-19 06:07:38

标签: .net etw etw-eventsource ms-tracing-eventsource

  1. 我们使用ETW Custom EventSource(继承自NUGET的Microsoft.Diagnostics.Tracing.EventSource,Microsoft.Diagnostics.Tracing.EventSource.Redist.1.1.28)来检测我们的应用程序。

  2. 我们的提供程序在会话中启用,可以捕获文件中的事件。以下是配置 跟踪会话:

    • 流模式:文件
  3. 跟踪缓冲区

    • 缓冲区大小:512 KB
    • Min Buffers:200
    • Max Buffers:400
    • 刷新计时器:0秒

    文件:

    • 日志模式:新文件(达到最大文件大小时的新文件) 停止条件:
    • 最大尺寸:11MB

      1. 最高事件发生率约为每秒几百个事件。
      2. 我们使用Windows server 2012 SP1。

    有时我们会看到生成的ETL文件大小为11MB(有时甚至更多),但它没有事件。这主要发生在可靠性服务器上,系统以最大事件率运行几天。一旦发生这种情况,此后的所有日志文件都将为零事件,之后我们将丢失所有事件。

    尝试在Windows性能分析器中打开日志时,会显示以下错误消息。

    Windows Performance analyzer Error

    此问题很少可以重现。这使得尝试不同的试验和错误变得困难。

    解决方案尝试过(不起作用):

    1. 将Min和Max缓冲区的数量分别减少到24和48。
    2. 将刷新计时器引入10秒。当事件率很低时,这有一个缺点就是创建11MB日志文件,事件很少。
    3. 任何人都遇到过这样的问题?请帮助。

0 个答案:

没有答案