w10 servicios rendimiento recursos pueden monitorización monitoreo estos control contadores consola como agregar abrir performance performancecounter etw

performance - servicios - monitoreo windows server 2008



Contador de rendimiento vs ETW (2)

Los contadores de rendimiento y ETW son tecnologías distintas. Los contadores de rendimiento no están expuestos a través de ETW.

La diferencia básica: los contadores de rendimiento proporcionan métricas de alto nivel sobre el comportamiento del sistema (piense que los temporizadores y los bytes se leen y los objetos asignados), mientras que ETW es un servicio de rastreo y registro de diagnóstico (piense en los mensajes Debug.WriteLine , pero más rico y más estructurado).

Actualmente, tanto ETW como los contadores de rendimiento tienen soporte completo de Windows, y como desarrollador, puede escribir código para producir y consumir datos para ambas tecnologías.

Contadores de rendimiento

Los contadores de rendimiento , también conocidos como contadores PDH (Performance Data Helper), son métricas numéricas simples que le brindan un resumen de alto nivel de cómo se está comportando un sistema en particular. Por ejemplo, % Processor Time es un contador de rendimiento que le dice cuánto tiempo del procesador se está utilizando para ejecutar el código de modo de usuario. Como un ejemplo más complejo, el # of Methods Jitted en la categoría .NET CLR Jit le indica cuántos métodos .NET se compilaron con JIT desde el inicio de una aplicación.

Los contadores de rendimiento generalmente se usan para monitorear el estado del sistema y para diagnosticar problemas de rendimiento específicos. Son un buen indicador de problemas cuando algo va muy mal, pero no le dan muchos detalles sobre por qué ocurre un problema en particular.

Para ver los contadores de rendimiento de Windows, simplemente puede ejecutar perfmon . En Vista +, es posible que deba hacer clic en el nodo "Monitor de rendimiento" para ver el gráfico del contador. Para acceder a los contadores de rendimiento mediante programación, consulte la clase System.Diagnostics.PerformanceCounter en .NET o la biblioteca PDH para el código nativo.

Seguimiento de eventos para Windows (ETW)

ETW es un sistema de rastreo integrado en Windows. Esencialmente, cualquier componente (p. Ej., Una aplicación de usuario, o incluso el propio kernel de Windows) puede enviar información de seguimiento de diagnóstico sobre eventos específicos que ocurren y que preocupan al componente. Por ejemplo, el kernel envía eventos ETW cuando se inicia y detiene un proceso, cuando se carga y descarga una imagen (por ejemplo, DLL), cuando se crea o destruye un hilo, o incluso cuando un hilo realiza un cambio de contexto. Los datos registrados están en un formato serializado que el componente describe en otro lugar, lo que permite a las herramientas de diagnóstico leer y comprender los eventos de ETW registrados durante una sesión. Vea here un diagrama de cajas y líneas de cómo funciona todo junto.

ETW está destinado a ser rápido y no debe afectar significativamente el rendimiento del sistema cuando el registro no está habilitado. A partir de Vista, ETW es generalizado en Windows y está diseñado para que lo utilicen los desarrolladores de aplicaciones (es decir, específicamente, su aplicación puede ser un proveedor de ETW que registre eventos). ETW es la base para el Registro de eventos, y puede ser utilizado por perfiladores de rendimiento, depuradores o monitores del sistema.

Vea mi otra publicación SO here para ver algunos recursos sobre la interfaz con ETW.

¿Los contadores de rendimiento son parte de ETW? Si no, ¿cuál es la diferencia entre los dos?


Parece que, a partir de este documento que comienza en Vista +, los contadores de rendimiento tienen una Fachada de ETW para que puedan consumirse exactamente de la misma manera que ETW.

La nueva biblioteca de contador de rendimiento (PERFLIB versión 2.0) incluida con Windows Vista® ofrece una serie de ventajas para el desarrollador, que incluyen:

Un mecanismo estándar de comunicación entre procesos (IPC) entre un proveedor y un consumidor que se basa en la notificación del Seguimiento de eventos para Windows (ETW) y que resulta en un desarrollo simplificado y un código más uniforme y confiable.