Расскажу про ещё одну отличную утилиту для локального мониторинга и поиска узких мест в производительности Linux. Я её уже упоминал в разных заметках, но не было единой публикации, чтобы забрать в закладки. Речь пойдёт про dstat.
Утилита есть в стандартных репозиториях дистрибутивов. Ставим так:# apt install dstat
# dnf install dstat
Dstat - универсальный инструмент, который частично перекрывает функционал iostat, vmstat, netstat и ifstat. У утилиты есть отдельно свои односимвольные ключи, которые вызываются одиночным тире и список плагинов, которые вызываются через двойное тире. Их можно комбинировать.
Покажу сразу пример из свой шпаргалки, которой постоянно пользуюсь:# dstat -tldnpms 10
При этом будет выводиться с интервалом в 10 секунд:
◽ текущее время – t
◽ средняя загрузка системы – l
◽ использования дисков – d
◽ загрузка сетевых устройств – n
◽ активность процессов – p
◽ использование памяти – m
◽ использование подкачки – s
Очень удобная команда, которая позволяет быстро и комплексно оценить загрузку системы по всем основным характеристикам.
Нагрузка на диск с разбивкой по процессам:# dstat --top-io
Пример того, как можно настроить вывод информации в удобном для себя формате:# dstat -l -m -s --top-mem
◽ load average -l
◽ использование памяти -m
◽ использование swap -s
◽ процесс, занимающий больше всего памяти --top-mem
У утилиты очень много разнообразных ключей для той или иной информации. Комбинируя их, можно настраивать необходимый вам вывод.
Набор метрик для анализа нагрузки на CPU:# dstat -c -y -l --proc-count --top-cpu
Любопытный ключ:# dstat --top-oom
Утилита покажет того, кого OOM Killer грохнет первого, если закончится оперативная память. Не знаю, чем это отличается от ключа --top-mem. По идее, одно и то же должно быть.
Ну и так далее. Комбинаций ключей может быть много. Список всех доступных плагинов можно посмотреть так:# dstat --list
или в man.
К слову, развитие этой утилиты прекратилось в 2019 году из-за того, что Red Hat взяли это же название для своего продукта из набора Performance Co-Pilot. Об этом автор написал в репозитории. Я не знаю, что в современных дистрибутивах, основанных на RHEL, ставится под этим названием пакета. В Debian по прежнему старый dstat. В Centos 7 тоже он же ставился, я постоянно пользовался. Что интересно, замену можно и не заметить, так как все ключи и вывод команды Red Hat повторили в своём продукте. То есть сознательно так поступили, заняв известное имя.
#perfomance
>>Click here to continue<<
