DefaultTraceListener Clase
TOC
Collapse the table of content
Expand the table of content
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

DefaultTraceListener (Clase)

 

Proporciona los métodos de generación predeterminados y el comportamiento para realizar la traza.

Espacio de nombres:   System.Diagnostics
Ensamblado:  System (en System.dll)

System.Object
  System.MarshalByRefObject
    System.Diagnostics.TraceListener
      System.Diagnostics.DefaultTraceListener

[HostProtectionAttribute(SecurityAction.LinkDemand, Synchronization = true)]
public class DefaultTraceListener : TraceListener

NombreDescripción
System_CAPS_pubmethodDefaultTraceListener()

Inicializa una instancia nueva de la clase DefaultTraceListener con la propiedad Name establecida en el valor predeterminado ("Default").

NombreDescripción
System_CAPS_pubpropertyAssertUiEnabled

Obtiene o establece un valor que indica si la aplicación está funcionando en modo de interfaz de usuario.

System_CAPS_pubpropertyAttributes

Obtiene los atributos de agente de escucha de seguimiento personalizados que están definidos en el archivo de configuración de la aplicación.(Heredado de TraceListener.)

System_CAPS_pubpropertyFilter

Obtiene y establece el filtro de seguimiento para el agente de escucha de seguimiento.(Heredado de TraceListener.)

System_CAPS_pubpropertyIndentLevel

Obtiene o establece el nivel de sangría.(Heredado de TraceListener.)

System_CAPS_pubpropertyIndentSize

Obtiene o establece el número de espacios de una sangría.(Heredado de TraceListener.)

System_CAPS_pubpropertyIsThreadSafe

Obtiene un valor que indica si el agente de escucha de seguimiento es seguro para la ejecución de subprocesos. (Heredado de TraceListener.)

System_CAPS_pubpropertyLogFileName

Obtiene o establece el nombre de un archivo de registro que contiene mensajes de seguimiento o de depuración.

System_CAPS_pubpropertyName

Obtiene o establece un nombre para este objeto TraceListener.(Heredado de TraceListener.)

System_CAPS_protpropertyNeedIndent

Obtiene o establece un valor que indica si se va a aplicar sangría a los resultados.(Heredado de TraceListener.)

System_CAPS_pubpropertyTraceOutputOptions

Obtiene o establece las opciones de los resultados de seguimiento.(Heredado de TraceListener.)

NombreDescripción
System_CAPS_pubmethodClose()

Cuando se reemplaza en una clase derivada, se cierra el flujo de salida para que ya no reciba resultados de la traza o de la depuración.(Heredado de TraceListener.)

System_CAPS_pubmethodCreateObjRef(Type)

Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.(Heredado de MarshalByRefObject.)

System_CAPS_pubmethodDispose()

Libera todos los recursos usados por TraceListener.(Heredado de TraceListener.)

System_CAPS_protmethodDispose(Boolean)

Libera los recursos no administrados que usa TraceListener y libera los recursos administrados de forma opcional.(Heredado de TraceListener.)

System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object.)

System_CAPS_pubmethodFail(String)

Emite o muestra un mensaje y un seguimiento de pila para una aserción que produce siempre un error.(Reemplaza a TraceListener.Fail(String)).

System_CAPS_pubmethodFail(String, String)

Emite o muestra mensajes detallados y un rastro de pila para una aserción que produce siempre un error.(Reemplaza a TraceListener.Fail(String, String)).

System_CAPS_protmethodFinalize()

Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por el recolector de basura. (Heredado de Object.)

System_CAPS_pubmethodFlush()

Cuando se reemplaza en una clase derivada, vacía el búfer de resultados.(Heredado de TraceListener.)

System_CAPS_pubmethodGetHashCode()

Sirve como una función hash para un tipo en particular. (Heredado de Object.)

System_CAPS_pubmethodGetLifetimeService()

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.(Heredado de MarshalByRefObject.)

System_CAPS_protmethodGetSupportedAttributes()

Obtiene los atributos personalizados admitidos por el agente de escucha de seguimiento.(Heredado de TraceListener.)

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual. (Heredado de Object.)

System_CAPS_pubmethodInitializeLifetimeService()

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.(Heredado de MarshalByRefObject.)

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficial del Object actual. (Heredado de Object.)

System_CAPS_protmethodMemberwiseClone(Boolean)

Crea una copia superficial del objeto MarshalByRefObject actual.(Heredado de MarshalByRefObject.)

System_CAPS_pubmethodToString()

Retorna una cadena que representa al objeto actual. (Heredado de Object.)

System_CAPS_pubmethodTraceData(TraceEventCache, String, TraceEventType, Int32, Object)

Escribe la información de seguimiento, un objeto de datos y la información de evento en los resultados específicos del agente de escucha.(Heredado de TraceListener.)

System_CAPS_pubmethodTraceData(TraceEventCache, String, TraceEventType, Int32, Object[])

