FileLogTraceListener Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece um ouvinte simples que direciona a saída de log 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
- 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 pode ser adicionada às Debug.Listeners coleções ou Trace.Listeners à saída de redirecionamento do registro em log para um arquivo de FileLogTraceListener 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 Passo a passo: alterando o local em que My.Application.Log grava informações.
Os principais recursos dessa classe são:
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
baseNameparte é o nome de log fundamental, especificado pela BaseFileName propriedade. - A
dateStampparte tem o formato "YYYY-MM-DD" e é mostrada quando LogFileCreationSchedule é Daily ou Weekly. - Se mais de um arquivo de log for necessário com o mesmo
baseNamee, aversionparte, um positivoInteger, for adicionado aodateStampnome do arquivo.
- A
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.
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.
Log-File Local
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 doLog-File
- O nome base do arquivo de log é especificado pela BaseFileName propriedade.
- O nome do arquivo de log atual pode ser lido da 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 a criação de 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 consuma 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 gratuitos.
Configurações de saída doLog-File
- 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 em uma mensagem de log.
- A Encoding propriedade especifica a codificação a ser usada ao criar um novo arquivo de log.
Saída doLog-File
- Os TraceData métodos e os métodos TraceEvent gravam mensagens no arquivo de log. Esses métodos verificam 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 no momento 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:DEBUGsinalizador à linha de comando do compilador ao compilar seu código ou adicione#define DEBUGà parte superior do arquivo. No Visual Basic, adicione o/d:DEBUG=Truesinalizador à linha de comando do compilador. - Para habilitar o rastreamento em C#, adicione o
/d:TRACEsinalizador à linha de comando do compilador ao compilar seu código ou adicione#define TRACEà parte superior do arquivo. No Visual Basic, adicione o/d:TRACE=Truesinalizador à linha de comando do compilador.
Em aplicativos do .NET Framework, você pode definir o nível do ouvinte editando o arquivo de configuração para seu 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
| Nome | 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
| Nome | Description |
|---|---|
| Append |
Determina se a saída deve ser acrescentada ao arquivo atual ou gravá-la em um arquivo novo ou existente. |
| Attributes |
Obtém os atributos do ouvinte de rastreamento personalizado definidos no arquivo de configuração do aplicativo. (Herdado de TraceListener) |
| AutoFlush |
Indica se a gravação no fluxo do arquivo 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 do arquivo de log. |
| CustomLocation |
Obtém ou define o diretório do arquivo de log quando a Location propriedade é definida como Custom. |
| Delimiter |
Obtém ou define o delimitador usado para delimitar campos em uma mensagem de log. |
| DiskSpaceExhaustedBehavior |
Determina o que fazer ao gravar no arquivo de log e há menos espaço livre em disco disponível do que o ReserveDiskSpace especificado pela propriedade. |
| Encoding |
Obtém ou define a codificação a ser 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 do arquivo de log completo atual. |
| IncludeHostName |
Indica se o nome do host do computador de log deve ou não 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 deve ser incluída nos nomes dos arquivos de log. |
| MaxFileSize |
Obtém ou define o tamanho máximo permitido do arquivo de log, em bytes. |
| Name |
Obtém ou define um nome para isso TraceListener. (Herdado de TraceListener) |
| NeedIndent |
Obtém ou define um valor que indica se deve recuar a saída. (Herdado de TraceListener) |
| ReserveDiskSpace |
Obtém ou define a quantidade de espaço livre em disco, em bytes, necessária para 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
| Nome | Description |
|---|---|
| Close() |
Fecha o fluxo subjacente do arquivo de log atual e libera todos 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, String) |
Emite uma mensagem de erro e uma mensagem de erro detalhada para o ouvinte que você cria ao implementar a TraceListener classe. (Herdado de TraceListener) |
| Fail(String) |
Emite uma mensagem de erro para o ouvinte que você cria ao implementar a TraceListener classe. (Herdado de TraceListener) |
| Flush() |
Libera o fluxo subjacente que é gravado 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 tempo de vida para essa instância. (Herdado de MarshalByRefObject) |
| GetSupportedAttributes() |
Obtém os atributos de configuração XML personalizados compatíveis com o 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 dessa instância. (Herdado de MarshalByRefObject) |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| MemberwiseClone(Boolean) |
Cria uma cópia superficial do objeto atual MarshalByRefObject . (Herdado de MarshalByRefObject) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
| TraceData(TraceEventCache, String, TraceEventType, Int32, Object) |
Grava informações de rastreamento, um objeto de dados e informações de evento no arquivo ou fluxo de saída. |
| TraceData(TraceEventCache, String, TraceEventType, Int32, Object[]) |
Grava informações de rastreamento, uma matriz de objetos de dados e informações de evento no arquivo ou fluxo de saída. |
| TraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[]) |
Grava informações de rastreamento, uma matriz formatada de objetos e informações de evento no arquivo ou fluxo de saída. |
| TraceEvent(TraceEventCache, String, TraceEventType, Int32, String) |
Grava informações de rastreamento, uma mensagem e informações de evento no arquivo ou fluxo de saída. |
| TraceEvent(TraceEventCache, String, TraceEventType, Int32) |
Grava informações de rastreamento e evento na saída específica do ouvinte. (Herdado de TraceListener) |
| TraceTransfer(TraceEventCache, String, Int32, String, Guid) |
Grava informações de rastreamento, uma mensagem, uma identidade de atividade relacionada e informações de evento para a saída específica do ouvinte. (Herdado de TraceListener) |
| Write(Object, String) |
Grava um nome de categoria e o valor do método do ToString() objeto no ouvinte que você cria ao implementar a TraceListener classe. (Herdado de TraceListener) |
| Write(Object) |
Grava o valor do método do ToString() objeto no ouvinte que você cria ao implementar a TraceListener classe. (Herdado de TraceListener) |
| Write(String, String) |
Grava um nome de categoria e uma mensagem no ouvinte que você cria ao implementar a TraceListener classe. (Herdado de TraceListener) |
| Write(String) |
Grava uma mensagem verbatim no disco, sem nenhuma informação de contexto adicional. |
| WriteIndent() |
Grava o recuo no ouvinte que você cria ao implementar essa classe e redefine a NeedIndent propriedade para |
| WriteLine(Object, String) |
Grava um nome de categoria e o valor do método do ToString() objeto no ouvinte que você cria quando implementa a TraceListener classe, seguido por um terminador de linha. (Herdado de TraceListener) |
| WriteLine(Object) |
Grava o valor do método do ToString() objeto no ouvinte que você cria quando implementa a TraceListener classe, seguido por um terminador de linha. (Herdado de TraceListener) |
| WriteLine(String, String) |
Grava um nome de categoria e uma mensagem para o ouvinte que você cria ao implementar a TraceListener classe, seguido por um terminador de linha. (Herdado de TraceListener) |
| WriteLine(String) |
Grava uma mensagem verbatim no disco, seguida pelo terminador de linha atual, sem nenhuma informação de contexto adicional. |