Cómo: Configurar modificadores de seguimiento

Actualización: noviembre 2007

Después de haber distribuido la aplicación, aún puede habilitar o deshabilitar la información de seguimiento configurando los modificadores de seguimiento en la aplicación. Configurar un modificador significa cambiar su valor desde un origen externo después de que haya sido inicializado. Puede cambiar los valores de los objetos modificadores mediante el archivo de configuración. Un modificador de seguimiento se configura para activarlo o desactivarlo o para establecer su nivel, el cual determina la cantidad y el tipo de mensajes que pasa a los agentes de escucha.

Los modificadores se configuran mediante el archivo .config. Para una aplicación Web, se trata del archivo Web.config asociado al proyecto. En una aplicación para Windows, este archivo se denomina (nombre de la aplicación).exe.config. En una aplicación implementada, este archivo debe estar en la misma carpeta que el ejecutable.

Cuando la aplicación ejecuta el código que crea una instancia de un modificador por primera vez, comprueba el archivo de configuración para ver si hay información del nivel de seguimiento para ese modificador. El sistema de seguimiento examina el archivo de configuración sólo una vez para cualquier modificador particular (la primera vez que la aplicación crea el modificador).

En una aplicación implementada, el código de seguimiento se habilita volviendo a configurar los modificadores cuando la aplicación no se está ejecutando. Normalmente, esto implica activar y desactivar los modificadores cambiando los niveles de seguimiento y, a continuación, volver a iniciar la aplicación.

Cuando se crea una instancia de un modificador, también se inicializa especificando dos argumentos: un argumento displayName y un argumento description. El argumento displayName del constructor define la propiedad Switch.DisplayName de la instancia de la clase Switch. El argumento displayName es el nombre que se utiliza para configurar el modificador en el archivo .config, mientras que el argumento description debería devolver una breve descripción del modificador e indicar qué mensajes controla.

Además de especificar el nombre del modificador que va a configurar, deberá también especificar un valor para el modificador. Este valor es un entero. Para BooleanSwitch, un valor de 0 corresponde a Off, y cualquier otro valor distinto de cero corresponde a On. Para TraceSwitch, 0,1,2,3 y 4 corresponden a Off, Error, Warning, Info y Verbose, respectivamente. Cualquier número mayor que 4 se trata como Verbose, y cualquier número menor que cero, como Off.

Nota:

En la versión 2.0 de .NET Framework, se puede utilizar texto para especificar el valor de un modificador. Por ejemplo, true para BooleanSwitch o el texto que representa un valor de enumeración como Error para TraceSwitch. La línea <add name="myTraceSwitch" value="Error" /> es equivalente a <add name="myTraceSwitch" value="1" />.

Para que los usuarios finales puedan configurar los modificadores de seguimiento de una aplicación, se debe suministrar una documentación detallada sobre los mismos. Debería detallar lo que controla cada modificador y cómo activarlos o desactivarlos. Asimismo, debería suministrar al usuario final un archivo .config con ayuda apropiada en los comentarios.

Para crear y configurar modificadores de seguimiento

  1. Cree los modificadores en el código. Para obtener más información, vea Crear e inicializar modificadores de seguimiento.

  2. Si el proyecto no contiene un archivo de configuración (app.config o Web.config), elija Agregar nuevo elemento en el menú Proyecto.

    • Visual Basic: en el cuadro de diálogo Agregar nuevo elemento, seleccione Archivo de configuración de aplicaciones.

      El archivo de configuración de la aplicación se crea y se abre. Se trata de un documento XML cuyo elemento raíz es <configuration>.

    • Visual C#: en el cuadro de diálogo Agregar nuevo elemento, seleccione Archivo XML. Denomine este archivo app.config. En el editor de XML, después de la declaración XML, agregue el código siguiente:

      <configuration>
      </configuration>
      

      Una vez compilado el proyecto, el archivo app.config se copia en la carpeta de resultados del proyecto y se le cambia el nombre a nombreDeAplicación.exe.config.

  3. Después de la etiqueta <configuration> , pero antes de la etiqueta </configuration> , agregue el código XML necesario para configurar los modificadores. Los ejemplos siguientes muestran un modificador BooleanSwitch con una propiedad DisplayName de DataMessageSwitch y un modificador TraceSwitch con una propiedad DisplayName de TraceLevelSwitch.

    <system.diagnostics>
       <switches>
          <add name="DataMessagesSwitch" value="0" />
          <add name="TraceLevelSwitch" value="0" />
       </switches>
    </system.diagnostics>
    

    En esta configuración, ambos modificadores están desactivados.

  4. Si necesita activar un BooleanSwitch, tal como DataMessagesSwitch del ejemplo anterior, asigne a Value cualquier entero distinto de 0.

  5. Si necesita activar un TraceSwitch, tal como TraceLevelSwitch del ejemplo anterior, asigne a Value el nivel apropiado (1 a 4).

  6. Agregue comentarios en el archivo .config para que el usuario final sepa qué valores debe cambiar para configurar los modificadores de forma apropiada.

    El siguiente ejemplo muestra el aspecto del código final, incluidos los comentarios:

    <system.diagnostics>
       <switches>
          <!-- This switch controls data messages. In order to receive data 
             trace messages, change value="0" to value="1" -->
          <add name="DataMessagesSwitch" value="0" />
          <!-- This switch controls general messages. In order to 
             receive general trace messages change the value to the 
             appropriate level. "1" gives error messages, "2" gives errors 
             and warnings, "3" gives more detailed error information, and 
             "4" gives verbose trace information -->
          <add name="TraceLevelSwitch" value="0" />
       </switches>
    </system.diagnostics>
    

Vea también

Tareas

Cómo: Agregar instrucciones de seguimiento al código de una aplicación

Conceptos

Introducción a la instrumentación y el seguimiento

Modificadores de seguimiento

Referencia

Esquema de la configuración de seguimiento y depuración

Otros recursos

Seguimiento e instrumentación de aplicaciones