Есть ли способ извлечь данные из Nagios, как если бы это был веб-сервис?
Моя ситуация: я работаю над панелью мониторинга сети, которая собирает информацию из разных приложений и источников и генерирует графики, инфографику и отчеты.
Приложения, которые я пытаюсь интегрировать, - это CACTI, Nagios и другие локальные инструменты частного мониторинга. У меня не было проблем с интеграцией этих приложений, за исключением Nagios (у меня нет большого опыта с этим).
Я хочу знать, есть ли способ использовать Nagios в качестве веб-службы или что-то подобное, чтобы я мог раскрыть некоторую информацию и использовать ее для генерации собственных отчетов в своем приложении на приборной панели.
Можно ли сделать это без каких-либо эпических усилий?
Спасибо за прочтение.
4 ответа
Мультисайтовый графический интерфейс 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 это не веб-сервис, но он может предоставлять текущие данные без каких-либо сложных действий. Все что вам нужно перенаправить эти данные.