Escribe la información de seguimiento, una matriz de objetos de datos y la información de evento en los resultados específicos del agente de escucha.(Heredado de TraceListener.)

System_CAPS_pubmethodTraceEvent(TraceEventCache, String, TraceEventType, Int32)

Escribe la información de seguimiento y de evento en los resultados específicos del agente de escucha.(Heredado de TraceListener.)

System_CAPS_pubmethodTraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

Escribe la información de seguimiento, un mensaje y la información de evento en los resultados específicos del agente de escucha.(Heredado de TraceListener.)

System_CAPS_pubmethodTraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[])

Escribe la información de seguimiento, una matriz de objetos con formato y la información de evento en los resultados específicos del agente de escucha.(Heredado de TraceListener.)

System_CAPS_pubmethodTraceTransfer(TraceEventCache, String, Int32, String, Guid)

Escribe la información de seguimiento, un mensaje, una identidad de actividad relacionada y la información de evento en los resultados específicos del agente de escucha.(Heredado de TraceListener.)

System_CAPS_pubmethodWrite(Object)

Escribe el valor del método ToString del objeto en el agente de escucha que se crea al implementar la clase TraceListener.(Heredado de TraceListener.)

System_CAPS_pubmethodWrite(Object, String)

Escribe un nombre de categoría y el valor del método ToString del objeto en el agente de escucha que se crea al implementar la clase TraceListener.(Heredado de TraceListener.)

System_CAPS_pubmethodWrite(String)

Escribe el resultado en la función OutputDebugString y en el método Debugger.Log.(Reemplaza a TraceListener.Write(String)).

System_CAPS_pubmethodWrite(String, String)

Escribe un nombre de categoría y un mensaje en el agente de escucha que se crea al implementar la clase TraceListener.(Heredado de TraceListener.)

System_CAPS_protmethodWriteIndent()

Escribe la sangría en el agente de escucha que se crea al implementar esta clase y restablece la propiedad NeedIndent en false.(Heredado de TraceListener.)

System_CAPS_pubmethodWriteLine(Object)

Escribe el valor del método ToString del objeto en el agente de escucha que se crea al implementar la clase TraceListener, seguido de un terminador de línea.(Heredado de TraceListener.)

System_CAPS_pubmethodWriteLine(Object, String)

Escribe un nombre de categoría y el valor del método ToString del objeto en el agente de escucha que se crea al implementar la clase TraceListener, seguidos de un terminador de línea.(Heredado de TraceListener.)

System_CAPS_pubmethodWriteLine(String)

Escribe el resultado en la función OutputDebugString y en el método Debugger.Log, seguido de un retorno de carro y un salto de línea (\r\n).(Reemplaza a TraceListener.WriteLine(String)).

System_CAPS_pubmethodWriteLine(String, String)

Escribe un nombre de categoría y un mensaje en el agente de escucha que se crea al implementar la clase TraceListener, seguidos de un terminador de línea.(Heredado de TraceListener.)

Una instancia de esta clase se agrega automáticamente a las colecciones Debug.Listeners y Trace.Listeners.Agregar explícitamente un segundo DefaultTraceListener duplicará los mensajes en la ventana de salida del depurador y los cuadros de mensajes para las aserciones.

De manera predeterminada, los métodos Write y WriteLine envían el mensaje a la función OutputDebugString de Win32 y al método Debugger.Log.Para obtener información sobre la función OutputDebugString, vea Platform SDK o MSDN.

El método Fail muestra, de forma predeterminada, un cuadro de mensaje cuando la aplicación se ejecuta en modo de interfaz de usuario; también envía el mensaje utilizando WriteLine.

System_CAPS_noteNota

La aparición de un cuadro de mensaje para las llamadas a los métodos Assert y Fail dependen de la presencia de DefaultTraceListener.Si DefaultTraceListener no está en la colección de Listeners, no se muestra el cuadro de mensaje. DefaultTraceListener se puede eliminar con el elemento , con el elemento o llamando al método Clear en la propiedad Listeners (System.Diagnostics.Trace.Listeners.Clear()).

Es preciso habilitar la traza o la depuración para poder utilizar un agente de escucha de traza.La sintaxis siguiente es específica del compilador.Si se utilizan compiladores que no sean C# o Visual Basic, consulte la documentación del compilador.

  • Para habilitar la depuración en C#, agregue el marcador /d:DEBUG a la línea de comandos del compilador cuando compile el código o agregue #define DEBUG al principio del archivo.En Visual Basic, agregue el marcador /d:DEBUG=True a la línea de comandos del compilador.

  • Para habilitar la traza en C#, agregue el marcador /d:TRACE a la línea de comandos del compilador en el momento de compilar el código o bien agregue #define TRACE al principio del archivo.En Visual Basic, agregue el marcador /d:TRACE=True a la línea de comandos del compilador.

