FileLogTraceListener Classe

Definição

Fornece um ouvinte simples que direciona a saída de registo para o ficheiro.

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

Observações

A FileLogTraceListener classe fornece capacidades automatizadas de manutenção para arquivar ficheiros de registo conforme necessário, diariamente ou por aplicação. Esta funcionalidade automática de arquivamento ajuda a reduzir as responsabilidades de manutenção dos programadores e administradores.

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

As principais características desta classe são:

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

    A forma explícita do nome do ficheiro é baseName[-dateStamp][-version].log, onde:

    • A baseName peça é o nome fundamental do log, especificado pela BaseFileName propriedade.
    • A dateStamp parte tem o formato "YYYY-MM-DD", e é mostrado quando LogFileCreationSchedule é Daily ou Weekly.
    • Se for necessário mais do que um ficheiro de registo com o mesmo baseName e , a version parte, um positivo Integer, é adicionada ao nome dateStampdo ficheiro.
  2. Múltiplas instâncias de classe. Se uma instância da FileLogTraceListener classe escreve num ficheiro que está em uso:

    • A classe partilha o ficheiro se este estiver a ser usado por outra instância da FileLogTraceListener classe no mesmo processo.
    • A classe cria um novo ficheiro de registo usando o nome disponível seguinte se o ficheiro estiver a ser usado por outro processo.
  3. Segurança de rosca. A FileLogTraceListener aula é segura para fios. Isto permite-lhe escrever mensagens no log em segurança a partir de múltiplos threads sem usar bloqueios.

Log-File Localização

  • A Location propriedade exige uma LogFileLocation enumeração para especificar um dos diretórios típicos onde escrever o ficheiro de registo.

  • Para escrever o registo noutro local, defina a CustomLocation propriedade para esse local.

Log-File Nome

  • O nome base do ficheiro de registo é especificado pela BaseFileName propriedade.
  • O nome atual do ficheiro de log pode ser lido a partir da FullLogFileName propriedade. Deriva de várias outras propriedades e do estado atual dos registos no sistema de ficheiros.

Manutenção de Troncos

  • A frequência mínima para criar novos ficheiros de registo é determinada pela LogFileCreationSchedule propriedade. Quando o valor é Daily ou Weekly, um novo ficheiro de registo é criado pelo menos uma vez por dia ou semana, e um carimbo de data é incorporado no FullLogFileName nome.
  • O tamanho máximo (em bytes) do ficheiro de registo é determinado pela propriedade MaxFileSize . Se o tamanho do ficheiro de registo exceder este tamanho, mensagens adicionais escritas no registo são descartadas e, dependendo da DiskSpaceExhaustedBehavior propriedade, é lançada uma exceção.
  • A ReserveDiskSpace propriedade determina quanto espaço livre (em bytes) deve estar disponível. Isto ajuda a garantir que a FileLogTraceListener classe não consumirá todo o espaço disponível em disco. Use a DiskSpaceExhaustedBehavior propriedade para especificar o comportamento das escritas logarítmicas quando há menos de ReserveDiskSpace bytes livres.

Log-File Definições de Saída

  • A AutoFlush propriedade especifica se o fluxo subjacente deve ser limpo automaticamente após cada gravação no ficheiro de log.
  • A Append propriedade especifica se deve adicionar mensagens ao ficheiro de registo atual, se permitido, ou escrevê-las num novo ficheiro de registo.
  • A Delimiter propriedade especifica a cadeia a usar para delimitar os campos dentro de uma mensagem logarítmica.
  • A Encoding propriedade especifica a codificação a usar ao criar um novo ficheiro de log.

Log-File Saída

  • Os TraceData métodos e TraceEvent escrevem mensagens no ficheiro de log. Estes métodos verificam a LogFileCreationSchedule propriedade, juntamente com quaisquer troncos existentes com o mesmo nome base, para determinar se deve ser criado um novo tronco.
  • O Flush método limpa quaisquer mensagens atualmente no buffer de saída para o ficheiro de registo.
  • O Close método fecha o ficheiro de registo para que possa ser utilizado por outros processos.

Ativação da Saída

Deve ativar o rastreio ou depuração para usar um ouvinte de rastreamento. A sintaxe seguinte é específica do compilador. Se usar compiladores que não sejam C# ou Visual Basic, consulte a documentação do seu compilador.

  • Para permitir a depuração em C#, adicione a /d:DEBUG flag à linha de comandos do compilador quando compilar o seu código, ou pode adicionar #define DEBUG no topo do seu ficheiro. Em Visual Basic, adicione a flag /d:DEBUG=True à linha de comandos do compilador.
  • Para ativar o traçado em C#, adicione a /d:TRACE flag à linha de comandos do compilador quando compilar o seu código, ou adicione #define TRACE no topo do seu ficheiro. Em Visual Basic, adicione a flag /d:TRACE=True à linha de comandos do compilador.

Nas aplicações .NET Framework, pode definir o nível do seu ouvinte editando o ficheiro de configuração da sua aplicação. Dentro deste ficheiro, pode adicionar um ouvinte, definir o seu tipo e os seus parâmetros, remover um ouvinte ou limpar todos os ouvintes previamente definidos pela aplicação. O ficheiro de configuração deve ser formatado como o seguinte exemplo.

<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, deve fornecer o nome da assembleia totalmente qualificado. Para informações sobre como obter o nome de assembleia totalmente qualificado, consulte Nomes de Assembleia.

Construtores

Name Description
FileLogTraceListener()

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

FileLogTraceListener(String)

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

Propriedades

Name Description
Append

Determina se deve adicionar a saída ao ficheiro atual ou escrevê-la num ficheiro novo ou existente.

Attributes

Obtém os atributos personalizados do ouvinte de rastreio definidos no ficheiro de configuração da aplicação.

