Compartir a través de


Servicios de WCF y seguimiento de eventos para Windows

El ejemplo ETWTracing muestra cómo usar el seguimiento analítico de Windows Communication Foundation (WCF) para emitir eventos en Seguimiento de eventos para Windows (ETW). Los seguimientos analíticos son los eventos emitidos en los puntos clave de la pila WCF que permiten solucionar problemas de los servicios WCF en un entorno de producción.

El seguimiento analítico de servicios WCF se puede activar en un entorno de producción con un impacto mínimo en el rendimiento. Estos seguimientos se emiten como eventos para una sesión de ETW.

Este ejemplo incluye un servicio WCF básico en el que los eventos se emiten desde el servicio al registro de eventos, que se puede ver con el Visor de eventos. También es posible iniciar una sesión de ETW dedicada que escuche eventos del servicio WCF. En el ejemplo se incluye un script para crear una sesión de ETW dedicada que almacena los eventos en un archivo binario que se puede leer utilizando el Visor de eventos.

Para utilizar este ejemplo

  1. En Visual Studio, abra el archivo de la solución EtwAnalyticTraceSample.sln.

  2. Presione Ctrl+Mayús+B para compilar la aplicación.

  3. Para ejecutar la solución, presione CTRL+F5.

    En el explorador web, haga clic en Calculator.svc. El URI del documento WSDL para el servicio debería aparecer en el explorador. Copie ese URI.

    De forma predeterminada, el servicio comienza a escuchar solicitudes en el puerto 1378 http://localhost:1378/Calculator.svc.

  4. Ejecute el Cliente de prueba WCF (WcfTestClient.exe).

    El Cliente de prueba WCF (WcfTestClient.exe) se encuentra en \<Visual Studio Install Dir>\Common7\IDE\WcfTestClient.exe.

  5. Dentro del Cliente de prueba WCF, agregue el servicio. Para ello, seleccione Archivo y elija Agregar servicio.

    Agregue la dirección del punto de conexión en el cuadro de entrada. El valor predeterminado es http://localhost:1378/Calculator.svc.

  6. Abra la aplicación Visor de eventos.

    Antes de invocar el servicio, inicie el Visor de eventos y asegúrese de que el registro de eventos escucha los eventos de seguimiento emitidos por el servicio WCF.

  7. En el menú Inicio, seleccione Herramientas administrativas, Visor de eventos. Habilite los registros Analítico y Depuración.

  8. En la vista de árbol del Visor de eventos, vaya a Visor de eventos, Registros de aplicaciones y servicios, Microsoft, Windows, Servidor de aplicaciones-Aplicaciones. Haga clic con el botón derecho en Servidor de aplicaciones-Aplicaciones, seleccione Ver y, después, Mostrar registros analíticos y de depuración.

    Asegúrese de que esté activada la opción Mostrar registros analíticos y de depuración.

  9. Habilite el registro Analítico.

    En la vista de árbol del Visor de eventos, vaya a Visor de eventos, Registros de aplicaciones y servicios, Microsoft, Windows, Servidor de aplicaciones-Aplicaciones. Haga clic con el botón derecho en el elemento Analítico y seleccione Habilitar registro.

Para probar el servicio

  1. Cambie de nuevo al Cliente de prueba WCF, haga doble clic en Divide y mantenga los valores predeterminados, que especifican el denominador 0.

    Si el denominador es 0, el servicio produce un error.

  2. Observe los eventos emitidos desde el servicio.

    Cambie al Visor de eventos y vaya a Visor de eventos, Registros de aplicaciones y servicios, Microsoft, Windows, Aplicaciones de servidor-Aplicaciones. Haga clic con el botón derecho en Analítico y seleccione Actualizar.

    Los eventos de seguimiento analítico de WCF se muestran en el visor de eventos. Observe que dado que el servicio inició un error, se muestra un evento de seguimiento del error en el visor de eventos.

  3. Repita los pasos 1 y 2, pero con entradas válidas. El valor del parámetro N2 puede ser cualquier número distinto de 0.

    Actualice el canal analítico para ver los eventos de WCF que no incluyen ningún evento de error.

En el ejemplo se muestran los eventos de seguimiento analíticos emitidos desde un servicio WCF.

Para realizar la limpieza (Opcional)

  1. Abra el Visor de eventos.

  2. Vaya a Visor de eventos, Registros de aplicaciones y servicios, Microsoft, Windows, Aplicaciones de servidor-Aplicaciones. Haga clic con el botón derecho en Analítico y seleccione Deshabilitar registro.

  3. Vaya a Visor de eventos, Registros de aplicaciones y servicios, Microsoft, Windows, Aplicaciones de servidor-Aplicaciones. Haga clic con el botón derecho en Analítico y seleccione Borrar registro.

  4. Elija la opción Borrar para borrar los eventos.

Consulte también