На небольших проектах, зачастую, не требуется поднимать elasticsearch, настраивать kibana и logstash, достаточно и простого скрипта который будет проверять логи, искать в них ошибки по паттерну, записывать в лог и отправлять , например, в телеграмм. Именно такой скрипт мне и пришлось реализовать, когда встала задача отследить все 500, 502, 504 ошибки и проанализировать, почему они возникают (проблема низкой производительности сервера с Opencart 3). Результат получился примерно такой: Ссылка на сам скрипт. Для того, чтобы после ротации логов файлы корректно подхватывались - также написал простой sh, останавливающий nginx и после запускающий его (nginx крутится в docker-swarm). #!/bin/bash set -e # Прерывать выполнение при ошибках # Принудительная ротация логов /usr/sbin/logrotate -f /etc/logrotate.conf # Удаление текущего стека nginx /usr/bin/docker stack rm nginx # Ожидание, пока стек полностью удалится (опционально, но желательно) echo "Ожидаем завершения удаления стека nginx..." whi
Организуем мониторинг логов nginx с отправкой в телеграмм оповещений простым скриптом
10 мая 202510 мая 2025
1 мин