hi,
我打算尝试用 LLD 方式自动发现和监控我的一些服务,但是没太明白应该怎么设计。
我开始使用的方法如下:
1 新建一个 userParameter, pg.discover 用来返回发现的服务。
{ "data": [
{ "{#MY.MON.KEY}": "key1" },
{ "{#MY.MON.KEY}": "key2" },
...........
}
2 在 zabbix web 界面新建一个discover rule, filter 是 {#MY.MON.KEY} ,使用 agent 方式执行这个 key。这样就可以获取到可以监控的 key 了。
3 在 discover rule 里面新建一个 item prototype,key 就用 my.[{#MY.MON.KEY}]。
4 新建一个 userParameter,pg.sendtrap 用来返回监控数据。
{
"MY.[key1]" : 111,
"MY.[key2]" : 222,
......
}
5 在 zabbix web 界面新建一个 item,使用 agent 方式执行这个 key 这样就可以得到监控数据了。
这样是可以获取到数据的,但是后续添加 trigger prototype 出问题了。我想添加的是当 key1 > key2 的时候报警,想了一会没想明白怎么加,因为 prototype trigger 貌似是给所有 key 同时加的,无法实现我这个想法,是这样的么?
现在不太明白我应该怎么设计这个 LLD。
我打算尝试用 LLD 方式自动发现和监控我的一些服务,但是没太明白应该怎么设计。
我开始使用的方法如下:
1 新建一个 userParameter, pg.discover 用来返回发现的服务。
{ "data": [
{ "{#MY.MON.KEY}": "key1" },
{ "{#MY.MON.KEY}": "key2" },
...........
}
2 在 zabbix web 界面新建一个discover rule, filter 是 {#MY.MON.KEY} ,使用 agent 方式执行这个 key。这样就可以获取到可以监控的 key 了。
3 在 discover rule 里面新建一个 item prototype,key 就用 my.[{#MY.MON.KEY}]。
4 新建一个 userParameter,pg.sendtrap 用来返回监控数据。
{
"MY.[key1]" : 111,
"MY.[key2]" : 222,
......
}
5 在 zabbix web 界面新建一个 item,使用 agent 方式执行这个 key 这样就可以得到监控数据了。
这样是可以获取到数据的,但是后续添加 trigger prototype 出问题了。我想添加的是当 key1 > key2 的时候报警,想了一会没想明白怎么加,因为 prototype trigger 貌似是给所有 key 同时加的,无法实现我这个想法,是这样的么?
现在不太明白我应该怎么设计这个 LLD。