Статистика нагрузки на сервер, atop
![]()
Команда atopsar — это встроенный анализатор логов atop, который позволит быстро найти проблему и смотреть лог в нужное вам время.
Основные ключи:
-b — с какого времени надо вывести лог
-e — до какого времени надо вывести лог
Общая нагрузка:
-d — нагрузка на каждый диск отдельно
-m — нагрузка на оперативную память и swap
-с — нагрузка на процессор, отдельно по каждому ядру
-p — количество процессов и тредов
-w — нагрузка на ipv4
-W — ошибки на ipv4
-i — нагрузка на интерфейс
Поиск отдельных процессов:
-O — top-3 процессов CPU
-G — top-3 процессов RAM
-D — top-3 процессов диск
-N — top-3 процессов сеть
Если вам этого недостаточно, можно посмотреть полный снимок нагрузки на сервер командой:
atop -r путь до лога , можно сразу указать временные рамки.
Например: atop -r /var/log/atop/atop_20190128 -b 09:35:01 -e 10:55:01
Откроется тот же atop, в котором видна вся нагрузка на сервере, где можно выставлять сортировку по процессам, но за только на нужное время. Чтобы открыть следующий снимок нагрузки, нажмите t , предыдущий снимок — T . Время снимка указано в первой строке посередине экрана. Больше информации в статье «Нагрузка на сервер: определение причин».
Пример: нагрузка на RAM с 09:35:01 до 10:55:01 28 января
# atopsar -r /var/log/atop/atop_20190128 -b 09:35:01 -e 10:55:01 -m

Нагрузка по сетевым интерфейсам
atopsar -r /var/log/atop/atop_20190128 -i -b 00:40:00 -e 01:30:00

Нагрузка на диски
atopsar -r /var/log/atop/atop_20190128 -d -b 01:10:00 -e 01:30:00
Статистика нагрузки на сервер, утилита Atop
Atop – это программа, которая позволяет делать мониторинг нагрузки на сервер. Она дает возможность непрерывно смотреть логи. Atop позволяет отмотать данные назад и увидеть какая была нагрузка в момент проблемы.
Утилита доступна во всех дистрибутивах линукс, она быстро устанавливается и не требует большое количества ресурсов. Стоит отметить, что работать с Atop можно только с помощью подключения по SHH.
Как пользоваться Atop
Чтобы делать мониторинг нагрузки на сервер утилитой atop, необходимо установить программу на сервер.
Инструкция по установке Atop для Ubuntu/Debian
Подключитесь к серверу с помощью терминала и выполните команду:
apt install atop -y
Для включения записи ежеминутного состояния сервера включите настройки командой:
sed -i ‘s/LOGINTERVAL=600/LOGINTERVAL=60/g’ /etc/default/atop
Инструкция по установке Atop для Centos
После подключения по SHH выполните команду:
yum install atop -y
Для ежеминутной записи состояния сервера вводим команду:
sed -i ‘s/LOGINTERVAL=600/LOGINTERVAL=60/g’ /etc/sysconfig/atop
Для запуска программы для Ubuntu/Debian/Centos выполните в терминале команду atop
Основные команды для Atop
В программе Atop экран делится на две части: в первой отображается информация о системе, во второй данные всех процессов системы.
С помощью клавиш на клавиатуре можно сортировать данные по различным параметрам:
m — по количеству занимаемой оперативной памяти
p — по величине нагрузки на процессор
d — по нагрузке на жесткий диск
u — по активности пользователей
n — по активности сетевых интерфейсов
Кроме этого можно использовать следующие клавиши:
v — показать подробности о процессах
g — сброс настроек до дефолтных
i — изменить скорость обновления данных (по-умолчанию 10 секунд)
c — отображение информации о процессе и пути до него
t — переход вперед, на следующую метку времени
SHIFT+t — переход назад, на предыдущую метку времени
h — вывод справки
Смотреть логи Atop позволяет за конкретный период времени. Для этого используются параметры:
-r — указывается дата ( без ключа -b лог будет начинаться с 00:00 от указанной даты)
-b — указывается точное время с которого начинается просмотр.
Например, чтобы просмотреть нагрузку на сервер за 5 февраля 2022 года, начиная с 9:00, выполните команду:
atop -r 20220205 -b 0900
atop -rb 202202050900
Дата в запросе вводится в формате ГГГГММДД.
Удобство наблюдения, atop

