Partilhar via


FileLogTraceListener Classe

Definição

Fornece um ouvinte simples que direciona a saída de registro para o arquivo.

public ref class FileLogTraceListener : System::Diagnostics::TraceListener
[System.Runtime.InteropServices.ComVisible(false)]
public class FileLogTraceListener : System.Diagnostics.TraceListener
[<System.Runtime.InteropServices.ComVisible(false)>]
type FileLogTraceListener = class
    inherit TraceListener
Public Class FileLogTraceListener
Inherits TraceListener
Herança
FileLogTraceListener
Atributos

Comentários

A FileLogTraceListener classe fornece recursos de manutenção automatizados para arquivar arquivos de log conforme necessário, diariamente ou por aplicativo. Essa funcionalidade de arquivamento automático ajuda a reduzir as responsabilidades de manutenção de desenvolvedores e administradores.

Uma instância do FileLogTraceListener pode ser adicionada às Debug.Listeners coleções ou Trace.Listeners para redirecionar a saída do registro em log para um arquivo de texto. Instâncias dessa classe também podem ser adicionadas a My.Application.Log ou My.Log (para aplicativos Web) em aplicativos do Visual Basic. Para obter mais informações, consulte Instruções passo a passo: Alterando onde My.Application.Log grava informações.

Os main recursos dessa classe são:

  1. Funcionalidade de arquivamento. Os arquivos de log gerados por essa classe são nomeados de acordo com o nome base e a data, juntamente com um número para distinguir o arquivo de log de versões sucessivas do log. Novos arquivos de log são criados conforme necessário.

    A forma explícita do nome do arquivo é baseName[-dateStamp][-version].log, em que:

    • A baseName parte é o nome de log fundamental, especificado pela BaseFileName propriedade .

    • A dateStamp parte tem o formato "AAAA-MM-DD" e é mostrada quando LogFileCreationSchedule é Daily ou Weekly.

    • Se mais de um arquivo de log for necessário com o mesmo baseName e , a version parte , um positivo Integer, será adicionado ao dateStampnome do arquivo.

  2. Várias instâncias de classe. Se uma instância da FileLogTraceListener classe gravar em um arquivo que está em uso:

    • A classe compartilhará o arquivo se ele estiver sendo usado por outra instância da FileLogTraceListener classe no mesmo processo.

    • A classe criará um novo arquivo de log usando o próximo nome disponível se o arquivo estiver sendo usado por outro processo.

  3. Segurança de thread. A FileLogTraceListener classe é thread-safe. Isso permite que você escreva mensagens com segurança no log de vários threads sem usar bloqueios.

Local do arquivo de log

  • A Location propriedade usa uma LogFileLocation enumeração para especificar um dos diretórios típicos para gravar o arquivo de log.

  • Para gravar o log em outro local, defina a CustomLocation propriedade para esse local.

Nome do arquivo de log

  • O nome base do arquivo de log é especificado pela BaseFileName propriedade .

  • O nome do arquivo de log atual pode ser lido na FullLogFileName propriedade . Ele é derivado de várias outras propriedades e do estado atual dos logs no sistema de arquivos.

Manutenção de log

  • A frequência mínima para criar novos arquivos de log é determinada pela LogFileCreationSchedule propriedade . Quando o valor é Daily ou Weekly, um novo arquivo de log é criado pelo menos uma vez por dia ou semana e um carimbo de data é incorporado ao FullLogFileName nome.

  • O tamanho máximo (em bytes) do arquivo de log é determinado pela MaxFileSize propriedade . Se o tamanho do arquivo de log exceder esse tamanho, mensagens adicionais gravadas no log serão descartadas e, dependendo da DiskSpaceExhaustedBehavior propriedade , uma exceção será gerada.

  • A ReserveDiskSpace propriedade determina quanto espaço livre (em bytes) deve estar disponível. Isso ajuda a garantir que a FileLogTraceListener classe não consumirá todo o espaço em disco disponível. Use a DiskSpaceExhaustedBehavior propriedade para especificar o comportamento de gravações de log quando houver menos de ReserveDiskSpace bytes livres.

Configurações de saída do arquivo de log

  • A AutoFlush propriedade especifica se o fluxo subjacente deve ser liberado automaticamente após cada gravação no arquivo de log.

  • A Append propriedade especifica se as mensagens devem ser acrescentadas ao arquivo de log atual, se permitido, ou gravá-las em um novo arquivo de log.

  • A Delimiter propriedade especifica a cadeia de caracteres a ser usada para delimitar os campos dentro de uma mensagem de log.

  • A Encoding propriedade especifica a codificação a ser usada ao criar um novo arquivo de log.

