Я хочу написать сценарий, который убьет мои процессы, когда моя машина выполняет «слишком много» подкачки памяти процесса с диска в память.
Как лучше всего это определить? Я видел, что у top есть% wa, а у iostat есть данные iowait. vmstat имеет подкачку и подкачку.
Можно ли это использовать в качестве метрики? Что лучше для меня? может кто-нибудь порекомендовать что-нибудь еще?
Несколько методов, и вы сами их описали.
Во-первых, вверху - смотрите загрузку процессора и где нагрузка. Если большая часть процессорного времени тратится на% sys, это какая-то системная активность. Также проверьте использование памяти: если большая часть памяти находится в состоянии подкачки, то постоянный высокий уровень cpu% sys означает сбой.
Далее vmstat. вы знаете, какие поля нужно отслеживать.
Для исторических данных используйте sar. Опять же, посмотрите столбец, в котором сжигается время процессора.
mpstat также покажет состояние использования процессора.
Подводя итог, существует множество инструментов, и вы можете легко отфильтровать нужное поле с помощью awk, cut, sort.