Como criar e inicializar ouvintes de rastreamentoHow to: Create and Initialize Trace Listeners

As classes System.Diagnostics.Debug e System.Diagnostics.Trace enviam mensagens para objetos chamados ouvintes, que recebem e processam essas mensagens.The System.Diagnostics.Debug and System.Diagnostics.Trace classes send messages to objects called listeners that receive and process these messages. Um ouvinte desse tipo, o System.Diagnostics.DefaultTraceListener, é criado e inicializado automaticamente quando a depuração ou o rastreamento é habilitado.One such listener, the System.Diagnostics.DefaultTraceListener, is automatically created and initialized when tracing or debugging is enabled. Se você desejar que a saída Trace ou Debug seja direcionada para outras fontes, crie e inicialize ouvintes de rastreamento adicionais.If you want Trace or Debug output to be directed to any additional sources, you must create and initialize additional trace listeners.

Os ouvintes criados devem refletir as necessidades do aplicativo.The listeners you create should reflect your application's needs. Por exemplo, se desejar obter um registro de texto de toda a saída de rastreamento, crie um ouvinte TextWriterTraceListener, que grava toda a saída para um novo arquivo de texto quando ele é habilitado.For example, if you want a text record of all trace output, create a TextWriterTraceListener listener, which writes all output to a new text file when it is enabled. Por outro lado, se desejar exibir a saída somente durante a execução do aplicativo, crie um ouvinte ConsoleTraceListener, que direciona toda a saída para uma janela do console.On the other hand, if you want to view output only during application execution, create a ConsoleTraceListener listener, which directs all output to a console window. O EventLogTraceListener pode direcionar a saída de rastreamento para um log de eventos.The EventLogTraceListener can direct trace output to an event log. Para obter mais informações, consulte ouvintes de rastreamento.For more information, see Trace Listeners.

Crie ouvintes de rastreamento em um arquivo de configuração de aplicativo ou no código.You can create trace listeners in an application configuration file or in your code. Recomendamos o uso de arquivos de configuração de aplicativo, porque eles permitem adicionar, modificar ou remover ouvintes de rastreamento sem a necessidade de alterar o código.We recommend the use of application configuration files, because they let you add, modify, or remove trace listeners without having to change your code.

Para criar e usar um ouvinte de rastreamento usando um arquivo de configuraçãoTo create and use a trace listener by using a configuration file

  1. Declare o ouvinte de rastreamento no arquivo de configuração de aplicativo.Declare your trace listener in your application configuration file. Se o ouvinte que você está criando exigir outros objetos, declare-os também.If the listener you are creating requires any other objects, declare them as well. O exemplo a seguir mostra como criar um ouvinte chamado myListener que grava no arquivo de texto TextWriterOutput.log.The following example shows how to create a listener called myListener that writes to the text file TextWriterOutput.log.

    <configuration>
      <system.diagnostics>
        <trace autoflush="false" indentsize="4">
          <listeners>
            <add name="myListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="TextWriterOutput.log" />
            <remove name="Default" />
          </listeners>
        </trace>
      </system.diagnostics>
    </configuration>
    
  2. Use a classe Trace no código para gravar uma mensagem nos ouvintes de rastreamento.Use the Trace class in your code to write a message to the trace listeners.

    Trace.TraceInformation("Test message.")
    ' You must close or flush the trace to empty the output buffer.
    Trace.Flush()
    
    Trace.TraceInformation("Test message.");
    // You must close or flush the trace to empty the output buffer.
    Trace.Flush();
    

Para criar e usar um ouvinte de rastreamento no códigoTo create and use a trace listener in code

  • Adicione o ouvinte de rastreamento à coleção Listeners e envie informações de rastreamento para os ouvintes.Add the trace listener to the Listeners collection and send trace information to the listeners.

    Trace.Listeners.Add(New TextWriterTraceListener("TextWriterOutput.log", "myListener"))
    Trace.TraceInformation("Test message.")
    ' You must close or flush the trace to empty the output buffer.
    Trace.Flush()
    
    Trace.Listeners.Add(new TextWriterTraceListener("TextWriterOutput.log", "myListener"));
    Trace.TraceInformation("Test message.");
    // You must close or flush the trace to empty the output buffer.
    Trace.Flush();
    

    - ou –- or -

  • Se você não desejar que o ouvinte receba a saída de rastreamento, não adicione-a à coleção Listeners.If you do not want your listener to receive trace output, do not add it to the Listeners collection. Emita a saída por meio de um ouvinte independente da coleção Listeners chamando os próprios métodos de saída do ouvinte.You can emit output through a listener independent of the Listeners collection by calling the listener's own output methods. O exemplo a seguir mostra como gravar uma linha em um ouvinte que não está na coleção Listeners.The following example shows how to write a line to a listener that is not in the Listeners collection.

    Dim myListener As New TextWriterTraceListener("TextWriterOutput.log", "myListener")
    myListener.WriteLine("Test message.")
    ' You must close or flush the trace listener to empty the output buffer.
    myListener.Flush()
    
    TextWriterTraceListener myListener = new TextWriterTraceListener("TextWriterOutput.log", "myListener");
    myListener.WriteLine("Test message.");
    // You must close or flush the trace listener to empty the output buffer.
    myListener.Flush();
    

Consulte tambémSee also