¿Cómo puedo usar las herramientas atop y atopsar para obtener estadísticas históricas de uso de los procesos en mi instancia de Linux de EC2?

7 minutos de lectura
0

Quiero aprender a usar la herramienta atop para monitorear el uso histórico de recursos, como la CPU, la memoria y las E/S de disco, para los procesos que se ejecutan en mi instancia de Linux de Amazon EC2. Quiero recibir instrucciones sobre la instalación de atop y el análisis de sus archivos de registro.

Breve descripción

La herramienta atop es una herramienta de monitoreo del rendimiento que registra el uso histórico de los recursos para su posterior análisis. Esta herramienta también proporciona informes en tiempo real. Puede obtener el uso de la CPU, el consumo de memoria y la E/S de disco para cada proceso y subproceso. La herramienta atop permanece activa como servicio en segundo plano mientras registra las estadísticas. Esto permite un análisis del servidor a largo plazo; los datos se almacenan durante 28 días, de forma predeterminada.

Nota: Atop registra los datos solo después de su instalación. Los datos históricos de rendimiento no se pueden recuperar antes de la fecha de instalación de atop.

Resolución

Instalación de atop

Para obtener instrucciones de instalación, consulte ¿Cómo puedo configurar las herramientas de monitoreo de ATOP Monitoring y SAR para mi instancia de EC2 que ejecuta Amazon Linux, RHEL, CentOS o Ubuntu?

Creación de registros de los informes históricos de atop

La herramienta atop crea archivos de registro en /var/log/atop. Estos archivos se denominan con el siguiente formato: atop_ccyymmdd. Por ejemplo, atop_20210902 es el registro del 2 de septiembre de 2021.

Para acceder al archivo de registro, ejecute el siguiente comando:

atop -r /var/log/atop/atop_ccyymmdd

Sustituya atop_ccyymmdd por la fecha que desea revisar.

Consulte el siguiente ejemplo de comando y archivo de registro:

atop -r /var/log/atop/atop_20210902
ATOP - ip-172-20-139-91                2021/09/02  17:03:44                ----------------                 3h33m7s elapsed
PRC |  sys    6.51s  |  user   7.85s  |  #proc    103  |  #tslpi    81 |  #tslpu     0  |  #zombie    0  |  #exit      0  |
CPU |  sys     0%  |  user      3%  |  irq       0%  |  idle    197% |  wait      0%  |  ipc notavail  |  curscal   ?%  |
cpu |  sys     0%  |  user      1%  |  irq       0%  |  idle     98% |  cpu000 w  0%  |  ipc notavail  |  curscal   ?%  |
cpu |  sys     0%  |  user      1%  |  irq       0%  |  idle     98% |  cpu001 w  0%  |  ipc notavail  |  curscal   ?%  |

En este ejemplo de resultado, la primera instantánea registrada fue el 2021/09/02 17:03:44. Para pasar a la siguiente instantánea, pulse la tecla t (minúscula) del teclado. Para volver a la instantánea anterior, pulse la tecla T (mayúscula). Para analizar una franja horaria determinada, pulse la tecla b y, a continuación, escriba la fecha y la hora. La herramienta atop salta a la hora especificada en la variable Enter new time:

NET |  lo      ----  |  pcki       2  |  pcko       2  |  sp    0 Mbps |  si    0 Kbps  |  so    0 Kbps  |  erro       0  |
Enter new time (format [YYYYMMDD]hhmm):
  PID              TID              RDDSK              WRDSK             WCANCL              DSK             CMD        1/4

Para ver diferentes estadísticas, pulse la tecla de acceso directo designada. A continuación se muestran ejemplos de teclas de acceso directo:

  • g: Información general (predeterminada).
  • m: Detalles de la memoria.
  • d: Detalles del disco.
  • n: Detalles de la red. Esta tecla solo funciona con el módulo del kernel netatop instalado.
  • c: Línea de comandos completa por proceso.

Para ordenar la lista de procesos, utilice las siguientes teclas de acceso rápido:

  • C: Actividad de la CPU.
  • M: Consumo de memoria.
  • D: Actividad del disco.
  • N: Actividad de la red. Esta tecla solo funciona con el kernel netatop instalado.
  • A: El recurso del sistema más activo (modo automático).

