Hace unos días observé que se generaban en cada arranque de mi Windows XP estos sucesos de LoadPerf en el registro Aplicación: 3011 (error), 3012 (error) y 1000 (información).
Tipo de suceso: Error
Origen del suceso: LoadPerf
Categoría del suceso: Ninguno
Id. suceso: 3012
Fecha: 26/09/2007
Hora: 18:43:47
Usuario: No disponible
Equipo: GABARDINO
Descripción:
Las cadenas de rendimiento en el valor de rendimiento del registro es incorrecto al procesar el proveedor de contador de extensión Performance. El valor BaseIndex del registro de rendimiento es el primer valor DWORD en la sección de datos, el valor LastCounter es el segundo valor DWORD en la sección de datos y el valor LastHelp es el tercer valor DWORD en la sección de datos.
Para obtener más información, vea el Centro de ayuda y soporte técnico en http://go.microsoft.com/fwlink/events.asp.
Datos:
0000: 37 07 00 00 00 00 00 00 7.......
0008: 00 00 00 00 ca 03 00 00 ....Ê...
Tipo de suceso: Error
Origen del suceso: LoadPerf
Categoría del suceso: Ninguno
Id. suceso: 3011
Fecha: 26/09/2007
Hora: 18:43:47
Usuario: No disponible
Equipo: GABARDINO
Descripción:
Error al descargar las cadenas de los contadores de rendimiento para el servicio WmiApRpl (WmiApRpl). El código de error es la primera sección de Datos en DWORD.
Para obtener más información, vea el Centro de ayuda y soporte técnico en http://go.microsoft.com/fwlink/events.asp.
Datos:
0000: f2 03 00 00 3b 07 00 00 ò...;...
Tipo de suceso: Información
Origen del suceso: LoadPerf
Categoría del suceso: Ninguno
Id. suceso: 1000
Fecha: 26/09/2007
Hora: 18:43:50
Usuario: No disponible
Equipo: GABARDINO
Descripción:
Se cargaron satisfactoriamente los contadores de rendimiento del servicio WmiApRpl (WmiApRpl). Los datos de registro contienen los nuevos valores de los índices asignados a este servicio.
Para obtener más información, vea el Centro de ayuda y soporte técnico en http://go.microsoft.com/fwlink/events.asp.
Datos:
0000: 0c 14 00 00 ....
Como no me gusta ver errores o advertencias generados durante el inicio el sistema, decidí investigar un poco.
Windows posee una infraestructura, por llamarla de algún modo, para producir o consumir métricas de rendimiento de aplicaciones, servicios, controladores, subsistemas y todo el equipo en general. La recogida de datos se lleva a cabo mediante proveedores de rendimiento, que no son más que DLLs especialmente diseñadas para ese propósito. (Windows Vista introduce un modelo nuevo de contadores de rendimiento, aunque mantiene el anterior por razones de compatibilidad.)
La consola de administración de rendimiento proporciona una interfaz gráfica para obtener muestras periódicas de diversos contadores en tiempo real, registrar su evolución y establecer alertas. Se puede acceder a esta consola desde la carpeta de Herramientas administrativas, o ejecutando directamente Perfmon.exe o Perfmon.msc.
De vuelta a los sucesos, EventID.Net resultó ser la primera fuente de información: LoadPerf 3012. Los comentarios hacen referencia a dos herramientas del sistema para cargar y eliminar en el registro de Windows la información de contadores de rendimiento asociados a un determinado componente del sistema: Lodctr y Unlodctr. También se menciona un artículo de la Knowledge Base de Microsoft al que se recurriría si fuera necesario reconstruir la lista de contadores de rendimiento. Las instrucciones se aplican a Windows 2000 en inglés. Para otras versiones e idiomas, el proceso tiene algunas variaciones.
How to manually rebuild Performance Counter Library values (KB300956)
El caso es que, haciendo pruebas tontas para averiguar cómo funcionaban las herramientas Lodctr y Unlodctr, acabé borrando todos los contadores de rendimiento. Cuando abrí el monitor del sistema en la consola de rendimiento y quise agregar un contador, la lista desplegable Objeto de rendimiento sólo mostraba puros números y las listas de contadores e instancias estaban completamente vacías. Además se generó un «chorro» de sucesos relacionados con índices de contadores y valores de registro inexistentes.
La resolución tomada, en el próximo capítulo.