CLI AI

«Кто жрёт CPU прямо сейчас?» — мониторинг системы по-человечески

2026-04-27

Утро среды, 9:47. В #incident кто-то пишет: «прод тормозит». Вы ssh-итесь и на секунду зависаете, пытаясь вспомнить — top сортирует по CPU на Shift+M или Shift+P, iostat по умолчанию в MB/s или в секторах, ss -s действительно показывает то, что нужно. Ничего из этого помнить не обязательно. Пять вопросов дают картину.

1. Топ по CPU

clai
$ clai какие 10 процессов сейчас грузят CPU больше всего→ ps -eo pid,user,%cpu,%mem,comm --sort=-%cpu | head -11PID    USER  %CPU  %MEM  COMMAND8821   app   84.2  12.4  java8901   app   31.1   3.2  node

Одна выборка не евангелие — но это мгновенный снимок, и в 95% случаев он указывает на правильный процесс.

2. Топ по RSS

clai
$ clai топ 10 процессов по резидентной памяти→ ps -eo pid,user,rss,%mem,comm --sort=-rss | head -11PID    USER  RSS       %MEM  COMMAND8821   app   1985432   12.4  java4567   app   1180224    7.2  node

%MEM — процент; RSS — реальные килобайты в резиденции. Для «кто ест память» нужен RSS.

3. Дисковый I/O за 10 секунд

clai
$ clai покажи дисковый I/O по устройствам, раз в секунду, 10 раз→ iostat -dx 1 10Device  r/s     w/s    rkB/s    wkB/s   %utilsda     12.0    340.2  192.0    18432.0  87.4

%util 87% значит, что этот диск сейчас узкое место. Без iostat -x этого столбца не будет.

4. Память в человеческих единицах

clai
$ clai покажи использование памяти в читаемом виде→ free -h              total   used    free   shared  buff/cache  availableMem:           15Gi   12Gi   428Mi    32Mi      2.7Gi       2.6GiSwap:         2.0Gi  1.2Gi   820Mi

-h — читаемые единицы. available — тот столбец, что реально отвечает на хватает ли памяти? — не free, который бывает обманчиво маленьким.

5. Открытые сетевые коннекты

clai
$ clai покажи все established коннекты с именем процесса→ ss -tnp state establishedESTAB  10.0.1.12:54322  10.0.1.50:5432  users:(("app",pid=8821))ESTAB  10.0.1.12:51002  17.253.144.10:443  users:(("clai",pid=4012))

Форма триажа

Пять вопросов, две минуты — у вас картина: какой процесс, какой ресурс, какое устройство, какой коннект. Часто запускаете две-три по цепочке — top по CPU найти подозреваемого, top по RSS убедиться, что это память, iostat исключить диск. Быстрее, чем рыться в горячих клавишах htop.

См. также