System.Diagnostics Namespace

Fornece classes que permitem interagir com processos do sistema, logs de eventos e contadores de desempenho.

Classes

Nome Description
BooleanSwitch

Fornece um interruptor simples de ativação/desativação que controla a saída de depuração e rastreamento.

ConditionalAttribute

Indica a compiladores que um atributo ou chamada de método deve ser ignorado a menos que um símbolo de compilação condicional especificado seja definido.

ConsoleTraceListener

Direciona a saída de rastreamento ou depuração para a saída padrão ou para o fluxo de erro padrão.

CorrelationManager

Correlaciona rastreamentos que fazem parte de uma transação lógica.

CounterCreationData

Define o tipo de contador, o nome e a cadeia de caracteres de Ajuda para um contador personalizado.

CounterCreationDataCollection

Fornece uma coleção fortemente tipada de CounterCreationData objetos.

CounterSampleCalculator

Fornece um conjunto de funções de utilitário para interpretar dados de contador de desempenho.

DataReceivedEventArgs

Fornece dados para os eventos OutputDataReceived e ErrorDataReceived.

Debug

Fornece um conjunto de métodos e propriedades que ajudam a depurar seu código.

DebuggableAttribute

Modifica a geração de código para depuração JIT (just-in-time) do runtime. Essa classe não pode ser herdada.

Debugger

Habilita a comunicação com um depurador. Essa classe não pode ser herdada.

DebuggerBrowsableAttribute

Determina se e como um membro é exibido nas janelas de variáveis do depurador. Essa classe não pode ser herdada.

DebuggerDisplayAttribute

Determina como uma classe ou campo é exibido nas janelas de variáveis do depurador.

DebuggerHiddenAttribute

Especifica o DebuggerHiddenAttribute. Essa classe não pode ser herdada.

DebuggerNonUserCodeAttribute

Identifica um tipo ou membro que não faz parte do código de usuário para um aplicativo.

DebuggerStepperBoundaryAttribute

Indica que o código que segue o atributo deve ser executado no modo de execução, não em etapas.

DebuggerStepThroughAttribute

Instrui o depurador a percorrer o código em vez de entrar no código. Essa classe não pode ser herdada.

DebuggerTypeProxyAttribute

Especifica o proxy de exibição para um tipo.

DebuggerVisualizerAttribute

Especifica que o tipo tem um visualizador. Essa classe não pode ser herdada.

DefaultTraceListener

Fornece os métodos de saída padrão e o comportamento do rastreamento.

DelimitedListTraceListener

Direciona a saída de rastreamento ou de depuração para um TextWriter, como um StreamWriter, ou para um fluxo, como um FileStream.

DiagnosticsConfigurationHandler

Manipula a seção de diagnóstico de arquivos de configuração.

EntryWrittenEventArgs

Fornece dados para o evento EntryWritten.

EventInstance

Representa informações neutras em idioma para uma entrada de log de eventos.

EventLog

Fornece interação com Windows logs de eventos.

EventLogEntry

Encapsula um único registro no log de eventos. Essa classe não pode ser herdada.

EventLogEntryCollection

Define o tamanho e os enumeradores para uma coleção de EventLogEntry instâncias.

EventLogInstaller

Permite que você instale e configure um log de eventos do qual seu aplicativo lê ou grava ao executar.

EventLogPermission

Controla as permissões de acesso ao código para registro em log de eventos.

EventLogPermissionAttribute

Permite verificações de permissão declarativa para registro em log de eventos.

EventLogPermissionEntry

Define a menor unidade de uma permissão de segurança de acesso de código definida para um EventLog.

EventLogPermissionEntryCollection

Contém uma coleção fortemente tipada de EventLogPermissionEntry objetos.

EventLogTraceListener

Fornece um ouvinte simples que direciona a saída de rastreamento ou depuração para um EventLog.

EventSchemaTraceListener

Direciona a saída de rastreamento ou depuração de eventos de ponta a ponta para um arquivo de log compatível com esquema codificado em XML.

EventSourceCreationData

Representa as configurações usadas para criar uma fonte de log de eventos no computador local ou em um computador remoto.

EventTypeFilter

Indica se um ouvinte deve rastrear com base no tipo de evento.

FileVersionInfo

Fornece informações de versão para um arquivo físico no disco.

InstanceData

Contém dados de instância associados a um exemplo de contador de desempenho.

InstanceDataCollection

Fornece uma coleção fortemente tipada de InstanceData objetos.

InstanceDataCollectionCollection

