Есть ли способ извлечь данные из Nagios, как если бы это был веб-сервис?

Моя ситуация: я работаю над панелью мониторинга сети, которая собирает информацию из разных приложений и источников и генерирует графики, инфографику и отчеты.

Приложения, которые я пытаюсь интегрировать, - это CACTI, Nagios и другие локальные инструменты частного мониторинга. У меня не было проблем с интеграцией этих приложений, за исключением Nagios (у меня нет большого опыта с этим).

Я хочу знать, есть ли способ использовать Nagios в качестве веб-службы или что-то подобное, чтобы я мог раскрыть некоторую информацию и использовать ее для генерации собственных отчетов в своем приложении на приборной панели.

Можно ли сделать это без каких-либо эпических усилий?

Спасибо за прочтение.

4 ответа

Решение

Nagios 4.x, начиная с версии 4.4, теперь включает CGI для вывода в формате JSON. Установка самой новой версии Nagios может быть самым простым способом.

Смотрите объявление здесь.

Просмотрите слайды с конференции Nagios World Conference 2013 здесь.

Мультисайтовый графический интерфейс Check_MK (базовый веб-интерфейс с использованием MK Livestatus) предлагает режим веб-сервиса, в котором вы можете отправлять запросы / команды в качестве параметров URL и получать ответ в виде JSON в теле.

Хитрость заключается в следующем: создать представление в графическом интерфейсе, которое соответствует вашим потребностям. Затем извлеките URL этого представления и добавьте параметр output_format=json, Теперь у вас должен быть вывод в синтаксическом формате.

Например, этот URL должен предоставить вам список JSON всех сервисов:

check_mk/view.py?view_name=allservices&output_format=json

Ты можешь попробовать:

1) MK Livestatus http://mathias-kettner.de/checkmk_livestatus.html это не веб-сервис, но он может предоставлять текущие данные без каких-либо сложных действий. Все что вам нужно перенаправить эти данные.

2) плагинstatus-json http://exchange.nagios.org/directory/Addons/APIs/JSON/status-2Djson/details который возвращает данные в формате JSON.

3) ПлагинNagiosWS, но я не смог заставить его работать. Я думаю, что это можно сделать для Nagios 2.x

4) ПлагинGroundWork Foundation. Я думаю, что я попытаюсь использовать это сейчас.

Теперь я смог получить решение 1 и 2.

В противном случае вы можете использовать Icinga, который может дать вам вывод JSON или XML. Icinga является форком Nagios и может быть установлен с сохранением всех ваших данных nagios и плагинов. По крайней мере, это написано на сайте Icinga =) У них есть какое-то другое решение, например PHP lib.

Извините, я не могу опубликовать только 2 ссылки, пока я новичок на этом сайте.

С наилучшими пожеланиями.

Работал для меня - МК Livestatus http://mathias-kettner.de/checkmk_livestatus.html это не веб-сервис, но он может предоставлять текущие данные без каких-либо сложных действий. Все что вам нужно перенаправить эти данные.

Другие вопросы по тегам