Контролировать среднюю нагрузку каждые 1 или 5 секунд и выполнять некоторые действия, если она выше, чем ex. 5

Как это можно сделать без написания дополнительного демона?

PS Я не могу использовать cron, потому что мне нужно меньше временных интервалов.

PPS Debian 6 x64

1 ответ

Решение

Используйте Monit как легкий инструмент для мониторинга системы.

Вот документация. Вы найдете примеры того, как делать оповещения и действия в зависимости от состояния системы, например, нагрузки. Например:

check system server.example.com
  if loadavg (1min) > 4       for 10 cycles then alert
  if loadavg (5min) > 3       for 10 cycles then alert
  if loadavg (15min) > 2      for 10 cycles then alert
  if memory usage > 75%       for 10 cycles then alert
  if cpu usage (user) > 70%   for 10 cycles then alert
  if cpu usage (system) > 50% for 10 cycles then alert
  if cpu usage (wait) > 50%   for 10 cycles then alert

Где "предупреждение" определяется в другом разделе конфигурации.

Monit должен быть доступен в apt на Debian. Да, это дополнительная установка и запуск, но она довольно легкая и будет лучше, чем все, что вы создадите в сценарии оболочки.

Другие вопросы по тегам