Fornece uma coleção fortemente tipada de InstanceDataCollection objetos.

MonitoringDescriptionAttribute

Especifica uma descrição de uma propriedade ou evento.

PerformanceCounter

Representa um componente do contador de desempenho NT Windows.

PerformanceCounterCategory

Representa um objeto de desempenho, que define uma categoria de contadores de desempenho.

PerformanceCounterInstaller

Especifica um instalador para o PerformanceCounter componente.

PerformanceCounterManager

Prepara dados de desempenho para o performance.dll que o sistema carrega ao trabalhar com contadores de desempenho.

PerformanceCounterPermission

Permite o controle de permissões de acesso de código para PerformanceCounter.

PerformanceCounterPermissionAttribute

Permite verificações de permissão do contador de desempenho declarativo.

PerformanceCounterPermissionEntry

Define a menor unidade de uma permissão de segurança de acesso de código definida para um PerformanceCounter.

PerformanceCounterPermissionEntryCollection

Contém uma coleção fortemente tipada de PerformanceCounterPermissionEntry objetos.

PresentationTraceSources

Fornece suporte de rastreamento de depuração direcionado especificamente para aplicativos do WPF (Windows Presentation Foundation).

Process

Fornece acesso a processos locais e remotos e permite que você inicie e interrompa os processos do sistema local.

ProcessModule

Representa um arquivo .dll ou .exe que é carregado em um processo específico.

ProcessModuleCollection

Fornece uma coleção fortemente tipada de ProcessModule objetos.

ProcessStartInfo

Especifica um conjunto de valores usados quando você inicia um processo.

ProcessThread

Representa um thread de processo do sistema operacional.

ProcessThreadCollection

Fornece uma coleção fortemente tipada de ProcessThread objetos.

SourceFilter

Indica se um ouvinte deve rastrear uma mensagem com base na fonte de um rastreamento.

SourceSwitch

Fornece uma opção em vários níveis para controlar o rastreamento e depurar a saída sem recompilar o código.

StackFrame

Fornece informações sobre um StackFrame, que representa uma chamada de função na pilha de chamadas para o thread atual.

StackFrameExtensions

Fornece métodos de extensão para a StackFrame classe, que representa uma chamada de função na pilha de chamadas para o thread atual.

StackTrace

Representa um rastreamento da pilha, que é uma coleção ordenada de um ou mais quadros da pilha.

Stopwatch

Fornece um conjunto de métodos e propriedades que você pode usar para medir com precisão o tempo decorrido.

Switch

Fornece uma classe base abstrata para criar novos comutadores de rastreamento e depuração.

SwitchAttribute

Identifica um comutador usado em um assembly, classe ou membro.

SwitchLevelAttribute

Identifica o tipo de nível de um interruptor.

TextWriterTraceListener

Direciona a saída de rastreamento ou depuração para um ou para um TextWriterStream, como FileStream.

Trace

Fornece um conjunto de métodos e propriedades que ajudam a rastrear a execução do código. Essa classe não pode ser herdada.

TraceEventCache

Fornece dados de evento de rastreamento específicos para um thread e um processo.

TraceFilter

Fornece a classe base para implementações de filtro de rastreamento.

TraceListener

Fornece a abstract classe base para os ouvintes que monitoram a saída de rastreamento e depuração.

TraceListenerCollection

Fornece uma lista de TraceListener objetos thread-safe.

TraceSource

Fornece um conjunto de métodos e propriedades que permitem que os aplicativos rastreiem a execução do código e associem mensagens de rastreamento à origem.

TraceSwitch

Fornece uma opção em vários níveis para controlar o rastreamento e depurar a saída sem recompilar o código.

UnescapedXmlDiagnosticData

Fornece dados XML sem escape para o registro em log de dados de rastreamento fornecidos pelo usuário.

XmlWriterTraceListener

Direciona a saída de rastreamento ou depuração como dados codificados em XML para um ou para um TextWriterStream, como um FileStream.

Estruturas

Nome Description
CounterSample

Define uma estrutura que contém os dados brutos de um contador de desempenho.

Interfaces

Nome Description
ICollectData

Prepara dados de desempenho para a DLL de desempenho que o sistema carrega ao trabalhar com contadores de desempenho.

Enumerações

Nome Description
DebuggableAttribute.DebuggingModes

Especifica o modo de depuração para o compilador JIT (just-in-time).

DebuggerBrowsableState

Fornece instruções de exibição para o depurador.

EventLogEntryType

