前期准备
探测nginx
#!/bin/bash
hostname=$1
result=`curl http://$hostname/nginx_status`
echo $result
Active connections: 28500 server accepts handled requests 135478105597 135478105597 210542656774 Reading: 16175 Writing: 305 Waiting: 12020
提取有价值的信息
active connections -- 对后端发起的活动连接数
server accepts handled requests -- nginx 总共处理了 16630948 个连接, 成功创建 16630948 次握手 (证明中间没有失败的), 总共处理了 31070465 个请求 (平均每次握手处理了 1.8个数据请求)
reading -- nginx 读取到客户端的Header信息数
writing -- nginx 返回给客户端的Header信息数
waiting -- 开启 keep-alive 的情况下,这个值等于 active - (reading + writing),意思就是Nginx说已经处理完正在等候下一次请求指令的驻留连接
activeConnections -- 当前活跃,对后端发起的活动连接数
handledTotal -- 启动后,一共处理了这么多,有成功的也有失败的
handledSuccess -- 启动后,一共处理了多少次成功的
requestTotal -- 启动后,http request请求一共请求了多少次
activeReading -- 当前活跃, 读取client发送的header 数目
activeWriting -- 当前活跃, 返回给client的header 数目
activeWaiting -- 当前活跃, client和server都在等待
测试
./a 10.181.117.72 activeConnections
./a 10.181.117.72 handledTotal
./a 10.181.117.72 handledSuccess
./a 10.181.117.72 requestTotal
./a 10.181.117.72 activeReading
./a 10.181.117.72 activeWriting
./a 10.181.117.72 activeWaiting
说明下数据获取方式
- 只需要直接从server端获取就可以了
- 参数有两个,一个是ip地址,一个是type类型(类型我们直接放到data input method)里面
data input method
<path_cacti>/scripts/bigbig_nginx.sh <server_addr> activeConnections
data template
NGINX - activeConnections
|host_description| - NGINX - activeConnections
graph template
NGINX - activeConnections
LAST
MIN
MAX
>> graph id : 77
php add_graphs.php --graph-type=cg --graph-template-id=77 --list-input-method
[root@10-180-92-195 cli]# php add_graphs.php --graph-type=cg --graph-template-id=77 --list-input-fields
Known Input Fields:(name, default, description)
95:server_addr server address
[root@10-180-92-195 cli]#
online script
activeIng
三个value放在一块更合适一些
[root@10-180-92-195 scripts]# ./bigbig_nginx.sh 10.181.117.72 activeIng
activeReading:11984 activeWriting:300 activeWaiting:10334
data input method
<path_cacti>/scripts/bigbig_nginx.sh <server_addr> activeIng
data graph
reading
writing
waiting
graph template
requestTotal
[root@10-180-92-195 scripts]# ./bigbig_nginx.sh 10.181.117.72 requestTotal
requestTotal:211168485402
data input method
<path_cacti>/scripts/bigbig_nginx.sh <server_addr> requestTotal