Exportar (0) Imprimir
Expandir todo
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.

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

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

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

El tipo DefaultTraceListener expone los siguientes miembros.

  NombreDescripción
Método públicoCompatible con XNA FrameworkDefaultTraceListenerInicializa una instancia nueva de la clase DefaultTraceListener con la propiedad Name establecida en el valor predeterminado ("Default").
Arriba

  NombreDescripción
Propiedad públicaAssertUiEnabledObtiene o establece un valor que indica si la aplicación está funcionando en modo de interfaz de usuario.
Propiedad públicaAttributesObtiene los atributos de agente de escucha de seguimiento personalizados que están definidos en el archivo de configuración de la aplicación. (Se hereda de TraceListener).
Propiedad públicaFilterObtiene y establece el filtro de seguimiento para el agente de escucha de seguimiento. (Se hereda de TraceListener).
Propiedad públicaCompatible con XNA FrameworkIndentLevelObtiene o establece el nivel de sangría. (Se hereda de TraceListener).
Propiedad públicaCompatible con XNA FrameworkIndentSizeObtiene o establece el número de espacios de una sangría. (Se hereda de TraceListener).
Propiedad públicaIsThreadSafeObtiene un valor que indica si el agente de escucha de seguimiento es seguro para la ejecución de subprocesos. (Se hereda de TraceListener).
Propiedad públicaLogFileNameObtiene o establece el nombre de un archivo de registro que contiene mensajes de seguimiento o de depuración.
Propiedad públicaCompatible con XNA FrameworkNameObtiene o establece un nombre para este objeto TraceListener. (Se hereda de TraceListener).
Propiedad protegidaCompatible con XNA FrameworkNeedIndentObtiene o establece un valor que indica si se va a aplicar sangría a los resultados. (Se hereda de TraceListener).
Propiedad públicaTraceOutputOptionsObtiene o establece las opciones de los resultados de seguimiento. (Se hereda de TraceListener).
Arriba

  NombreDescripción
Método públicoCompatible con XNA FrameworkCloseCuando 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. (Se hereda de TraceListener).
Método públicoCreateObjRefCrea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto. (Se hereda de MarshalByRefObject).
Método públicoCompatible con XNA FrameworkDispose()Libera todos los recursos utilizados por TraceListener. (Se hereda de TraceListener).
Método protegidoCompatible con XNA FrameworkDispose(Boolean)Libera los recursos no administrados que utiliza TraceListener y libera los recursos administrados de forma opcional. (Se hereda de TraceListener).
Método públicoCompatible con XNA FrameworkEquals(Object)Determina si el objeto especificado es igual al objeto actual. (Se hereda de Object).
Método públicoCompatible con XNA FrameworkFail(String)Emite o muestra un mensaje y un seguimiento de pila para una aserción que produce siempre un error. (Invalida a TraceListener.Fail(String)).
Método públicoCompatible con XNA FrameworkFail(String, String)Emite o muestra mensajes detallados y un rastro de pila para una aserción que produce siempre un error. (Invalida a TraceListener.Fail(String, String)).
Método protegidoCompatible con XNA FrameworkFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object).
Método públicoCompatible con XNA FrameworkFlushCuando se reemplaza en una clase derivada, vacía el búfer de resultados. (Se hereda de TraceListener).
Método públicoCompatible con XNA FrameworkGetHashCode Sirve como una función hash para un tipo en particular. (Se hereda de Object).
Método públicoGetLifetimeServiceRecupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia. (Se hereda de MarshalByRefObject).
Método protegidoGetSupportedAttributesObtiene los atributos personalizados admitidos por el agente de escucha de seguimiento. (Se hereda de TraceListener).
Método públicoCompatible con XNA FrameworkGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método públicoInitializeLifetimeServiceObtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia. (Se hereda de MarshalByRefObject).
Método protegidoCompatible con XNA FrameworkMemberwiseClone() Crea una copia superficial del Object actual. (Se hereda de Object).
Método protegidoMemberwiseClone(Boolean)Crea una copia superficial del objeto MarshalByRefObject actual. (Se hereda de MarshalByRefObject).
Método públicoCompatible con XNA FrameworkToString Retorna una cadena que representa al objeto actual. (Se hereda de Object).
Método públicoTraceData(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. (Se hereda de TraceListener).
Método públicoTraceData(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. (Se hereda de TraceListener).
Método públicoTraceEvent(TraceEventCache, String, TraceEventType, Int32)Escribe la información de seguimiento y de evento en los resultados específicos del agente de escucha. (Se hereda de TraceListener).
Método públicoTraceEvent(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. (Se hereda de TraceListener).
Método públicoTraceEvent(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. (Se hereda de TraceListener).
Método públicoTraceTransferEscribe 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. (Se hereda de TraceListener).
Método públicoCompatible con XNA FrameworkWrite(Object)Escribe el valor del método ToString del objeto en el agente de escucha que se crea al implementar la clase TraceListener. (Se hereda de TraceListener).
Método públicoCompatible con XNA FrameworkWrite(String)Escribe el resultado en la función OutputDebugString y en el método Debugger.Log. (Invalida a TraceListener.Write(String)).
Método públicoCompatible con XNA FrameworkWrite(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. (Se hereda de TraceListener).
Método públicoCompatible con XNA FrameworkWrite(String, String)Escribe un nombre de categoría y un mensaje en el agente de escucha que se crea al implementar la clase TraceListener. (Se hereda de TraceListener).
Método protegidoCompatible con XNA FrameworkWriteIndentEscribe la sangría en el agente de escucha que se crea al implementar esta clase y restablece la propiedad NeedIndent en false. (Se hereda de TraceListener).
Método públicoCompatible con XNA FrameworkWriteLine(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. (Se hereda de TraceListener).
Método públicoCompatible con XNA FrameworkWriteLine(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). (Invalida a TraceListener.WriteLine(String)).
Método públicoCompatible con XNA FrameworkWriteLine(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. (Se hereda de TraceListener).
Método públicoCompatible con XNA FrameworkWriteLine(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. (Se hereda de TraceListener).
Arriba

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.

NotaNota

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 <clear>, con el elemento <remove> 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>
NotaNota

El atributo HostProtectionAttribute aplicado a este tipo o miembro tiene el siguiente valor de propiedad Resources: Synchronization. El atributo HostProtectionAttribute no afecta a las aplicaciones de escritorio (que normalmente se inician haciendo doble clic en un icono, escribiendo un comando o introduciendo una dirección URL en el explorador). Para obtener más información, vea la clase HostProtectionAttribute o Programación en SQL Server y atributos de protección de host.

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

Compatible con: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Esta clase es segura para subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft