Добавление логирования в системный монитор

LinuxBeginner
Практиковаться сейчас

Введение

В рамках этого испытания вам предстоит улучшить предоставленный скрипт мониторинга системы Linux, добавив в него функцию логирования. Цель состоит в том, чтобы записывать данные об использовании ресурсов (процессор, память и диск) в лог-файл после каждого цикла мониторинга. Это задание проверит ваше умение модифицировать и расширять shell-скрипты, добавляя в них вывод данных в файл.

Базовый скрипт уже подготовлен. Вам необходимо интегрировать в него механизм ведения логов.

Добавление логирования в системный монитор

Задачи

  • Модифицируйте скрипт /home/labex/project/system_monitor.sh таким образом, чтобы он дописывал данные об использовании ресурсов (процессор, память и диск) в лог-файл с именем resource_usage.log в той же директории. Каждая запись должна содержать текущую дату и время.

Требования

  • Лог-файл должен называться resource_usage.log и находиться в директории /home/labex/project.
  • Каждая запись в логе должна включать дату, время и процент использования ресурсов процессора (CPU), оперативной памяти (memory) и дискового пространства (disk).
  • Логирование должно выполняться после расчета значений использования ресурсов в каждом цикле мониторинга.

Подсказки

  1. Используйте команду date для получения текущей даты и времени, например: date '+%Y-%m-%d %H:%M:%S'. Изучите страницу man date, чтобы узнать больше о форматировании вывода.
  2. Не забудьте использовать оператор >> для добавления содержимого в конец файла. Избегайте перезаписи файла при каждой итерации.
  3. Объедините значения использования ресурсов в одну строку перед записью в лог-файл. Используйте переменные и интерполяцию строк для этой цели.
  4. Убедитесь, что лог-файл записывается в ту же директорию, где находится скрипт, используя абсолютный или относительный путь, например /home/labex/project/resource_usage.log.

Примеры

После выполнения задачи запуск скрипта /home/labex/project/system_monitor.sh на несколько секунд должен создать файл resource_usage.log с записями следующего вида:

cat /home/labex/project/resource_usage.log
2024-12-04 14:00:01 CPU: 15% Memory: 45% Disk: 62%
2024-12-04 14:00:03 CPU: 18% Memory: 46% Disk: 62%
2024-12-04 14:00:05 CPU: 20% Memory: 47% Disk: 62%

Чтобы корректно завершить работу скрипта, вы можете нажать Ctrl+C, чтобы отправить сигнал прерывания.

Пример лога системного монитора

Резюме

В этом испытании вы добавили функцию логирования в скрипт мониторинга системы Linux. Эта функция записывает данные об использовании ресурсов в лог-файл, позволяя пользователям отслеживать потребление ресурсов с течением времени. Данная задача закрепила ваши навыки работы с файловыми операциями и командами даты в Bash-скриптах.

✨ Проверить решение и практиковаться