Estoy tratando de obtener una lectura precisa de mi CPU usada (en porcentaje) de top
. Este es el comando que estoy ejecutando para probar:
top -n1 | awk '/Cpu\(s\):/ {print $2}'
Esto devuelve:
10.7%us,
Cuál es la pieza de datos adecuada que quiero. Sin embargo, cada vez que ejecuto el comando obtengo el mismo resultado, aunque estoy aplicando diferentes cargas en mi sistema (y sin mencionar que htop
me dice que mi uso es diferente). Parece que cada vez que comienzo top
, el uso de mi CPU es el mismo. Solo después de un par de cuadros me da los valores adecuados.
No parece que pueda analizar la salida de top de esta manera, así que estoy buscando otras aplicaciones confiables que me den una lectura precisa del shell. Realmente me gusta cómo htop
puede darme una lectura por núcleo.
Lo he intentado iostat
y mpstat
parece que dan valores inexactos y "lentos para cambiar".
fuente
Respuestas:
Yo uso este script (de este hilo en los tableros de Arch ):
fuente
Mira sar , también. Las implementaciones pueden variar ampliamente de nix a nix, pero deberían proporcionarle estadísticas básicas del sistema, en instantáneas dadas. No estoy seguro de cómo precisa los valores están en el punto en que se inicia por primera vez el mando, pero es posible jugar un poco para ver cómo se compara con
top
,iostat
, etc.El resultado se basa en columnas, como top, por lo que debería poder canalizar el resultado
awk
ocut
manipular los resultados.fuente
sar
antes con resultados mixtos. Voy a ir con la respuesta de @ jasonwryan aquí porque puedo modificarla fácilmente para representar el uso con mis dos núcleos de CPU.¿Has mirado
collectl
? Es útil porque puede adaptar la salida a sus necesidades. Ver: http://collectl.sourceforge.net/fuente
Lo que encontré es similar a la persona que hizo la pregunta anterior, al menos en CentOS 6. Si ejecuto top en modo por lotes para solo una iteración, parece reunir la misma cifra, casi como si su tendencia es comenzar con lo que recuerda por última vez la visualización. Parece que Top necesita acumular al menos un par de cifras para obtener deltas y obtener porcentajes correctos. Después de probar más de 10 iteraciones, descubrí que la segunda figura que apareció mostró suficiente diferenciación en cada ejecución. Entonces, es bastante fácil obtener esta línea a través de
Me gusta incorporar esto con tiempo de actividad para la carga y un filtro grep de procesos seleccionados de ps, como las consultas de postgres. Un monitor muy simple se puede expresar con el alias:
fuente