GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo registro el uso de la CPU por proceso?

Solución 1:

Podría intentar hacer algo como esto:

while true; do ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10 >> logfile.txt; printf "\n" >> logfile.txt; sleep 3; done

eso le mostraría los diez procesos principales en términos de uso de CPU. Puede cambiar la cantidad de procesos que se muestran cambiando el 10 en "head -10" a un número diferente, y la frecuencia con la que se actualiza cambiando el 3 en "sleep 3" o eliminando la parte "sleep 3" por completo.

Solución 2:

Echa un vistazo en la parte superior, escribirá un registro binario de casi todo lo que posiblemente quieras y luego puedes usar una interfaz gráfica de usuario superior para revisar los intervalos de tiempo del día (el valor predeterminado es tomar los datos cada 5 minutos). http://www.atcomputing.nl/Tools/atop/

Solución 3:

Creo que munin es una de las buenas herramientas de monitoreo que lo ayudará a obtener información sobre las actividades de su caja. Además, hay algunas herramientas de línea de comando como sar, iostat, ps, top para tal uso.

Solución 4:

Las otras respuestas solo le han mostrado cómo puede ver lo que está sucediendo actualmente, lo que no ayuda si el sistema se ha reiniciado.

Si quieres que esta información quede registrada para la posteridad (o facturación, o cualquier otro uso que también puedas tener), lo que quieres es contabilidad de procesos.

Aquí hay un CÓMO que encontré, pero seré honesto:ha pasado una década desde que usé la contabilidad de procesos.

http://tldp.org/HOWTO/Process-Accounting/

Solución 5:

Un enfoque más fácil de usar para la solución de Shawn para el monitoreo casi en tiempo real:

while true; do clear; ps -eo pcpu,pmem,pid,user,args --sort=-pcpu c|head -20; sleep 1; done

Esto proporcionará una vista estática de los 20 procesos principales que se actualizarán cada 1 segundo. La opción "c" en el comando ps imprimirá el nombre del ejecutable del proceso en lugar del comando args completo. Puede omitir esta opción si necesita toda la información del comando en su lugar. También se agregó la columna % de uso de memoria.


Linux
  1. Linux:¿cómo limitar un proceso a un núcleo de CPU en Linux?

  2. ¿Recuperar el uso de la CPU y el uso de la memoria de un solo proceso en Linux?

  3. ¿Cómo calcular el uso de CPU de un proceso por PID en Linux desde C?

  4. Cómo obtener el uso total de la CPU en Linux usando C++

  5. Limitar el uso de memoria/CPU de proceso en Linux

Cómo mostrar el uso de la CPU desde la línea de comandos

Cómo obtener el uso de la CPU de un solo proceso en Linux

Cómo verificar el uso o la utilización de la CPU de Linux

Cómo matar un proceso <difunto> con el padre 1

¿Cómo comprobar la utilización de E/S de disco por proceso?

¿Averigüe qué proceso de apache de alto uso de CPU está haciendo realmente?