Saída do arquivo de log

  • Os TraceData métodos e TraceEvent gravam mensagens no arquivo de log. Esses métodos marcar a LogFileCreationSchedule propriedade, juntamente com todos os logs existentes com o mesmo nome base para determinar se um novo log deve ser criado.

  • O Flush método libera todas as mensagens atualmente no buffer de saída para o arquivo de log.

  • O Close método fecha o arquivo de log para que ele possa ser usado por outros processos.

Habilitando a saída

Você deve habilitar o rastreamento ou a depuração para usar um ouvinte de rastreamento. A sintaxe a seguir é específica do compilador. Se você usar compiladores diferentes de C# ou Visual Basic, consulte a documentação do compilador.

  • Para habilitar a depuração em C#, adicione o /d:DEBUG sinalizador à linha de comando do compilador ao compilar o código ou adicione #define DEBUG à parte superior do arquivo. No Visual Basic, adicione o /d:DEBUG=True sinalizador à linha de comando do compilador.

  • Para habilitar o rastreamento em C#, adicione o /d:TRACE sinalizador à linha de comando do compilador ao compilar o código ou adicione #define TRACE à parte superior do arquivo. No Visual Basic, adicione o /d:TRACE=True sinalizador à linha de comando do compilador.

Em .NET Framework aplicativos, você pode definir o nível do ouvinte editando o arquivo de configuração do aplicativo. Nesse arquivo, você pode adicionar um ouvinte, definir seu tipo e definir seus parâmetros, remover um ouvinte ou limpar todos os ouvintes definidos anteriormente pelo aplicativo. O arquivo de configuração deve ser formatado como o exemplo a seguir.

<configuration>  
    <system.diagnostics>  
        <sharedListeners>  
            <add name="FileLog"  
                type="Microsoft.VisualBasic.Logging.FileLogTraceListener,   
                      Microsoft.VisualBasic, Version=8.0.0.0,   
                      Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a,   
                      processorArchitecture=MSIL"   
                initializeData="FileLogWriter"/>  
        </sharedListeners>  
    </system.diagnostics>  
</configuration>  

Para que este exemplo seja executado, você deve fornecer o nome do assembly totalmente qualificado. Para obter informações sobre como obter o nome do assembly totalmente qualificado, consulte Nomes de assembly.

Construtores

FileLogTraceListener()

Inicializa uma nova instância da classe FileLogTraceListener com o nome padrão.

FileLogTraceListener(String)

Inicializa uma nova instância da classe FileLogTraceListener com o nome fornecido.

Propriedades

Append

Determina se a saída deve ser acrescentada ao arquivo atual ou gravada em um arquivo novo ou existente.

Attributes

Obtém os atributos do ouvinte de rastreamento personalizados definidos no arquivo de configuração de aplicativo.

(Herdado de TraceListener)
AutoFlush

Indica se a gravação no fluxo de arquivos de log libera ou não o buffer.

BaseFileName

Obtém ou define o nome base dos arquivos de log, que é usado para criar o nome completo de arquivo de log completo.

CustomLocation

Obtém ou define o diretório de arquivo de log quando a propriedade Location está definida como Custom.

Delimiter

Obtém ou define o delimitador usado para delimitar campos dentro de uma mensagem de log.

DiskSpaceExhaustedBehavior

Determina o que fazer ao gravar no arquivo de log e há menos espaço livre em disco que o especificado pela propriedade ReserveDiskSpace.

Encoding

Obtém ou define a codificação usada ao criar um novo arquivo de log.

Filter

Obtém ou define o filtro de rastreamento para o ouvinte de rastreamento.

(Herdado de TraceListener)
FullLogFileName

Obtém o nome completo do arquivo de log atual.

IncludeHostName

Indica se o nome do host do computador de log deve ser incluído na saída.

IndentLevel

Obtém ou define o nível de recuo.

(Herdado de TraceListener)
IndentSize

Obtém ou define o número de espaços em um recuo.

(Herdado de TraceListener)
IsThreadSafe

Obtém um valor que indica se o ouvinte de rastreamento é thread-safe.

(Herdado de TraceListener)
Location

Obtém ou define o local dos arquivos de log.

LogFileCreationSchedule

Determina qual data incluir nos nomes dos arquivos de log.

