Возможно ли в Zabbix построить мониторинг с выявлением причины сбоя?
С помощью Zabbix можно мониторить практически что угодно, но как выстроить мониторинг таким образом, что бы он указывал причину инцидента?
Например, сработал триггер что сервис возвращает ответы HTTP 500 или 404 по причине отсутствия соединений с БД
заббикс это просто инструмент. головой думать все равно придется.
чтобы было легче находить хвосты, в заббиксе есть куча возможностей. например можно строить триггеры с зависимостями.
то есть можно к веб-серверу добавить мониторинг логов на предмет 5xx кодов, добавить каскадом триггеры на лог с SQL Slow Query на сервере баз данных и прочие ошибки и тэ дэ и тэ пэ.
И все это красиво разрисовать на карте в виде квадратиков, соединенных логическими связями. И тогда можно сразу видеть что и где срабатывает и кто от кого зависит. Системные проблемы сразу становятся видно. НО думать вначале что и как мониторить все равно придется.
Как быть если система распределенная?
Например приложение находится на нескольких серверах, плюс отдельно кластер БД при условии что приложение не возвращает метрик
dmvlch_dev, Так для распределенных систем самое оно, позволяет консолидировать поток отчетов, грубо говоря на одном экране заббикса, если приложение Ваше, добавьте в него взаимодействие с заббиксом, в инстансе критическая ошибка - аларм в заббикс, отсуттвие серцебения -аларм, ошибка с базой - аларм. Ну а в заббиксе подстройте "критичность" ошибки, сколько их в секунду/минуту/час для Вас 1 в час или 30 в минуту. Отсутствие активности приложения (инстанса), тоже может быть для Вас алармом.