Compartir a través de


Seguimiento ETW

Download sample

Este ejemplo muestra cómo implementar el seguimiento de un extremo a otro (E2E) mediante el Seguimiento de eventos para Windows (ETW) y ETWTraceListener que se proporciona este ejemplo. El ejemplo está basado en Ejemplo de introducción e incluye el seguimiento de ETW.

Nota

El procedimiento de instalación y las instrucciones de compilación de este ejemplo se encuentran al final de este tema.

Este ejemplo supone que se está familiarizado con el Seguimiento y registro de mensajes y que ha leído la documentación proporcionada paraSeguimiento y registro de mensajes.

Cada origen de seguimiento en el modelo de seguimientoSystem.Diagnostics puede tener varios agentes de escucha de seguimiento que determinan donde y cómo se siguen paso a paso los datos. El tipo de agente de escucha define el formato en el que la información de seguimiento está registrada. El ejemplo de código siguiente muestra cómo agregar el agente de escucha a la configuración.

<system.diagnostics>
    <sources>
        <source name="System.ServiceModel" 
             switchValue="Verbose,ActivityTracing"
             propagateActivity="true">
            <listeners>
                <add type=
                   "System.Diagnostics.DefaultTraceListener"
                   name="Default">
                   <filter type="" />
                </add>
                <add name="ETW">
                    <filter type="" />
                </add>
            </listeners>
        </source>
    </sources>
    <sharedListeners>
        <add type=
            "Microsoft.ServiceModel.Samples.EtwTraceListener, ETWTraceListener"
            name="ETW" traceOutputOptions="Timestamp">
            <filter type="" />
       </add>
    </sharedListeners>
</system.diagnostics>

Antes de utilizar este agente de escucha, se debe iniciar una Sesión de seguimiento de ETW. Esta sesión se puede iniciar utilizando Logman.exe o Tracelog.exe. Un archivo SetupETW.bat está incluido con este ejemplo para que pueda preparar la Sesión de seguimiento ETW junto con un archivo CleanupETW.bat para cerrar la sesión y completar el archivo de registro.

Nota

El procedimiento de instalación y las instrucciones de compilación de este ejemplo se encuentran al final de este tema. Para obtener más información sobre estas herramientas, vea https://go.microsoft.com/fwlink/?LinkId=56580.

Al utilizar ETWTraceListener, los rastros están registrados en archivos .etl binarios. Con el seguimiento ServiceModel activado, todos los rastros generados aparecen en el mismo archivo. Utilice Service Trace Viewer Tool para ver .etl y los archivos de registro de .svclog. El visor crea una vista de un extremo a otro del sistema que permite hacer el seguimiento un mensaje de su origen a su destino y punto de consumo.

El Agente de escucha de seguimiento de ETW admite el registro circular. Para habilitar esta característica, vaya a Iniciar, Ejecutar y escriba cmd para iniciar una consola de comando. En el comando siguiente, reemplace el parámetro <logfilename> con el nombre de su archivo de registro.

logman create trace Wcf -o <logfilename> -p "{411a0819-c24b-428c-83e2-26b41091702e}" -f bincirc -max 1000

Los modificadores -max y -f son opcionales. Especifican respectivamente el formato circular binario y un tamaño de registro de máximo de 1000MB. El modificador -p se utiliza para especificar el proveedor de seguimiento. En nuestro ejemplo, "{411a0819-c24b-428c-83e2-26b41091702e}" es el GUID para "Proveedor del Ejemplo de "XML ETW.

Después de haber terminado de registrarse, puede detener la sesión con el comando siguiente.

Logman stop Wcf

Este proceso genera los registros circulares binarios que puede procesar con su herramienta de opción, incluyendo Service Trace Viewer Tool o Tracerpt.

También puede revisar la muestraSeguimiento circular para obtener más información sobre un agente de escucha alternativo para realizar el registro circular.

Para configurar, generar y ejecutar el ejemplo

  1. Asegúrese de que ha realizado Procedimiento de instalación único para ejemplos de Windows Communication Foundation.

  2. Para generar la solución, siga las instrucciones de Generación de ejemplos de Windows Communication Foundation.

  3. Antes de ejecutar el ejemplo, ejecute RegisterProvider.bat en el cliente y servidor. Esto prepara el archivo ETWTracingSampleLog.etl resultante para generar rastros que puedan ser leídos por el visor de seguimiento de servicios. Este archivo se puede buscar en la carpeta C:\logs. Si esta carpeta no existe, se debe crear o no se generará ningún rastro. A continuación, ejecute SetupETW.bat en los equipos del servidor y cliente para comenzar la Sesión de seguimiento ETW. El archivo SetupETW.bat se puede buscar en la carpeta CS\Client.

  4. Para ejecutar el ejemplo en una configuración con un único equipo o con varios, siga las instrucciones de Ejecución de ejemplos de Windows Communication Foundation.

  5. Cuando se completa el ejemplo, ejecute CleanupETW.bat para completar la creación del archivo ETWTracingSampleLog.etl.

  6. Abra el archivo ETWTracingSampleLog.etl desde dentro del Visor de seguimiento de servicios. Le solicitarán que guarde el archivo con formato binario como un archivo .svclog.

  7. Abra el archivo .svclog recientemente creado desde dentro del visor de seguimiento de servicios para ver los rastros de ServiceModel y ETW.

Footer image

Copyright © 2007 Microsoft Corporation. Reservados todos los derechos.