Утилита atop по умолчанию умеет показывать загрузку по процессору, памяти, дискам и сети. Также доступен патч, который будет показывать использование сети по процессам. По умолчанию стандартным выводом команды является следующая информация:

Как и в стандартном выводе top экран разделен на две половины, в первой из них указаны данные о системе, а во второй данные по процессам.
В верхней половине видна не только информация по процессору и по памяти как в стандартном выводе top, а еще информация касательно сети и дисков. Если мы обратим внимание на 2 строку данного вывода, просуммировав значения (3+2+0+195+0) мы получим 200% — это означает, что система является 2 процессорной, и каждый из них имеет по 100%, ниже дается деление по каждому процессору, на сколько тот или иной занят. Ниже после этих строк указана оперативная память, информация по дискам, и сетевым интерфейсам.
Более подробное описание каждого столбца можно найти в man странице к данной утилите, кстати на редкость подробное описание.
Естественно мы можем менять ее вид так как нам захочется используя горячие клавиши, ниже я указал наиболее интересные из них,
m — выстроит процессы по занятой памяти
d — построит процессы по использованию диска
n — выстроит процессы по использованию сети (доступно только с установленным патчем)
v — покажет более подробную информацию о процессах (пользователя, дату и время начала процесса)
u — выстроит таблицу по самым прожорливым пользователям
Использование shift+(d,m,n) выстроит текущий список по выше указанным параметрам.
i — изменение времени проверки, по умолчанию 10 секунд.
g — вернет все в дефолтный вывод.
Теперь давайте посмотрим как все же пользоваться функцией «возврата в прошлое», у утилиты atop при стандартной установке есть такая полезная «фича», которая включает ночное логирование производительности системы. Утилита по дефолту снимает показания каждые 10 минут, и сбрасывает их в лог /var/log/atop-YYYYMMDD. У меня по умолчанию это дело отключено, не такой важный сервер просто:
[root@OracleLinux ~]# chkconfig --list | grep atop atop 0:выкл 1:выкл 2:выкл 3:выкл 4:выкл 5:выкл 6:выкл
В дальнейшем для анализа или просмотра лога можно использовать сам atop с ключом -r, или же если Вам нравится отчеты типа sar, можно воспользоваться утилитой atopsar. Кстати не мало важно уточнить, что сбор данных осуществляется в бинарном формате.
Таким образом мы можем сказать, что на сегодняшний момент лучшей утилиты, чем atop? которая смогла объединить в себе практически весь необходимый функционал для системного администратора нет. Ну по крайней мере это мое личное мнение.
Опровержения в комментариях приветствуются!
- Настройка Linux
- Системное администрирование
Использование atop
Утилита atop позволяет сохранять бинарные логи, которые содержат различные метрики сервера. Atop удобно использовать для диагностики проблем производительности. Программа умеет работать в фоновом и интерактивном режиме.
Установка
# Debian/Ubuntu apt install atop
# Centos yum install epel-release && yum install atop
# Fedora dnf install atop
Запуск
Для запуска достаточно запустить службу atop:
service atop start
По умолчанию atop сохраняет метрики каждые 10 минут, данное значение можно изменить в файле /etc/default/atop или /etc/sysconfig/atop (переменная INTERVAL).
Чтение бинарных логов
По умолчанию бинарные логи хранятся в директории /var/log/atop, именование файлов производится в формате atop-YYYYMMDD.
atop -r /var/log/atop/atop_20170113
t - переход к следующему временному интервалу; Shift + t - переход к предыдущему временному интервалу; Shift + m - сортировка процессов по занимаемой резидентной памяти; Shift + с - сортировка процессов по потреблению CPU (по умолчанию); Shift + d - сортировка процессов по использованию диска; Shift + n - сортировка процессов по использованию сети;