MaxFileSize

Obtém ou define o tamanho máximo permitido para o arquivo de log, em bytes.

Name

Obtém ou define um nome para este TraceListener.

(Herdado de TraceListener)
NeedIndent

Obtém ou define um valor que indica se a saída deve ser recuada.

(Herdado de TraceListener)
ReserveDiskSpace

Obtém ou define a quantidade de espaço livre em disco, em bytes, necessários antes que as mensagens possam ser gravadas no arquivo de log.

TraceOutputOptions

Obtém ou define as opções de saída de rastreamento.

(Herdado de TraceListener)

Métodos

Close()

Fecha o fluxo subjacente do arquivo de log atual e libera os recursos associados ao fluxo atual.

CreateObjRef(Type)

Cria um objeto que contém todas as informações relevantes necessárias para gerar um proxy usado para se comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()

Libera todos os recursos usados pelo TraceListener.

(Herdado de TraceListener)
Dispose(Boolean)

Fecha o fluxo subjacente e, opcionalmente, libera os recursos gerenciados.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Fail(String)

Emite uma mensagem de erro para o ouvinte criado ao implementar a classe TraceListener.

(Herdado de TraceListener)
Fail(String, String)

Emite uma mensagem de erro e uma mensagem de erro detalhada para o ouvinte criado ao implementar a classe TraceListener.

(Herdado de TraceListener)
Flush()

Libera o fluxo subjacente que grava no arquivo de log atual.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetLifetimeService()
Obsoleto.

Recupera o objeto de serviço de tempo de vida atual que controla a política de ciclo de vida para esta instância.

(Herdado de MarshalByRefObject)
GetSupportedAttributes()

Obtém os atributos de configuração XML personalizados com suporte no ouvinte de rastreamento.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InitializeLifetimeService()
Obsoleto.

Obtém um objeto de serviço de tempo de vida para controlar a política de tempo de vida para essa instância.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto MarshalByRefObject atual.

(Herdado de MarshalByRefObject)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
TraceData(TraceEventCache, String, TraceEventType, Int32, Object)

Grava as informações de rastreamento, um objeto de dados e informações de evento no fluxo ou arquivo de saída.

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

Grava as informações de rastreamento, uma matriz de objetos de dados e informações de evento no fluxo ou arquivo de saída.

TraceEvent(TraceEventCache, String, TraceEventType, Int32)

Grava as informações de rastreamento e evento para a saída específica do ouvinte.

(Herdado de TraceListener)
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

Grava as informações de rastreamento, uma mensagem e informações de evento no fluxo ou arquivo de saída.

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

Grava informações de rastreamento, uma matriz de objetos formatada e informações de evento no fluxo ou arquivo de saída.

TraceTransfer(TraceEventCache, String, Int32, String, Guid)

Grava informações de rastreamento, uma mensagem, uma identidade de atividade relacionada e informações de evento na saída específica do ouvinte.

(Herdado de TraceListener)
Write(Object)

Grava o valor do método ToString() do objeto no ouvinte criado ao implementar a classe TraceListener.

(Herdado de TraceListener)
Write(Object, String)

Grava um nome de categoria e o valor do método ToString() do objeto no ouvinte criado ao implementar a classe TraceListener.

(Herdado de TraceListener)
Write(String)

Grava uma mensagem textual para o disco, sem qualquer informação de contexto adicional.

Write(String, String)

Grava um nome de categoria e uma mensagem no ouvinte criado ao implementar a classe TraceListener.

(Herdado de TraceListener)
WriteIndent()

Grava o recuo para o ouvinte criar durante a implementação dessa classe e redefine a propriedade NeedIndent para false.

(Herdado de TraceListener)
WriteLine(Object)

Grava o valor do método ToString() do objeto no ouvinte criado ao implementar a classe TraceListener, seguido por um terminador de linha.

(Herdado de TraceListener)
WriteLine(Object, String)

Grava um nome de categoria e o valor do método ToString() do objeto no ouvinte criado ao implementar a classe TraceListener, seguido por um terminador de linha.

(Herdado de TraceListener)
WriteLine(String)

Grava uma mensagem textual para o disco, seguida pelo terminador de linha atual, sem qualquer informação de contexto adicional.

WriteLine(String, String)

Grava um nome de categoria e uma mensagem no ouvinte criado ao implementar a classe TraceListener, seguido por um terminador de linha.

(Herdado de TraceListener)

Aplica-se a

Confira também