温馨提示:这篇文章已超过805天没有更新,请注意相关的内容是否还可用!
生产环境需求:
1、监控网站在线并发访问量
2、监控一天的网站访问量
实现思路:
1、利用http_stub_status_module,统计在线连接数
2、统计nginx当天日志,截取访问网站的ip地址
一、nginx文件配置
1、vim /usr/local/nginx/conf/nginx.conf
检查配置文件
[root@WEB zabbix_agentd.conf.d]# /usr/local/nginx/sbin/nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
重新加载配置文件
[root@WEB zabbix_agentd.conf.d]# /usr/local/nginx/sbin/nginx -s reload
访问nginx_status
http://ip地址/nginx_status
二、zabbix_agent的配置文件注册key
1、获取在线并发连接数 Active connections:
curl -s http://localhost/nginx_status | grep Active | awk '{print $3}'
2、获取网站一天ip地址访问量,sort排序,uniq去重,确保不会获取到同样的IP
3、在zabbix_agent的配置文件注册key,可以参考 zabbix添加自定义监控项
添加以下两行:
UserParameter=nginx_active,curl -s http://localhost/nginx_status | grep Active | awk '{print $3}' UserParameter=nginx_count,cat /usr/local/nginx/logs/access.log | awk '{print $ 1}' | sort | uniq | wc -l
记得重启zabbix_agent服务
4、测试连通性
IP地址是被监控的客户端地址,能获取到数据,说明成功注册key;因为zabbix服务端与nginx服务在同一服务器上,所以我写的是本机地址。
三、zabbix网页端配置
可以参考 zabbix添加自定义监控项,依次创建模板->应用集->监控项->触发器->图形,我这边大概展示下配置及效果图
1、创建模板
2、应用集
3、监控项
4、触发器;并发在线连接数大于1000告警,统计网站一天的ip访问量就没必要设置触发器,单纯用来统计的一天总访问量。
5、创建图形
最终效果图:
文章版权声明:除非注明,否则均为柳三千运维录原创文章,转载或复制请以超链接形式并注明出处。