您的位置:首页 > 运维架构 > Nginx

zabbix监控系统之监控nginx

2013-04-02 14:21 302 查看
参考文章:http://blog.sina.com.cn/s/blog_5611597901017qeh.htmlhttp://www.linuxidc.com/Linux/2012-07/64798.htm
1、修改nginx配置
location ~ /nginx-status/ { stub_status on; access_log off; }
验证:http://zabbix.lynn.com/nginx-statux/
2、nginx-status的取值脚本#!/bin/bash#HOST=`ifconfig eth0 | sed -n '/inet /{s/.*addr://;s/ .*//;p}'`HOST="192.168.103.2"PORT="8888"
function active { /usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| grep 'Active' | awk '{print $NF}' }function reading { /usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| grep 'Reading' | awk '{print $2}' }function writing { /usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| grep 'Writing' | awk '{print $4}' }function waiting { /usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| grep 'Waiting' | awk '{print $6}' }function accepts { /usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| awk NR==3 | awk '{print $1}' }function handled { /usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| awk NR==3 | awk '{print $2}' }function requests { /usr/bin/curl "http://$HOST:$PORT/nginx-status/" 2>/dev/null| awk NR==3 | awk '{print $3}' }# Run the requested function$1
HOST和PORT,是监控nginx对应的服务器IP和端口可以直接用命令测试一下/usr/bin/curl "http://192.168.103.2:8888/nginx-status/"Active connections: 2 server accepts handled requests 1968 1968 3907 Reading: 0 Writing: 1 Waiting: 1
3、修改zabbix_agentd.conf的配置/etc/zabbix-agent.d/nginx.confUserParameter=nginx.accepts,/home/zabbix/nginx-status.sh acceptsUserParameter=nginx.handled,/home/zabbix/nginx-status.sh handledUserParameter=nginx.requests,/home/zabbix/nginx-status.sh requestsUserParameter=nginx.connections.active,/home/zabbix/nginx-status.sh activeUserParameter=nginx.connections.reading,/home/zabbix/nginx-status.sh readingUserParameter=nginx.connections.writing,/home/zabbix/nginx-status.sh writingUserParameter=nginx.connections.waiting,/home/zabbix/nginx-status.sh waiting
因为之前监控mysql的时候,是使用了ztc的按照前面的两篇参考文章进行测试的时候,一直出现问题failed to add UserParameter "nginx.accepts": duplicate key以致于无法启动zabbix_agent后来google到一篇日文的,经过一翻痛苦的查看后,终于解决了问题上面的监控脚本是直接在网上找到的,当然也可以直接用ztc里面自带的,不过都是用python写的
4、重启zabbix_agent服务
5、导入nginx的模板并应用配置--》模板--》载入--》选择文件--》载入


配置--》模板--》Nginx Status(选择模板)--》把模板应用到主机中



6、查看图形




本文出自 “lynnteng0” 博客,请务必保留此出处http://lynnteng0.blog.51cto.com/2145094/1169177
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: