Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
En el ejemplo CircularTracing se muestra la implementación de un agente de escucha de seguimiento de búfer circular. Un escenario común para los servicios de producción es tener servicios disponibles durante largos períodos de tiempo y tener habilitado el registro de seguimiento en un nivel bajo. Estos servicios consumen mucho espacio en disco. Al solucionar problemas de un servicio, los datos más recientes del registro de seguimiento son relevantes para resolver un problema. En este ejemplo se muestra una implementación de un agente de escucha de seguimiento de búfer circular en el que solo los seguimientos más recientes se mantienen en el disco hasta una cantidad configurable de datos. Este ejemplo se basa en la introducción e incluye un agente de escucha de seguimiento personalizado.
Nota:
El procedimiento de instalación y las instrucciones de compilación de este ejemplo se encuentran al final de este tema.
En este ejemplo se supone que está familiarizado con el ejemplo de seguimiento y registro de mensajes y que ha leído la documentación proporcionada para el ejemplo de seguimiento y registro de mensajes.
Agente de escucha de seguimiento de búfer circular
El concepto subyacente a la implementación del agente de escucha de seguimiento de búfer circular es tener dos archivos que pueden almacenar hasta la mitad de los datos de registro de seguimiento deseados totales. El agente de escucha crea un archivo y escribe en ese archivo hasta que alcanza el límite de la mitad del tamaño de los datos, en cuyo punto cambia a un segundo archivo. Cuando el agente de escucha alcanza el límite del segundo archivo, sobrescribe el primer archivo con nuevos seguimientos.
Este agente de escucha se deriva de XmlWriteTraceListener y permite ver los registros con la herramienta Visor de seguimiento de servicio (SvcTraceViewer.exe). Al intentar ver los registros, los dos archivos de registro se pueden volver a enlazar fácilmente abriendo ambos archivos de registro al mismo tiempo en la herramienta Visor de seguimiento de servicio. La herramienta Visor de seguimiento de servicio se encarga automáticamente de ordenar los seguimientos para que aparezcan en el orden correcto.
Configuración
Un servicio se puede configurar para usar el agente de escucha de seguimiento de búfer circular agregando el código siguiente para un agente de escucha y elementos de origen. El tamaño máximo del archivo se especifica estableciendo el maxFileSizeKB atributo en la configuración del agente de escucha de seguimiento circular. Esto se muestra en el código siguiente.
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Information,ActivityTracing" propagateActivity="true">
<listeners>
<add name="CircularTraceListener" />
</listeners>
</source>
</sources>
<sharedListeners>
<add name="CircularTraceListener" type="Microsoft. Samples.ServiceModel.CircularTraceListener,CircularTraceListener"
initializeData="c:\logs\CircularTracing-service.svclog" maxFileSizeKB="100" />
</sharedListeners>
<trace autoflush="true" />
</system.diagnostics>
Para configurar, compilar y ejecutar el ejemplo
Asegúrese de haber realizado el procedimiento de configuraciónOne-Time para las muestras de Windows Communication Foundation.
Para compilar el código C# o Visual Basic .NET Edition de la solución, siga las instrucciones de Building the Windows Communication Foundation Samples.
Para ejecutar el ejemplo en una configuración de un solo equipo o entre equipos, siga las instrucciones de Ejecución de los ejemplos de Windows Communication Foundation.