Compartir a través de


Seguimiento de software de WPP

En esta sección se describe cómo usar el preprocesador de seguimiento de software de Windows (WPP) para realizar un seguimiento del funcionamiento de un componente de software (proveedor de seguimiento). Un proveedor de seguimiento puede ser uno de los siguientes:

  • Un controlador en modo kernel.

  • Un controlador, aplicación o biblioteca de vínculos dinámicos (DLL) en modo de usuario.

El seguimiento de software de WPP complementa y mejora el seguimiento de eventos WMI agregando formas de simplificar el seguimiento del funcionamiento del proveedor de seguimiento. Es un mecanismo eficaz para que el proveedor de seguimiento registre mensajes binarios en tiempo real. Los mensajes registrados se pueden convertir posteriormente en un seguimiento legible de la operación del proveedor de seguimiento.

¿Cuándo debe usar el rastreo de software de WPP?

El seguimiento de software de WPP está pensado principalmente para depurar código durante el desarrollo. Si desea publicar eventos que pueden consumir las aplicaciones interesadas en eventos ETW estructurados, además del seguimiento durante el desarrollo, use lo siguiente:

Para obtener más información, consulte ¿Cuándo debo usar el seguimiento de software de WPP o la API de seguimiento de eventos para Windows (ETW)?

El registro de mensajes con seguimiento de software de WPP es similar al uso de los servicios de registro de eventos de Windows. El controlador registra un identificador de mensaje y datos binarios sin formato en un archivo de registro. Posteriormente, un postprocesador convierte la información del archivo de registro en un formulario legible. Sin embargo, el seguimiento de software de WPP admite formatos de mensaje más capaces y flexibles que los que admiten los servicios de registro de eventos. Por ejemplo, el seguimiento de software de WPP tiene compatibilidad integrada con direcciones IP, GUID, identificadores de sistema, marcas de tiempo y otros tipos de datos útiles. Además, los usuarios pueden agregar tipos de datos personalizados relevantes para su aplicación.

Información general sobre el proceso de seguimiento de software de WPP

El proceso básico para agregar el seguimiento de software de WPP a un controlador o aplicación incluye los pasos siguientes. Si usa una de las plantillas de Visual Studio proporcionadas en WDK para crear un controlador WDF, gran parte del trabajo se realiza para usted.

  • Defina un GUID de control que identifique de forma única el controlador o la aplicación como proveedor de seguimiento. El proveedor especifica este GUID en su definición de la macro de WPP_CONTROL_GUIDS y en un archivo de control relacionado utilizado por Tracelog u otro controlador de seguimiento.

  • Agregue las directivas de preprocesador C relacionadas con WPP necesarias y las llamadas de macro de WPP a los archivos de origen del proveedor, tal como se describe en Agregar seguimiento de software de WPP a un controlador de Windows y en la referencia de seguimiento de software de WPP.

  • Modifique el proyecto de Visual Studio para ejecutar el preprocesador de WPP y compilar el controlador, tal como se describe en el paso 6 de Agregar seguimiento de software de WPP a un controlador de Windows. Puede consultar el preprocesador de WPP para obtener más opciones de tiempo de compilación.

  • Instale el controlador o el componente. Inicie una sesión de seguimiento y registre los mensajes de seguimiento. Use las herramientas para el seguimiento de software, como TraceView, Tracelog, Tracefmt y Tracepdb para configurar, iniciar y detener sesiones de seguimiento y mostrar y filtrar mensajes de seguimiento. Estas herramientas se incluyen en el Kit de controladores de Windows (WDK).

En esta sección

Nota El seguimiento de eventos para Windows (ETW) y WPP admiten la mayoría de los tipos de controladores en modo kernel y modo de usuario. Sin embargo, ETW y WPP usan tipos que no están disponibles para determinados tipos de controladores, como los controladores de miniport. Para determinar si se admite un tipo de controlador determinado, agregue macros de WPP básicas al controlador, como WPP_INIT_TRACING y WPP_CLEANUP. Si el código no se compila porque no se definen los tipos que se usan, ETW y WPP no pueden admitir el tipo de controlador.

Para obtener más información sobre ETW, consulte Seguimiento de eventos para Windows.

Nota Los proveedores de seguimiento de WPP solo se pueden habilitar mediante una sesión de seguimiento a la vez. Consulte Proveedores de WPP para obtener más información.

Para obtener información sobre las rutinas de soporte de la biblioteca WMI que admiten el seguimiento de software de WPP, consulte:

WmiQueryTraceInformation

WmiTraceMessage

WmiTraceMessageVa