我在哪里获得tracefmt.exe?我如何阅读MSDTC跟踪?

时间:2009-08-25 17:00:45

标签: windows msdtc

我关注the KB article from MS以启用MSDTC跟踪。不幸的是,它很难遵循,因为它没有假设读者非常合理和明显的期望,特别是“我如何阅读这个二进制日志文件?”我也读了this page from MSDN,在那里我发现我无法读取日志文件,因为我遗漏了一些名为tracefmt.exe的可执行文件,而且我显然是唯一一个遇到此问题的人。< / p>

因此我的问题是:为什么我没有tracefmt.exe?我从哪里获得它?或者,为了达到这一点:如何阅读我的MSDTC跟踪日志?

8 个答案:

答案 0 :(得分:32)

安装Visual Studio 2010后,我在以下位置找到了该工具:

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64\TraceFmt.exe

然后我将.EXE复制到以下位置:

C:\Windows\System32\Msdtc\Trace

按如下方式运行:

TraceFmt.exe dtctrace.log.2012-06-13-10-38-57-0601-00

虽然我大部分时间都使用msdtcvtr.bat,如下所示:

C:\Windows\System32\Msdtc\Trace\msdtcvtr.bat -tracelog dtctrace.log.2012-06-13-10-38-57-0601-00

答案 1 :(得分:18)

为了节省下载所有WDK(600MB +),仅用于200KB的文件,我通过执行以下操作选择了4.7MB的下载:

  1. 从此处下载“Windows XP Service Pack 2支持工具”:http://www.microsoft.com/downloads/details.aspx?FamilyId=49AE8576-9BB9-4126-9761-BA8011FABF38&displaylang=en
  2. 如果从XP运行,只需解压缩并转到
  3. 如果从2003开始运行(就像我一样),你会收到一个错误,说这只能在XP上安装。因此,为了解决这个问题,请使用工具来提取exe。
  4. 在exe内部将是support.cab,提取此处的内容
  5. 查找这两个文件tracefmt.exetraceprt.dll。将这些复制到您的%windir%\system32\msdtc\trace目录

答案 2 :(得分:12)

Windows驱动程序工具包(WDK)中提供了 tracefmt(以及更易于使用的traceview)。它可以在这里找到:http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11800。它位于WDK中,因为这种跟踪技术在设备驱动程序中更常用。

答案 3 :(得分:10)

DTC追踪

分布式服务支持团队博客更详细地介绍了how to trace the DTC

Windows驱动程序工具包

接受的答案中的链接似乎被打破了。我找到了Windows Driver Kit homepagecurrent download link

下载ISO并且您处于安装屏幕Microsoft Windows驱动程序工具包后,只从“完全开发环境”中选择“工具”。 tracefmt.exe位于<install-path>\<version>\Tools\tracing\i386中。 确保从64位或32位目录中复制tracefmt.exe的版本!

上面的博主将这些文件移到了DTC文件夹%systemroot%\MsDtc\Trace,可能是因为它们位于msdtcvtr.bat路径中。

答案 4 :(得分:5)

从上述帖子(以及其他地方)搜索tracefmt.exe和traceprt.dll后,我发现您需要64位版本的工具才能在Windows Server 2008上运行该程序。

我找到了this blog post

并发现如果安装了visual studio,您应该能够在本地计算机上找到exe和dll的64位和32位版本:

  • ProgramFiles \ Microsoft SDKs \ Windows \ v6.0A \ Bin \(32位)
  • ProgramFiles \ Microsoft SDKs \ Windows \ v6.0A \ Bin \ x64 \(64位)

答案 5 :(得分:2)

答案 6 :(得分:1)

通常,您应该使用现有的* .mof文件来包含跟踪文件。 在C:\ Windows \ System32 \ Msdtc \ Trace \ u中可以看到msdtctr.mof。 此文件包含跟踪文件的描述,您需要使用它,如下所示:

tracefmt log_filename -tmf msdtctr.mof

答案 7 :(得分:0)

我发现Darren和Thomas Bratt的答案非常有用,但为了使用tracefmt成功解析DTC文件,我必须提供tmf参数:

tracefmt -tmf msdtctr.mof dtctrace.log

否则每个事件都会出现类似

的事件
Unknown( 21): GUID=75f91e0e-d50c-47c9-b06f-3f2013e9da73 (No Format Information found).