Como: adicionar instruções de rastreamento ao código de um aplicativo

Os métodos usados com mais frequência para rastreamento são os métodos para gravar a saída em ouvintes: Write, WriteIf, WriteLine, WriteLineIf, Assert e Fail. Esses métodos podem ser divididos em duas categorias: Write, WriteLine, and Fail emitem a saída incondicionalmente, enquanto WriteIf, WriteLineIf e Assert testam uma condição booliana e gravam ou não com base no valor da condição. WriteIf e WriteLineIf emitirão a saída se a condição for true e Assert emitirá a saída se a condição for false.

Ao criar sua estratégia de rastreamento e depuração, pense em como você deseja que a saída se assemelhe. Várias instruções Write preenchidas com informações não relacionadas criarão um log que é difícil de ser lido. Por outro lado, o uso de WriteLine para colocar instruções relacionadas em linhas separadas pode tornar difícil distinguir quais informações pertencem juntas. Em geral, use várias instruções Write quando desejar combinar informações de várias fontes para criar uma única mensagem informativa e use a instrução WriteLine quando desejar criar uma única mensagem completa.

Para gravar uma linha completa

  1. Chame o método WriteLine or WriteLineIf.

    Um retorno de carro é acrescentado ao final da mensagem retornada por esse método, de modo que a próxima mensagem retornada por Write, WriteIf, WriteLine ou WriteLineIf comece na seguinte linha:

    Dim errorFlag As Boolean = False  
    Trace.WriteLine("Error in AppendData procedure.")  
    Trace.WriteLineIf(errorFlag, "Error in AppendData procedure.")  
    
    bool errorFlag = false;  
    System.Diagnostics.Trace.WriteLine ("Error in AppendData procedure.");  
    System.Diagnostics.Trace.WriteLineIf(errorFlag,
       "Error in AppendData procedure.");  
    

Para gravar uma linha parcial

  1. Chame o método Write or WriteIf.

    A próxima mensagem colocada por uma instrução Write, WriteIf, WriteLine ou WriteLineIf começará na mesma linha da mensagem colocada pela instrução Write ou WriteIf:

    Dim errorFlag As Boolean = False  
    Trace.WriteIf(errorFlag, "Error in AppendData procedure.")  
    Debug.WriteIf(errorFlag, "Transaction abandoned.")  
    Trace.Write("Invalid value for data request")  
    
    bool errorFlag = false;  
    System.Diagnostics.Trace.WriteIf(errorFlag,
       "Error in AppendData procedure.");  
    System.Diagnostics.Debug.WriteIf(errorFlag, "Transaction abandoned.");  
    Trace.Write("Invalid value for data request");  
    

Para verificar se certas condições existem antes ou depois de executar um método

  1. Chame o método Assert .

    Dim i As Integer = 4  
    Trace.Assert(i = 5, "i is not equal to 5.")  
    
    int i = 4;  
    System.Diagnostics.Trace.Assert(i == 5, "i is not equal to 5.");  
    

    Observação

    Use Assert com o rastreamento e a depuração. Este exemplo gera a pilha de chamadas para qualquer ouvinte da coleção Listeners. Para obter mais informações, consulte Declarações em código gerenciado e Debug.Assert.

Confira também