samsungsamsung 发表于 2019-1-21 08:52:17

zabbix 之自定义key(10)

  

  自定义key
  

  在zabbix agent端的配置文件由用户通过userparameter指令定义用户自定义参数
  

userparameter=,
userparameter=, $1...$9  

  实例1(不带参数)
# vim /etc/zabbix/zabbix_agentd.conf
UserParameter=system.memory.free,awk '/^MemFree/{print $2}' /proc/meminfo
# systemctl restart zabbix-agent
在服务器端测试
# zabbix_get -s 10.1.249.168 -k 'system.memory.free'
89844  

http://s2.运维网.com/wyfs02/M02/8B/4B/wKiom1hI_1HydwLHAAAsguePnds119.png-wh_500x0-wm_3-wmp_4-s_3420878369.png
  

  

  示例2(带参数)
# vim /etc/zabbix/zabbix_agentd.conf
UserParameter=system.memory.usage
[*],awk '/^$1/{print $$2}' /proc/meminfo
# systemctl restart zabbix-agent
在服务器端测试
# zabbix_get -s 10.1.249.168 -k 'system.memory.usage'
493224
# zabbix_get -s 10.1.249.168 -k 'system.memory.usage'
89188
# zabbix_get -s 10.1.249.168 -k 'system.memory.usage'
342664  

  实战案例
  (监控nginx status状态页面的各项指标)
# vim /etc/zabbix/zabbix_agentd.conf
UserParameter=nginx.status
[*],/tmp/status.sh $1
# vim /tmp/status.sh
#!/bin/bash
#
host=10.1.249.168
port='80'
statusurl='/status'
active() {
    curl -s http://${host}:${port}${statusurl} | awk '/^Active/{print $3}'
}
accepts() {
    curl -s http://${host}:${port}${statusurl} | awk 'NR==3{print $1}'
}
handled() {
    curl -s http://${host}:${port}${statusurl} | awk 'NR==3{print $2}'
}
requests() {
    curl -s http://${host}:${port}${statusurl} | awk 'NR==3{print $3}'
}
reading() {
    curl -s http://${host}:${port}${statusurl} | awk 'NR==4{print $2}'
}
writing() {
    curl -s http://${host}:${port}${statusurl} | awk 'NR==4{print $4}'
}
waiting() {
    curl -s http://${host}:${port}${statusurl} | awk 'NR==4{print $6}'
}
$1
# chmod +x /tmp/status.sh
在服务器端测试
# zabbix_get -s 10.1.249.168 -k 'nginx.status'
//参数可以更改  

  

  




页: [1]
查看完整版本: zabbix 之自定义key(10)