Pandora FMS community forums

Full Version: Monitoreo de CPU en Windows
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Por lo que vi en la documentación, es posible monitorear la memoria libre de un sistema Windows, pero no he podido encontrar una forma de hacer eso con su carga de CPU. ¿Existe alguna forma? Estoy usando Pandora 1.2b2
Te he contestado en el foro general, pero como ejemplo, puedes utilizar:

[code:1]pslist -s -r 1 |findstr Idle >>CPU_load.txt[/code]

EDIT: En Windows XP existe el comando tasklist.exe. Puedes utilizarlo si tienes el servicio rpc habilitado.

y en el agente que construyas que ejecute:

[code:1]tail -1 CPU_load.txt |awk "{print $3}"[/code]

Con esto tienes el % de CPU libre, con lo cual, a menor valor, mayor carga de CPU.

Como ejemplo, una salida del comando anterior antes de ejecutar Skype y después:

99
45
67
99

=> La Carga de la CPU ha subido al 55% en el momento de ejecutar Skype, y luego ha vuelto a bajar.

Espero que te sirva.

Un saludo

Raúl
Voy a probar la última versión del SVN, como me dijiste en el foro en inglés. Gracias
Raúl: Hay una forma propia implementada en el agente, con un modulo propio. No hay que llamar a ningún comando especial ni nada. Esta es la forma correcta de monitorizar el CPU:

[code:1]
module_begin
module_name UsoCPU0
module_type generic_data
module_cpuusage 0
module_description Uso de la CPU#0
module_end
[/code]

Si se tienen varios CPUS, pues hay que añadir tantos módulos como cpus tengamos, cambiando 0 por el el número de cpu. Ejemplo:


[code:1]
module_begin
module_name UsoCPU0
module_type generic_data
module_cpuusage 0
module_description Uso de la CPU#0
module_end

module_begin
module_name UsoCPU1
module_type generic_data
module_cpuusage 1
module_description Uso de la CPU#1
module_end
[/code]

Ahora bien, este valor da el CPU usado (algo más lógico que el libre, creo yo) de los ultimos 5 segundos. Esta información la da el propio Windows a través de sus librerias.