ℹ️ Если вы администрируете серверы или приложения в Linux, то наверняка знакомы с задачей мониторинга логов. Вместо того чтобы постоянно использовать tail -f, можно автоматизировать реактивный мониторинг логов с помощью утилиты inotifywait, которая отслеживает изменения файлов в реальном времени.
⚡️Пример: вы хотите автоматически перехватывать новые ошибки в логе вашего веб-сервера и мгновенно уведомлять себя об этом.
🖥 1. Установите пакет inotify-tools:
sudo apt-get install inotify-tools
2. Создайте скрипт для отслеживания изменений:
#!/bin/bash
LOGFILE="/var/log/nginx/error.log"
OUTPUTFILE="/home/user/filtered_errors.log"
TRIGGER_KEYWORD="error"
# Запускаем inotifywait для отслеживания добавления новых строк
inotifywait -m -e modify "$LOGFILE" | while read path action file; do
# Проверяем последние 10 строк на наличие ключевого слова
tail -n 10 "$LOGFILE" | grep -i "$TRIGGER_KEYWORD" >> "$OUTPUTFILE" && \
echo "Обнаружена ошибка, запись добавлена в $OUTPUTFILE"
doneℹ️ Этот скрипт отслеживает изменения в файле логов, фильтрует новые строки с ключевым словом (например, "error") и сохраняет их в отдельный файл.
✳️ Его можно интегрировать с системами уведомлений (например, отправлять уведомления в Telegram или Slack), создавая более сложные системы мониторинга с минимальными ресурсами.
tags: #linux #логирование #мониторинг
🧭 @recura_tech



