October 19, 2024

Atop

atop — продвинутый интерактивный полноэкранный монитор производительности, написанный для Linux. Является аналогом top, но в отличие от него выводит только новые изменения об активных системных процессах. Позволяет контролировать загрузку ЦПУ, ОЗУ, HDD, компьютерной сети, а также распределение нагрузок по обрабатываемым процессам. Является удобным инструментом для администрирования системы.

Чтобы установить утилиту, выполните команду в терминале:

Debian-based:

apt install atop -y

RHEL-based:

yum install atop -y

Для того чтобы atop фиксировал состояние ежеминутно, отредактируем настройки:

Debian-based:

sed -i 's/LOGINTERVAL=600/LOGINTERVAL=60/g' /etc/default/atop

RHEL-based:

sed -i 's/LOGINTERVAL=600/LOGINTERVAL=60/g' /etc/sysconfig/atop

Для запуска мониторинга в реальном времени выполните простую команду в терминале:

atop
по-умолчанию без ключа -b лог будет открыт с временной отметки 00:00 от запрошенной даты

Также можно запустить утилиту с параметрами:

atop -r <date> -b <time>
atop -r 20241019 -b 1700

или:

atop -rb <date><time>
atop -rb 202410191700

Для удобства можно отсортировать данные нажав соответствующую клавишу на клавиатуре:

  • -m - сортировка процессов по памяти
  • -p - сортировка по нагрузке на процессор
  • -d - нагрузка на диск
  • -n - активность сетевых интерфейсов
  • -u - активность по пользователям
  • -v - подробная информация о процессах (пользователь, дата и время начала процесса)
  • -i - указание скорости обновления данных (по-умолчанию 10 сек.)
  • -g - сбросить настройки представления
  • -c - отобразить подробную информацию о процессе и пути до него
  • -t - перейти на следующую временную метку (вперед)
  • -SHIFT+t - вернуться на предыдущую временную метку (назад)
  • -h - выведет справку

Если на каждый день не создается отдельный лог, то скорее всего нет задания в cron на мягкий перезапуск службы atop.

Проверить наличие задания в cron:

ls -l /etc/cron.d/atop

Если его нет, то добавим выполнив команду в терминале:

cat > /etc/cron.d/atop <<EOF
# daily restart of atop at midnight
0 0 * * * root systemctl try-restart atop
EOF