Linux отображает среднюю загрузку процессора за прошедшую неделю
Вопрос
В системе Linux мне нужно отобразить среднюю загрузку процессора в час за последнюю неделю.Эта информация где-то записана?Или мне нужно написать скрипт, который будет просыпаться каждые 15 минут для копирования /proc/loadavg в файл журнала?
РЕДАКТИРОВАТЬ:Мне не разрешено использовать какие-либо инструменты, кроме тех, которые поставляются с Linux.
Решение
Насколько я знаю, он нигде не хранится...В любом случае писать это тривиально.Просто добавьте что-то вроде
cat /proc/loadavg >> /var/log/loads
на ваш crontab
.
Обратите внимание, что существуют инструменты мониторинга (например, Мунин), который может делать подобные вещи за вас и в придачу генерировать красивые графики...хотя они могут быть излишними для вашей ситуации.
Другие советы
Возможно, вы захотите проверить сар (справочная страница), он хорошо подходит для вашего случая использования.
Отчет о системной активности (SAR) - Получите важные показатели производительности системы с периодическими промежутками.
Пример из Статья о работах разработчиков IBM:
Добавьте запись в корневой crontab
# Collect measurements at 10-minute intervals
0,10,20,30,40,50 * * * * /usr/lib/sa/sa1
# Create daily reports and purge old files
0 0 * * * /usr/lib/sa/sa2 -A
Затем вы можете просто запросить эту информацию с помощью команды sar (отобразить всю сегодняшнюю информацию):
root ~ # sar -A
Или просто файл журнала за определенные дни:
root ~ # sar -f /var/log/sa/sa16
Обычно вы можете найти его в системная статистика пакет для вашего дистрибутива Linux
Я бы рекомендовал посмотреть Мультимаршрутизатор трафика (MRTG).
Используя snmpd для считывания среднего значения нагрузки, он автоматически рассчитывает средние значения для любого интервала времени и длины, а также создает удобные диаграммы для анализа.
Кто-то уже опубликовал Пример использования процессора.