centos6.3 cacti server(192.168.1.102)参考http://angus717.blog.51cto.com/1593644/1037111
centos6.3,nginx环境(192.168.1.103)参考http://angus717.blog.51cto.com/1593644/999037   nginx部分。
监测脚本
cat /var/www/html/cacti/scripts/nginx_status.sh
#!/bin/bash
# $1 Monitor Server addr
NGINX_STATSUS=nginx_status
TEMPFILE=`mktemp /tmp/$1_nginx_status.XXXXXXXX`
wget -O $TEMPFILE http://$1/$NGINX_STATSUS 2&> /dev/null
nginx_active=`head  -1 $TEMPFILE |awk '{print $3}'`
nginx_reading=`tail -1 $TEMPFILE | awk '{print $2}'`
nginx_writing=`tail -1 $TEMPFILE | awk '{print $4}'`
nginx_waiting=`tail -1 $TEMPFILE | awk '{print $6}'`
nginx_accepts=`sed  -n "3p"  $TEMPFILE | awk '{print $1}'`
nginx_handled=`sed  -n "3p"  $TEMPFILE | awk '{print $2}'`
nginx_requests=`sed -n "3p"  $TEMPFILE | awk '{print $3}'`
echo nginx_accepts:$nginx_accepts nginx_handIed:$nginx_handled nginx_requests:$nginx_requests nginx_active:$nginx_active nginx_reading:$nginx_reading nginx_writing:$nginx_writing nginx_waiting:$nginx_waiting
 
cacti自定义模版一般需要设置以下几步:
1,设置数据输入方式
点击Data Input Methods--->add; 设置如下
cacti监测nginx状态_cacti
点create;由于我的脚本需要传递一个参数和输出7个参数,所有在点完create后要设置Input Fields,Output Fields,如下面3个图cacti监测nginx状态_cacti_02
cacti监测nginx状态_cacti_03
 
cacti监测nginx状态_自定义脚本_04
 
所有参数设置好如上。
2,设置数据收集模版
Data Templates-->Add
cacti监测nginx状态_cacti_05
设置完点create后可以点new添加其他的数据输出数据源定义。设置完如下

3,设置绘图的数据源Data Sources
点Data Sources-->add,如下选择
cacti监测nginx状态_cacti_07
点save
4,设置绘图模版
Graph Templates-->add,如下图

cacti监测nginx状态_自定义脚本_09
如上设置后点save。会出现下图:
cacti监测nginx状态_cacti_10
然后设置不同数据源对应绘图属性Graph Template Items-->add如图;
cacti监测nginx状态_自定义脚本_12
cacti监测nginx状态_自定义脚本_13cacti监测nginx状态_自定义脚本_14
cacti监测nginx状态_cacti_15
cacti监测nginx状态_cacti_16

5,绘图
Graph Management-->add
cacti监测nginx状态_cacti_17
 
点save后,所有步骤完成,过一段时间,可以看到图像。
cacti监测nginx状态_cacti_18