cacti 添加tomcat监控
监控主机 192.168.24.69 ,以下用A表示
被监控主机 192.168.24.79,以下用B标识一、A主机cacti中
1.导入TomcatStat中的xml模版
2.将TomcatStat中的tomcatstats.pl拷贝到/var/www/html/cacti/srcipts目录下,同时赋予权限
#cd /var/www/html/cacti/scripts
#chown apache.apache tomcatstats.pl && chmod 755 tomcatstats.pl
ps:注意tomcatstats.pl中将my $xml = `GET $url`; 修改为my $xml = `wget -qO - $url`; 否则可能有图没数据;
同时检查是否安装了wget命令, #install yum wget
二、B主机
1.添加用户
#cd /usr/tomcat/conf
#vi tomcat-users.xml
在/usr/tomcat/conf/tomcat-users.xml中添加
修改tomcat-users 如下
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager-gui"/>
<user username="admin" password="12345678" roles="manager-gui"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
<role rolename="role1"/>
<role rolename="manager-gui"/>
<user username="admin" password="12345678" roles="manager-gui"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
2.重启tomcat
#/usr/tomcat/bin/shutdown.sh
#/usr/tomcat/bin/startup.sh
登录192.168.24.79:8080/manager/status 看是否能登录成功
三、在A主机中测试,得先安装Perl以及XML::Simple模块
#cd /var/www/html/cacti/scripts
#perl tomcatstats.pl 192.168.24.79:8080 admin 12345678 \"http-bio-8080\"
有数据即正常,
错误1:Can't locate XML/Simple.pn in @INC
打开CPAN shell ,执行 force install XML::Simple
错误2:提示错误sh:Get:command not found
#yum install -y perl-libwww-perl perl-XML-Parser
错误3:提示Could not find ParseDetails.ini
#perl -MXML::SAX -e "XML::SAX->add_parser('XML::SAX::PurePerl')->save_parsers()"
如果出现错误Can‘t locate XML/SAX:PurePerl.pm in @INC
#yum install -y expat expat-devel
然后打开CPAN shell ,执行install XML::SAX::Expat
四、cacti设置
(1)在cacti中导入tomcatstats的templates
(2)在console->Data Input Methods中点击Tomcat Status
(3)修改Input String 为perl <path_cacti>/scripts/tomcatstats.pl <hostname>:8080 admin password \"http-bio-8080\"
注意:替换上面的admin和password为实际的manager帐号;
Tomcat 7 用\"http-bio-8080\",Tomcat用\"http-8080\",两侧的\“一定要有,要么有的数据会是空
(4)在device中添加相应的templates
之后看了cacti/rra文件夹中对应的rrd有没有生成,之后看下cacti.log中有没有报错。
PS:
1、如果发现heap statistics 和connect rate的两张图没出现,在console->graph templates中,找到对应的模版,将Unit Grid Value(--unit/--y-grid) 设置为0或空, 保存后就可以看到图了。
2、有图没数据且cacti log中显示Error:Empty result
解决办法 #yum -y install perl* gcc*
附件:
https://app.yinxiang.com/shard/s41/res/87d1b22a-e8db-40c8-b3a1-ac2fc003c91b/TomcatStats-0.1.zip