ETW清单文件 - 查找有关值的更多信息? [英] ETW Manifest files - finding more information on the values?

查看:83
本文介绍了ETW清单文件 - 查找有关值的更多信息?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


我正在对Windows网络堆栈进行故障排除,并使用Perfview / ETW来完成它。

I'm troubleshooting the windows Networking stack and using Perfview/ETW to do it.


我' m特别感兴趣的是出现在事件源Microsoft-Windows-TCPIP的清单中的一些值。

I'm particularly interested in some values that appear in the manifest for the event source Microsoft-Windows-TCPIP.


我可以使用此方法获得清单没有问题:

I can get the manifest with no problem using this method:


(对不起,不能发布链接

(sorry cant post links yet


https://github.com/Microsoft/perfview/blob/e2e8b4400f2726d0143db4c49a0f92ae7c250485/documentation/TraceEvent/TraceEventProgrammersGuide.md#creating-xml-manifests-for-eventsource-sources

https://github.com/Microsoft/perfview/blob/e2e8b4400f2726d0143db4c49a0f92ae7c250485/documentation/TraceEvent/TraceEventProgrammersGuide.md#creating-xml-manifests-for-eventsource-sources


PerfView /onlyProviders=*Microsoft-Demos-MySource EventSource collect

PerfView /noGui userCommand DumpEventSourceManifests PerfVIewData.etl.zip



问题是,一旦我得到清单,它有一堆没有太多解释的值。

The problem is that once i get the manifest, it has a bunch of values with not much explanation.


例如。

 <template tid="TcpTemplateChangedArgs">
  <data name="Tcb" inType="win:Pointer"/>
  <data name="TemplateType" inType="win:UInt32"/>
  <data name="Context" inType="win:UnicodeString"/>
 </template>



我对这个Context值特别感兴趣,就像在我的测试用例中我得到的那样"初始化Templace SYNTCB"但是就是这样

where i'm specifically interested in this Context value, as in my test case i get "Initializing Templace SYNTCB" but that's it


我真的很想知道,例如。

I'd really like to know e.g.



  • 如何才能找到此模板更改被触发的堆栈/代码中的位置

  • 无论如何,这个SYNTCB模板是什么

  • 我可以单步执行内核TCP实现 


我已经尽力浏览..net代码库中的system.net(网络代码),看看是否有ETW挂钩,但我找不到任何东西...

I've done my best to have a look around in the .net codebase for system.net (networking code) to see if maybe there are ETW hooks in there but i cant find anything...


(抱歉无法发布链接)

(sorry cant post links yet)


https://referencesource.microsoft.com/download.html

https://referencesource.microsoft.com/download.html


我也可以在Perfview中看到事件,但是找不到包含事件的内存堆栈(是的,我已经扩展了所有系统级事件,并尽可能多地下载了符号库) )

I can also see the event in Perfview, but cant find memory stack that holds the event (yep i've expanded all the system level events, and downloaded as many of the symbol libraries as possible)

推荐答案

嗨nwnze,

Hi nwnze,

谢谢你在这里发布。

>>这个SYNTCB模板是什么

>>what is this SYNTCB template anyway

基于在我的搜索中,我没有找到关于SYNTCB模板的MSDN文档。它是自己定义的吗?

Based on my search, I do not find the MSDN document mentioned about SYNTCB template. Does it define by yourself?

>>我怎样才能找到堆栈/代码此模板更改被触发

>>how can i find where in the stack/code this template change is fired

对于您的问题,我不知道什么是SYNTCB模板。如果您想知道此模板的位置更改后,您可以尝试使用

消息分析
r。

For your question, I do not know what is the SYNTCB template. If you want to know where this template is changed, you could try to use Message Analyzer.

>>我可以逐步完成克恩el TCP实施

请尝试使用
Windows内核模式内存管理器
 用于内核TCP实现。

Please try to use Windows Kernel-Mode Memory Manager for kernel TCP implementation.

最好的问候,

Wendy


这篇关于ETW清单文件 - 查找有关值的更多信息?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