Especifica o tipo de evento de uma entrada de log de eventos.

EventLogPermissionAccess

Define os níveis de acesso usados por classes de permissão EventLog.

OverflowAction

Especifica como lidar com entradas em um log de eventos que atingiu seu tamanho máximo de arquivo.

PerformanceCounterCategoryType

Indica se a categoria do contador de desempenho pode ter várias instâncias.

PerformanceCounterInstanceLifetime

Especifica o tempo de vida de uma instância de contador de desempenho.

PerformanceCounterPermissionAccess

Define os níveis de acesso usados por classes de permissão PerformanceCounter.

PerformanceCounterType

Especifica tipos de contador de desempenho que são mapeados diretamente para tipos nativos.

PresentationTraceLevel

Descreve o nível de detalhes a ser rastreado sobre um objeto específico.

ProcessPriorityClass

Indica a prioridade que o sistema associa a um processo. Esse valor, juntamente com o valor de prioridade de cada thread do processo, determina o nível de prioridade base de cada thread.

ProcessWindowStyle

Especificada como uma nova janela deve aparecer quando o sistema inicia um processo.

SourceLevels

Especifica os níveis de mensagens de rastreamento filtradas pelo comutador de origem e pelo filtro de tipo de evento.

ThreadPriorityLevel

Especifica o nível de prioridade de um thread.

ThreadState

Especifica o estado de execução atual do thread.

ThreadWaitReason

Especifica o motivo pelo qual um thread está aguardando.

TraceEventType

Identifica o tipo de evento que causou o rastreamento.

TraceLevel

Especifica quais mensagens serão geradas para as classes Debug, Trace e TraceSwitch.

TraceLogRetentionOption

Especifica a estrutura de arquivos que será usada para o log de EventSchemaTraceListener.

TraceOptions

Especifica as opções de dados de rastreamento a serem gravadas na saída do rastreamento.

Delegados

Nome Description
DataReceivedEventHandler

Representa o método que manipulará o OutputDataReceived evento ou ErrorDataReceived evento de um Process.

EntryWrittenEventHandler

Representa o método que manipulará o EntryWritten evento de um EventLog.

Comentários

  • O EventLog componente fornece funcionalidade para gravar em logs de eventos, ler entradas de log de eventos e criar e excluir logs de eventos e fontes de eventos na rede. O EntryWrittenEventHandler fornece uma maneira de interagir com os logs de eventos de forma assíncrona. As classes de suporte fornecem acesso a controles mais detalhados, incluindo: restrições de permissão, a capacidade de especificar tipos de log de eventos (o que controla o tipo de dados padrão gravados em uma entrada de log de eventos) e percorrer coleções de entradas de log de eventos. Para obter mais informações sobre essas tarefas, consulte as classes e EventLogEntryCollection .EventLogPermissionEventLogEntryType

  • A Process classe fornece funcionalidade para monitorar os processos do sistema em toda a rede e iniciar e parar processos do sistema local. Além de recuperar listas de processos em execução (especificando o computador, o nome do processo ou a ID do processo) ou exibindo informações sobre o processo que atualmente tem acesso ao processador, você pode obter conhecimento detalhado de threads de processo e módulos por meio da Process própria classe e interagindo com as classes e ProcessModule com elasProcessThread. A ProcessStartInfo classe permite que você especifique uma variedade de elementos com os quais iniciar um novo processo, como fluxos de entrada, saída e erro, diretórios de trabalho e verbos e argumentos de linha de comando. Isso permite um controle satisfatório sobre o comportamento dos seus processos. Outras classes relacionadas permitem especificar o estilo da janela, a prioridade de processos e threads e interagir com coleções de threads e módulos.

  • A PerformanceCounter classe permite que você monitore o desempenho do sistema, enquanto a PerformanceCounterCategory classe fornece uma maneira de criar novos contadores e categorias personalizados. Você pode gravar nos contadores personalizados locais e ler dados de contadores locais e remotos (do sistema e personalizados). Você pode amostrar contadores usando a PerformanceCounter classe e calcular os resultados de exemplos sucessivos de contador de desempenho usando a CounterSample classe. A CounterCreationData classe permite que você crie vários contadores em uma categoria e especifique seus tipos. Outras classes associadas ao componente contador de desempenho fornecem acesso a coleções de contadores, permissão de contador e tipos de contadores.

O System.Diagnostics namespace também fornece classes que permitem depurar seu aplicativo e rastrear a execução do código. Para obter mais informações, consulte as classes Trace e Debug.