Para agregar un agente de escucha de seguimiento, modifique el archivo de configuración que corresponde al nombre de la aplicación.En este archivo, se podrá agregar un agente de escucha, establecer el tipo de agente y sus parámetros, quitar un agente o borrar todos los agentes definidos previamente por la aplicación.El archivo de configuración debería tener el mismo formato que en el siguiente ejemplo:

<configuration>
<system.diagnostics>
  <trace autoflush="false" indentsize="4">
    <listeners>
      <remove name="Default" />
      <add name="myListener"  type="System.Diagnostics.TextWriterTraceListener"    initializeData="c:\myListener.log" />
    </listeners>
  </trace>
</system.diagnostics>
</configuration>

En el siguiente ejemplo de código se calculan coeficientes binomiales (valores utilizados en probabilidad y estadística).El ejemplo usa DefaultTraceListener para hacer el seguimiento de los resultados y registrar los errores.Crea un DefaultTraceListener nuevo, lo agrega a la colección Trace.Listeners y establece la propiedad LogFileName en el archivo de registro especificado en los argumentos de la línea de comandos.

Si se detecta un error al procesar el parámetro de entrada, o la función CalcBinomial producen una excepción, el método Fail registrará y mostrará un mensaje de error.Si la propiedad AssertUiEnabled es false, el mensaje de error también se escribirá en la consola.Si el cálculo del resultado es correcto, los métodos Write(String) y WriteLine(String) escribirán los resultados en el archivo de registro.

Los métodos Fail, Write y WriteLine hacen que la información de seguimiento se escriba únicamente en DefaultTraceListener.Para que la información de seguimiento se escriba en todos los agentes de escucha de la colección Trace.Listeners, deberán utilizarse los métodos Fail, Write y WriteLine de la clase Trace.

using System;
using System.Diagnostics;
using Microsoft.VisualBasic;

class Binomial
{

    // args(0) is the number of possibilities for binomial coefficients.
    // args(1) is the file specification for the trace log file.
    public static void Main(string[] args)
    {

        decimal possibilities;
        decimal iter;

        // Remove the original default trace listener.
        Trace.Listeners.RemoveAt(0);

        // Create and add a new default trace listener.
        DefaultTraceListener defaultListener;
        defaultListener = new DefaultTraceListener();
        Trace.Listeners.Add(defaultListener);

        // Assign the log file specification from the command line, if entered.
        if (args.Length>=2)
        {
            defaultListener.LogFileName = args[1];
        }

        // Validate the number of possibilities argument.
        if (args.Length>=1)

            // Verify that the argument is a number within the correct range.
        {
            try
            {
                const decimal MAX_POSSIBILITIES = 99;
                possibilities = Decimal.Parse(args[0]);
                if (possibilities<0||possibilities>MAX_POSSIBILITIES)
                {
                    throw new Exception(String.Format("The number of possibilities must " +
                        "be in the range 0..{0}.", MAX_POSSIBILITIES));
                }
            }
            catch(Exception ex)
            {
                string failMessage = String.Format("\"{0}\" " +
                    "is not a valid number of possibilities.", args[0]);
                defaultListener.Fail(failMessage, ex.Message);
                if (!defaultListener.AssertUiEnabled)
                {
                    Console.WriteLine(failMessage+ "\n" +ex.Message);
                }
                return;
            }
        }
        else
        {
            // Report that the required argument is not present.
            const string ENTER_PARAM = "Enter the number of " +
                      "possibilities as a command line argument.";
            defaultListener.Fail(ENTER_PARAM);
            if (!defaultListener.AssertUiEnabled)
            {
                Console.WriteLine(ENTER_PARAM);
            }
            return;
        }

        for(iter=0; iter<=possibilities; iter++)
        {
            decimal result;
            string binomial;

            // Compute the next binomial coefficient and handle all exceptions.
            try
            {
                result = CalcBinomial(possibilities, iter);
            }
            catch(Exception ex)
            {
                string failMessage = String.Format("An exception was raised when " +
                    "calculating Binomial( {0}, {1} ).", possibilities, iter);
                defaultListener.Fail(failMessage, ex.Message);
                if (!defaultListener.AssertUiEnabled)
                {
                    Console.WriteLine(failMessage+ "\n" +ex.Message);
                }
                return;
            }

            // Format the trace and console output.
            binomial = String.Format("Binomial( {0}, {1} ) = ", possibilities, iter);
            defaultListener.Write(binomial);
            defaultListener.WriteLine(result.ToString());
            Console.WriteLine("{0} {1}", binomial, result);
        }
    }

    public static decimal CalcBinomial(decimal possibilities, decimal outcomes)
    {

        // Calculate a binomial coefficient, and minimize the chance of overflow.
        decimal result = 1;
        decimal iter;
        for(iter=1; iter<=possibilities-outcomes; iter++)
        {
            result *= outcomes+iter;
            result /= iter;
        }
        return result;
    }
}

.NET Framework
Disponible desde 1.1

Esta clase es segura para subprocesos.

Volver al principio
Mostrar:
© 2016 Microsoft