(Herdado de TraceListener)
AutoFlush

Indica se a escrita no fluxo do ficheiro de log limpa o buffer.

BaseFileName

Obtém ou define o nome base dos ficheiros de log, que é usado para criar o nome completo do ficheiro de log.

CustomLocation

Obtém ou define o diretório do ficheiro de registo quando a Location propriedade está definida para Custom.

Delimiter

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

DiskSpaceExhaustedBehavior

Determina o que fazer ao escrever no ficheiro de registo e há menos espaço livre disponível em disco do que o especificado pela ReserveDiskSpace propriedade.

Encoding

Obtém ou define a codificação para usar ao criar um novo ficheiro de log.

Filter

Obtém ou define o filtro de traço para o ouvinte de traços.

(Herdado de TraceListener)
FullLogFileName

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

IncludeHostName

Indica se o nome do host da máquina de registo deve ou não ser incluído na saída.

IndentLevel

Obtém ou define o nível da recuação.

(Herdado de TraceListener)
IndentSize

Obtém ou define o número de espaços num reentro.

(Herdado de TraceListener)
IsThreadSafe

Recebe um valor que indica se o ouvinte de rastreio é seguro para threads.

(Herdado de TraceListener)
Location

Obtém ou define a localização dos ficheiros de log.

LogFileCreationSchedule

Determina qual data incluir nos nomes dos ficheiros de log.

MaxFileSize

Obtém ou define o tamanho máximo permitido do ficheiro 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 deve indentar a saída.

(Herdado de TraceListener)
ReserveDiskSpace

Obtém ou define a quantidade de espaço livre em disco, em bytes, necessária antes de as mensagens poderem ser escritas no ficheiro de log.

TraceOutputOptions

Obtém ou define as opções de saída do traço.

(Herdado de TraceListener)

Métodos

Name Description
Close()

Fecha o fluxo subjacente para o ficheiro de registo atual e liberta quaisquer recursos associados ao fluxo atual.

CreateObjRef(Type)

Cria um objeto que contém toda a informação relevante necessária para gerar um proxy usado para comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()

Liberta todos os recursos utilizados pelo TraceListener.

(Herdado de TraceListener)
Dispose(Boolean)

Fecha o fluxo subjacente e, opcionalmente, liberta os recursos geridos.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Fail(String, String)

Emite uma mensagem de erro e uma mensagem de erro detalhada para o ouvinte que crias quando implementas a TraceListener classe.

(Herdado de TraceListener)
Fail(String)

Emite uma mensagem de erro para o ouvinte que crias quando implementas a TraceListener classe.

(Herdado de TraceListener)
Flush()

Limpa o fluxo subjacente que escreve para o ficheiro de registo atual.

GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetLifetimeService()

Recupera o objeto de serviço de tempo de vida atual que controla a política de vida útil neste caso.

(Herdado de MarshalByRefObject)
GetSupportedAttributes()

Obtém os atributos de configuração XML personalizados suportados pelo ouvinte de traços.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InitializeLifetimeService()

Obtém-se um objeto de serviço vitalício para controlar a apólice vitalícia neste caso.

(Herdado de MarshalByRefObject)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto atual MarshalByRefObject .

(Herdado de MarshalByRefObject)
ToString()

Devolve uma cadeia que representa o objeto atual.

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

Escreve informação de rastreio, um objeto de dados e informações de eventos no ficheiro de saída ou fluxo.

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

Escreve informação de traço, um array de objetos de dados e informações de eventos no ficheiro de saída ou fluxo.

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

Escreve informação de traço, um array formatado de objetos e informação de eventos no ficheiro ou fluxo de saída.

TraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

Escreve informação de rastreio, uma mensagem e informação de eventos para o ficheiro de saída ou fluxo.

TraceEvent(TraceEventCache, String, TraceEventType, Int32)

Escreve informações de rastreio e evento para a saída específica do ouvinte.

(Herdado de TraceListener)
TraceTransfer(TraceEventCache, String, Int32, String, Guid)

Escreve informação de rastreio, uma mensagem, uma identidade de atividade relacionada e informações de eventos para a saída específica do ouvinte.

(Herdado de TraceListener)
Write(Object, String)

Escreve um nome de categoria e o valor do método do objeto ToString() para o ouvinte que crias quando implementas a TraceListener classe.

(Herdado de TraceListener)
Write(Object)

Escreve o valor do método do objeto ToString() para o ouvinte que crias quando implementas a TraceListener classe.

(Herdado de TraceListener)
Write(String, String)

Escreve um nome de categoria e uma mensagem para o ouvinte que crias quando implementas a TraceListener classe.

(Herdado de TraceListener)
Write(String)

Escreve uma mensagem literal para o disco, sem qualquer informação adicional de contexto.

WriteIndent()

Escreve o indentamento para o ouvinte que crias quando implementas esta classe, e redefine a NeedIndent propriedade para false.

(Herdado de TraceListener)
WriteLine(Object, String)

Escreve um nome de categoria e o valor do método do objeto ToString() para o ouvinte que crias quando implementas a TraceListener classe, seguido de um terminador de linha.

(Herdado de TraceListener)
WriteLine(Object)

Escreve o valor do método do ToString() objeto para o ouvinte que crias quando implementas a TraceListener classe, seguido de um terminador de linha.

(Herdado de TraceListener)
WriteLine(String, String)

Escreve um nome de categoria e uma mensagem para o ouvinte que crias quando implementas a TraceListener classe, seguido de um terminador de linha.

(Herdado de TraceListener)
WriteLine(String)

Escreve uma mensagem literal no disco, seguida do terminador de linha atual, sem qualquer informação adicional de contexto.

Aplica-se a

Ver também