Полезные утилиты для мониторинга системных ресурсов
В данной статье представлена обновленная версия схемы Брендана Грегга, на которой каждая подсистема сопоставлена с соответствующими CLI-утилитами. В дополнение к уже известным средствам добавлены опенсорсные утилиты для мониторинга. Все инструменты распределены по подсистемам, а также даны краткие описания для каждого из разделов.
На уровне приложений можно использовать такие команды, как strace, ltrace, gethostlatency и journalctl для диагностики зависаний и замедлений. Если проблемы не будут обнаружены, рекомендую сторонние средства, такие как rr и bpftrace.
Глубже в ядре применяются perf, ftrace и LTTng для анализа производительности, а также eBPF/BCC-утилиты, чтобы отслеживать спрос на ресурсы. На файловой системе акцентируется внимание на использовании инструментов lsof и fatrace.
Что касается дисков, iostat и nvme помогут оценить состояние блочных устройств, а сетевые проблемы можно диагностировать с помощью утилит ss и ip.
Наконец, для CPU и планировщика полезны mpstat и pidstat, а также turbostat и rdmsr для анализа на аппаратном уровне. Эти инструменты помогут быстро обнаружить узкие места и оптимизировать систему.