ETW跟踪驱动程序 - 后程序

时间:2012-06-08 18:00:31

标签: c++ windows wdk etw

我在驱动程序中有ETW跟踪;清单文件已正确创建,资源都已编译,等等。在目标计算机上,我以管理员身份运行此命令:

  

wevtutil im myManifest.xml

我没有错误。然后,我(以管理员身份)运行:

  

logman创建跟踪myProviderName -o Log.etl -p“{myProviderGUID}” - f bincirc -max 1000

没有错误。然后我等待足够的时间来执行一些跟踪,然后我运行这些命令(作为管理员):

  

logman stop myProviderName

     

tracerpt Log000001.etl

现在我遇到的问题是生成的文件dumpfile.xml根本没有显示任何痕迹的记录。它显示了设置详细信息的基本结构,包括Provider GUID等。

所以我的问题:在上述程序中是否有一个步骤,或者问题是否与我的跟踪代码有关?

1 个答案:

答案 0 :(得分:1)

事实证明存在问题;虽然不是我的代码。我没有在清单中包含我的事件的操作码,因此没有记录任何事件。

如果有人发现这篇文章,可能会帮助您注意到您的活动必须具有渠道,级别,操作码和模板,甚至基本功能。此外,上述过程缺少一步。我需要做以下事情:

  1. 右键点击“我的电脑”,然后选择“管理”
  2. 点击效果>数据收集器组>用户定义> MYPROVIDER
  3. 右键单击右侧窗格中的myProvider,选择“属性”
  4. 根据我在清单中指定的内容设置关键字(任意),关键字(全部)和级别
  5. 重新启动我的计算机,并通过logman重新启用跟踪。
  6. 上述过程(在问题+上面的补充内容中)将创建一个日志会话,并从生成的ETL文件中生成基本的可读日志输出。