有没有办法从Nagios中提取数据,就好像它是一个Web服务?

mar*_*cio 16 web-services nagios data-exchange

我的情况:我正在开发一个Web监控仪表板,它汇集来自不同应用程序和源的信息,并生成图形,信息图形和报告.

我正在尝试集成的应用程序是CACTI,Nagios和其他本地私有监视工具.我没有问题整合这些应用程序,除了Nagios(我没有太多经验).

我想知道的是,如果有一种方法可以将Nagios用作Web服务或类似的东西,那么我可以公开一些信息并使用它在我的仪表板应用程序上生成我自己的报告.

没有任何史诗般的努力可以做到这一点吗?

谢谢阅读.

fre*_*reb 15

从版本4.4开始的Nagios 4.x现在包含用于JSON输出的CGI.安装最新版本的Nagios可能是最简单的方法.

请参阅此处的公告.

回顾从Nagios的世界大会2013幻灯片在这里.


小智 8

Check_MK Multisite GUI(使用MK Livestatus的 Web基础GUI )提供Web服务模式,您可以在其中将查询/命令作为URL参数发送,并在主体中获得JSON响应.

诀窍是:在GUI中创建一个符合您需求的视图.然后提取该视图的URL并添加参数output_format=json.现在您应该以可分析的格式输出.

例如,此URL应该为您提供所有服务的JSON列表:

check_mk/view.py?view_name=allservices&output_format=json
Run Code Online (Sandbox Code Playgroud)


ain*_*cat 7

你可以试试:

1)MK Livestatus http://mathias-kettner.de/checkmk_livestatus.html 它不是Web服务,但它可以提供当前数据而无需任何复杂的操作.您需要重定向此数据.

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个链接.

最好的祝福.