Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Monitoring 集成到Zenoss远程数据中_Monitoring_Snmp_Zenoss - Fatal编程技术网

Monitoring 集成到Zenoss远程数据中

Monitoring 集成到Zenoss远程数据中,monitoring,snmp,zenoss,Monitoring,Snmp,Zenoss,我需要监视放置在农场不同位置的几个Linux服务器 我有到这个远程位置的VPN连接 在内部,我使用Zenoss 4监控系统,我也希望使用Zenoss监控远程系统。对于合同策略,我不能对Zenoss数据(例如SNMP或SSH)使用VPN连接 我创建的是一组脚本,用于将所需数据从远程系统提取到内部服务器。返回数据的格式为每个位置一个CV,其中包含放置在该位置的所有设备的数据 例如: $ cat LOCATION_1/current/current.csv APPLIANCE1,out_of_memo

我需要监视放置在农场不同位置的几个Linux服务器

我有到这个远程位置的VPN连接

在内部,我使用Zenoss 4监控系统,我也希望使用Zenoss监控远程系统。对于合同策略,我不能对Zenoss数据(例如SNMP或SSH)使用VPN连接

我创建的是一组脚本,用于将所需数据从远程系统提取到内部服务器。返回数据的格式为每个位置一个CV,其中包含放置在该位置的所有设备的数据

例如:

$ cat LOCATION_1/current/current.csv
APPLIANCE1,out_of_memory,no,=,no,3,-
APPLIANCE1,postgre_idle,no,=,no,3,-
APPLIANCE2,out_of_memory,no,=,no,3,-
APPLIANCE2,postgre_idle,no,=,no,3,-
CVS的格式如下所示:

主机名、检查名称、结果值、比较、所需值、信息

我如何将这些数据集成到Zenoss中,因为机器被放置在内部服务器场中? 如果有必要,我最终可以更改获取数据的格式


非常感谢

一种可能性是,与远程系统通信的内部服务器(我们称之为
INTERNAL1
)将事件重新发布为SNMP陷阱(或将它们写入
rsyslog
文件),然后在Zenoss中处理它们

例如,消息可以以服务器名称开头:
“[APPLIANCE1]内存不足”
。在Zenoss web界面()的“事件类转换”部分,您可以转换传入消息的属性(使用Python)。我经常使用它来降低事件的严重性。例如:

if evt.component == 'abrt' and evt.message.find('Saved core dump of pid') != -1:
    evt.severity = 2     # was originally 3, I think
根据您的需要,如果消息来自
INTERNAL1
,并且包含
[APPLIANCE1]
标记作为消息前缀,或者您希望用于唯一标识来自远程系统的消息/陷阱的任何其他内容,您可以将
evt.device
设置为
APPLIANCE1

我不认为这是实现你目标的最好方式。我对Zenoss的了解仅限于我目前需要使用它的用途


p.S.是Zenoss关于使用事件转换的一份相当古老的文档。不幸的是,Zenoss中的文档非常稀少和分散(正如您可能已经了解到的),因此在Zenoss论坛上搜索旧帖子和/或提问可能是必要的。

只需在远程位置部署一个收集器,然后将该主机添加到收集器池中,您还可以监视远程linux服务器