xenon
@xenon
Too drunk to fsck

Как запустить скрипт вскоре после того как строчка появился в лог-файле?

Частая проблема - что-то не работает, а когда админ добирается до проблемы - проблема уже ушла, все работает, нечего отлаживать. Что-то есть в логах, но многого (load average, количество HTTP соединений, итд - нету). Надо ждать следующего раз (и надеяться, что удастся сразу увидеть все).

Вот есть проблема, которая приводит к определенной записи в логе. Теоретически, я могу сделать tail -f и быстро-быстро читать лог (загруженный почтовый сервис) и через три дня она появится снова и я тут же посмотрю, какие процессы запущены, какая загрузка системы, и прочий траблшутинг.

Естественно, хочется это как-то автоматизировать. То есть, нужна какая-то программка, которой указываешь 1) за каким файлом следить 2) что искать (подстрога, регекс) и 3) что запускать. И когда появится запись в логе, она запустит мой скрипт и он уже соберет всю нужную информацию о системе, проверит все что нужно проверить.

Есть ли что-то такое, или может быть как-то на синей изоленте можно собрать из имеющегося?
  • Вопрос задан
  • 160 просмотров
Решения вопроса 1
artopp
@artopp
tail -F log | grep --line-buffered text
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
xEpozZ
@xEpozZ
Веб-разработчик
Делайте нормальный мониторинг, а не греп раз в 2 секунды.
Рональд Макдональд, Вы нормальные? А если лог 300мб весит?

Мне довелось пока что пользоваться Zabbix'ом, но есть и другие системы мониторинга.
Клик
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы