unavailable for windows msdtc

windows - for - ¿Dónde consigo tracefmt.exe? ¿Y cómo leo mis huellas de MSDTC?



msdtc on server is unavailable (8)

Rastreo DTC

El blog del Equipo de soporte de servicios distribuidos trata sobre cómo rastrear el DTC con más detalle.

Kit de controladores de Windows

Los enlaces en la respuesta aceptada parecen estar rotos. He encontrado la página de inicio del Kit de controladores de Windows y el enlace de descarga actual .

Una vez que haya descargado el ISO y esté en la pantalla de instalación, el Kit de controladores de Microsoft Windows, seleccione solo Herramientas en el entorno de desarrollo completo. El tracefmt.exe se encuentra en <install-path>/<version>/Tools/tracing/i386 . ¡Asegúrese de copiar la versión de tracefmt.exe del directorio de 64 bits o de 32 bits!

El blogger de arriba movió esos archivos a la carpeta DTC %systemroot%/MsDtc/Trace , probablemente por lo que estaban en la ruta msdtcvtr.bat .

Seguí el artículo de KB de MS para activar el rastreo de MSDTC. Desafortunadamente, fue difícil de seguir, ya que no asume una expectativa muy razonable y obvia del lector, específicamente "¿cómo leo este archivo de registro binario?" También leí esta página de MSDN , donde encuentro que no puedo leer el archivo de registro porque me falta un ejecutable llamado tracefmt.exe , y aparentemente soy el único en este lugar con este problema.

Por lo tanto, mi pregunta: ¿Por qué no tengo tracefmt.exe y dónde lo consigo? o, para llegar al punto: ¿Cómo leo mis registros de seguimiento de MSDTC?


Con Visual Studio 2010 instalado, encontré la herramienta en la siguiente ubicación:

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

Luego copié el .EXE a la siguiente ubicación:

C:/Windows/System32/Msdtc/Trace

Y corrió de la siguiente manera:

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

Aunque la mayoría de las veces uso msdtcvtr.bat, de la siguiente manera:

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


Después de buscar tracefmt.exe y traceprt.dll en las publicaciones anteriores (y en otros lugares), encontré que necesita la versión de 64 bits de las herramientas para que el programa se ejecute en Windows Server 2008.

Encontré esta publicación de blog .

y descubrió que si tiene instalado Visual Studio, debería poder encontrar las versiones de 64 bits y de 32 bits para el archivo exe y dll en su máquina local:

  • Archivos de programa / Microsoft SDKs / Windows / v6.0A / Bin / (32 bits)
  • Archivos de programa / Microsoft SDKs / Windows / v6.0A / Bin / x64 / (64 bits)

Las respuestas de Darren y Thomas Bratt me parecieron muy útiles, pero para analizar correctamente los archivos DTC usando tracefmt , tuve que proporcionar el parámetro tmf :

tracefmt -tmf msdtctr.mof dtctrace.log

De lo contrario cada evento resultó algo como

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


Muy a menudo debería usar el archivo * .mof existente para rodear archivos de rastreo. En C: / Windows / System32 / Msdtc / Trace / u puede ver msdtctr.mof. Este archivo tiene una descripción de los archivos de seguimiento y necesitas usarlo como este:

tracefmt log_filename -tmf msdtctr.mof


Para ahorrar en la descarga de todos los archivos WDK (600 MB +), solo para 200 KB de archivos, opté por una descarga de 4.7 MB haciendo lo siguiente:

  1. Descargue "Herramientas de soporte de Windows XP Service Pack 2" desde aquí: http://www.microsoft.com/downloads/details.aspx?FamilyId=49AE8576-9BB9-4126-9761-BA8011FABF38&displaylang=en
  2. Si está ejecutando desde XP, simplemente extraiga y vaya
  3. Si se ejecuta desde 2003 (como yo), aparecerá un error que indica que esto solo se puede instalar en XP. Así que para solucionar esto, usa una herramienta para extraer el archivo ejecutable.
  4. Dentro del exe habrá un support.cab , extraiga el contenido de este en algún lugar.
  5. Busque estos dos archivos, tracefmt.exe y traceprt.dll . Copie estos en su directorio %windir%/system32/msdtc/trace