自定义zabbix中的普通KEY及LLD KEY
普通类型KEY
1、agent端:
编写自定义脚本,脚本需要有输出值返回给zabbix-server,并且给对应脚本赋予zabbix用户可执行权限
zabbix-agnet 且定义key名称和command
Format: UserParameter=<key>,<shell command>
实例:
UserParameter=psql.check,/etc/zabbix/scripts/check_psql_active.sh UserParameter=test.lld,python /etc/zabbix/scripts/testlld.sh
2、server端:
界面配置相应item
key值填写UserParameter的值psql.check
3、观察监控数据
LLD KEY
自定义lld类型的KEY,重点是放置于agent端的检测脚本,需要返回一个JSON格式的答复给server端,便于zabbix创建lld规则。
这里只介绍一种如何输出JSON格式的方式(python),lld规则创建请参考。。。
L = [{'{#IFNAME}':'eth18'},{'{#IFNAME}':'eth11'}] #创建列表,列表格式[{'{#NAME}':'value1'},{'{#NAME}':'value2'}] print json.dumps({'data':L},indent=4) #使用json模块将列表L格式化,并且需要带上data头部
[root@localhost ~]# zabbix_get -s 172.16.8.1 -k "test.lld" { "data": [ { "{#IFNAME}": "eth18" }, { "{#IFNAME}": "eth11" } ] } [root@localhost ~]#