关于ETW的心得
来源:互联网 发布:淘宝客服可爱的欢迎语 编辑:程序博客网 时间:2024/04/29 22:31
1. 注册manifest文件时,provider属性resourceFileName及messageFileName指向的exe或者dll文件必须存在,否则注册失败
2. exe或者dll文件不允许改名,否则生成etl文件时无法解析数据模板中数据
3. xperf不在解析事件中的数据区域,在安装manifest或者没有安装的计算机上都显示同样的数据
4. 自定义事件中的左侧列中若有Field(%n)字段,说明已经解析出自定义数据,单件某行时,列Field(%n)会自动变为定义的列名。
5. manifest中的symbol属性供生成头文件时使用,测试结果为若当前的本地化与清单文件不符合,则将其解析为Name的属性值,例如
<opcodes>
<opcode name="Entry" symbol="_opcode_entry_function" value="10" message="$(string.Function-Entry-Exit-Provider.opcode._opcode_entry_function.message)">
</opcode>
------------------
<localization>
<resources culture="en-US">
<stringTable>
<string id="level.Informational" value="Information">
</string>
<string id="level.Error" value="Error">
</string>
<string id="Function-Entry-Exit-Provider.opcode._opcode_exit_function.message" value="This opcode describes function exit points">
ETL文件opcode name显示的是Entry,也不对,再研究,弄清楚message属性的含义
6. event message属性会在Event viewer中使用,若事件没有message属性,则event viewer会报告错误
7. 若模板有userData元素,则event viewer中的详细信息只显示UserData元素,不会显示模板的其它元素,若没有UserData元素,则显示模板的所以定义元素。
8. 可以在多个程序中注册同一个Provider并写事件
9. dll中可以保护etw provider的所有功能
10. 若没有与Kernel Logger Session一并输出etl文件,则xperf中task name及opcode name显示的是localization定义的message值。若一并输出,则显示的是task及opcode的Name属性。(可以再测测加入culture属性为zh-CN时是否显示message值)
11. 从event viewer中可以看到写到channel中的message有字符串换行的功能,最初以为在message字符串本地化中插入换行符,例如
<string id="Event.WhenToTransfer" value="The %2 transfer will occur %3."/>
以为在value中插入换行符会在viewer中显示出换行来,但是没有。后来发现写到Microsoft-Windows-WinINet/Analytic channel中的message也换行并且看了下message的定义(如何查看请参考http://blogs.msdn.com/ntdebugging/archive/2009/09/08/exploring-and-decoding-etw-providers-using-event-log-channels.aspx),原来是某个字符串有换行符,在viewer中就可以看到,例如<string id="Event.WhenToTransfer" value="The %2 transfer will occur %3."/>中若%2是个字符并换行,则可以在viewer中看到换行符,增加可读性。
- 关于ETW的心得
- 关于创作的心得
- 关于软件设计的心得
- 关于管理的心得
- 关于SEO的心得
- 关于测试的心得
- 关于二分的心得
- 关于数据库连接的心得
- 关于emacs的心得
- 关于打印质量的心得
- 关于线程的心得
- 关于工作的心得。
- 关于maven的心得
- 关于日期转换的心得
- 关于emule的使用心得
- 关于QT的一些心得
- 关于一些activex的心得
- 关于写动画的心得
- ZOJ - 3537 Cake (凸包+区间DP+最优三角剖分)
- 深入理解java异常处理机制
- leetcode:Flatten Binary Tree to Linked List
- Android使用SharedPreferences进行数据存储
- Eclipse中导入Git的maven项目
- 关于ETW的心得
- Android如何将第三方预装的AP安装在data/app下面,用户可以选择卸载,但是在用户恢复出厂设置后,会再次自动安装
- cpp-tests CocosDenshionTest
- SQL Server 编写自动增长的字符串型主键
- 数据结构(C++版)第一章 绪论
- Spring整合 RMI
- Android中layout过程详解
- 动盖荷风劲孤鸿既高举的个合格后
- 数据结构绪论