Pulse la tecla h para ver la documentación de ayuda.

Creación de registros de los informes de atop durante un período de tiempo determinado

Para acceder al archivo de registro y extraer solo un período de tiempo determinado de los datos de rendimiento, ejecute el siguiente comando:

atop -r /var/log/atop/atop_ccyymmdd -b starttime -e endtime -M

Sustituya atop_ccyymmdd por la fecha que desea revisar. Sustituya starttime por la hora de inicio y endtime por la hora de finalización del período de rendimiento.

Por ejemplo, el siguiente comando devuelve los datos de rendimiento capturados en la memoria el 22 de abril de 2024 entre las 08:00 y las 08:10:

$ atop -r /var/log/atop/atop_20240422 -b 0800 -e 0810
            -M

Marcas que se utilizan en el ejemplo:

  • b: hora de inicio
  • e: hora de finalización
  • r: especificar archivo
  • M: memoria

Generación de informes de actividad del sistema con el comando atop

Utilice el comando atopsar para generar informes de actividad del sistema.

Si utiliza la marca -c, se genera un informe sobre el uso actual de la CPU del sistema. El siguiente ejemplo muestra dos resultados de este informe, cada uno con un segundo de diferencia:

$ atopsar -c 1 2
ip-172-20-139-91  4.14.238-182.422.amzn2.x86_64  #1 SMP Tue Jul 20 20:35:54 UTC 2021  x86_64  2021/09/02

-------------------------- analysis date: 2021/09/02 --------------------------

18:50:16  cpu  %usr %nice %sys %irq %softirq  %steal %guest  %wait %idle  _cpu_
18:50:17  all     0     0    0    0        0       0      0      0   200
            0     0     0    0    0        0       0      0      0   100
            1     0     0    0    0        0       0      0      0   100
18:50:18  all     0     0    0    0        0       0      0      0   200
            0     0     0    0    0        0       0      0      0   100
            1     0     0    0    0        0       0      0      0   100

El comando atopsar puede analizar los datos dentro de un período de tiempo específico. Por ejemplo, para generar todos los informes (-A) que comiencen a las 13:00 (-b) y terminen a las 13:35 (-e) del día en curso, ejecute el siguiente comando:

atopsar -A -b 13:00 -e 13:35

Para recuperar varios resultados, combine las marcas de atopsar en un solo comando. El siguiente comando de ejemplo consulta la utilización de la CPU, la carga del proceso o procesador y los procesos y subprocesos:

$ atopsar -cpP

Resultado del ejemplo:

ip-172-31-89-231 6.1.84-99.169.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Apr 8 19:19:48 UTC 2024 x86_64 2024/04/22

-------------------------- analysis date: 2024/04/22 --------------------------

07:59:27 cpu %usr %nice %sys %irq %softirq %steal %guest %wait %idle cpu
08:00:27 all 0 0 0 0 0 0 0 4 95
08:01:27 all 0 0 0 0 0 0 0 0 100
08:02:27 all 0 0 0 0 0 0 0 0 100
08:03:27 all 0 0 0 0 0 0 0 0 100

-------------------------- analysis date: 2024/04/22 --------------------------

07:59:27 pswch/s devintr/s clones/s loadavg1 loadavg5 loadavg15 load
08:00:27 203 70 1.07 0.13 0.29 0.14
08:01:27 53 31 0.07 0.05 0.23 0.13
08:02:27 59 31 0.87 0.02 0.19 0.12
08:03:27 68 35 0.22 0.00 0.15 0.10

-------------------------- analysis date: 2024/04/22 --------------------------

07:59:27 clones/s pexit/s curproc curzomb thrrun thrslpi thrslpu procthr
08:00:27 1.07 1.07 114 0 1 83 58
08:01:27 0.07 0.07 114 0 1 83 58
08:02:27 0.87 0.88 109 0 1 83 53
08:03:27 0.22 0.28 105 0 1 76 52

Para obtener una lista detallada de las marcas y valores que atop recupera y muestra, consulte atopsar en el sitio web de Linux.

Información relacionada

¿Por qué mi instancia de EC2 Linux deja de responder debido a la utilización excesiva de recursos?

A guide to atop command in Linux en el sitio web de DigitalOcean.

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año