我build立了一个系统,进行各种types的时间序列分析,现在我想从一个监控工具中提供数据。 由于我已经在我的testing环境中设置了Nagios,所以我宁愿从那里得到它。 但作为第二select,我可以访问一个testing的Zenoss实例,并且也会赞赏Zenoss的答案。
我想要的是
我想在多个设备上使用多个KPI的时间序列。
理想情况下,我将能够指定数据格式,但只要包含我需要的信息,我很乐意在收到时进行转换。 我需要的信息是公正的
最后,我想通过HTTP(现在,稍后通过HTTPS)发送数据。
我可以在警报的情况下做到这一点 – 例如,当一个阈值被破坏时我知道如何configurationNagios来调用我的设备IP等简单的脚本作为参数 – 我的脚本执行HTTP请求。 但是我还没有看到如何才能设置好每一项民意调查。
我不想要的
我不想要警报数据,我想要原始的时间序列。
我不想调查Nagios获取这些数据 – 轮询间隔会有所不同,我想避免不必要的networkingstream量。
我检查了这个问题,但似乎从奴隶Nagios节点发送数据到主Nagios节点。
您可以使用用于分布式监视的部分执行此操作。
例如,使用ocsp命令将所有检查结果发送到其他地方。 def命令可以指向一个通过curl或类似的方法来推送perfdata的脚本。
在nagios.cfg我们添加了
obsess_over_services=1 ocsp_command=OUR_COMMAND_NAME 然后我们在commands.cfg定义了新的commands.cfg :
command_name OUR_COMMAND_NAME command_line /path/to/our/script 该脚本收到以下参数:
引用我的问题:我想要的设备是这个主机名,并且可以从服务描述和插件消息中提取组件&KPI。
不过,我需要做一些parsing工作来获得这些值,因为插件消息是为人类而不是机器写的
OK - 1.05 GB used (1.05 GB RAM + 0.00 GB SWAP, this is 32.4% of 3.24 GB RAM)
但至less格式是一致的,所以我不抱怨。