System.Diagnostics Namespace
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 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 |
| 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.