Partilhar via


Sobre o Rastreamento de Eventos para Drivers

Rastreamento de eventos definido

O ETW (Rastreamento de Eventos para Windows) é um mecanismo eficiente e eficaz para rastrear e registrar eventos que são gerados por aplicativos do modo de usuário e drivers no modo kernel. O ETW consiste em três componentes:

Termo Descrição

Provedores

Aplicativos ou componentes que geram instrumentação de rastreamento de eventos.

Controladores

Aplicativos que iniciam, param e configuram sessões de rastreamento de eventos.

Consumidores

Aplicativos que recebem sessões de rastreamento de eventos (em tempo real) ou de um arquivo.

A API de Kernel-Mode do ETW

A API (interface de programação de aplicativo) do ETW fornece um conjunto de funções que estão disponíveis para drivers e componentes do modo kernel. O Rastreamento de Eventos WMI e o Rastreamento de Software WPP usam ETW. Os desenvolvedores de driver podem usar essas funções para registrar o driver como um provedor ETW. Os provedores de ETW podem gerar eventos e publicá-los no Log de Eventos do Windows ou podem gravar seus eventos em uma sessão ETW, que é gravada em um arquivo de rastreamento ou entregue ao consumidor em tempo real. Os eventos são entidades que descrevem ocorrências interessantes dentro do sistema e são definidos por um conjunto de atributos determinados pelos provedores ETW.

O ETW é implementado no sistema operacional Windows e fornece aos desenvolvedores um conjunto rápido, confiável e versátil de recursos de rastreamento de eventos com muito pouco impacto no desempenho. Você pode habilitar ou desabilitar dinamicamente o rastreamento sem reinicializar o computador ou recarregar seu aplicativo ou driver. Ao contrário das instruções de depuração que você adiciona ao código durante o desenvolvimento, você pode usar o ETW em seu código de produção.

Quando usar o rastreamento de eventos

Use a API do modo kernel etw se você quiser publicar eventos que podem ser consumidos por aplicativos interessados em eventos administrativos, operacionais e analíticos, além do rastreamento detalhado que você pode exigir durante o desenvolvimento. Use o Rastreamento de Software WPP se você estiver interessado em coletar principalmente dados de rastreamento para fins de desenvolvimento e depuração.