打开zabbix首页→配置→模板→创建模板
模板名称:Template App NGINX
agent 需添加自定义监控项:
UserParameter=nginx.status[*],/bin/bash /etc/zabbix/scripts/nginx_status.sh $1
#!/bin/bash # DateTime: 2015-10-25 # WEBSITE: http://www.ttlsa.com # Description:zabbix监控nginx性能以及进程状态 # Note:此脚本需要配置在被监控端,否则ping检测将会得到不符合预期的结果 HOST="127.0.0.1" PORT="80" URI="/nginx_status" # 检测nginx进程是否存在 function ping { /sbin/pidof nginx | wc -l } # 检测nginx性能 function active { /usr/bin/curl "http://$HOST:$PORT/${URI}" 2>/dev/null| grep \'Active\' | awk \'{print $NF}\' } function reading { /usr/bin/curl "http://$HOST:$PORT/${URI}" 2>/dev/null| grep \'Reading\' | awk \'{print $2}\' } function writing { /usr/bin/curl "http://$HOST:$PORT/${URI}" 2>/dev/null| grep \'Writing\' | awk \'{print $4}\' } function waiting { /usr/bin/curl "http://$HOST:$PORT/${URI}" 2>/dev/null| grep \'Waiting\' | awk \'{print $6}\' } function accepts { /usr/bin/curl "http://$HOST:$PORT/${URI}" 2>/dev/null| awk NR==3 | awk \'{print $1}\' } function handled { /usr/bin/curl "http://$HOST:$PORT/${URI}" 2>/dev/null| awk NR==3 | awk \'{print $2}\' } function requests { /usr/bin/curl "http://$HOST:$PORT/${URI}" 2>/dev/null| awk NR==3 | awk \'{print $3}\' } # 执行function $1
在当前模板创建监控项目
nginx 监控效果图如下
触发器配置: