cacti系列(二)之cacti添加对tomcat服务器的监控
cacti添加对tomcat的监控
1.首先下载监控tomcat的模板 TomcatStats-0.1.zip
2.导入模板 (cacti_host_template_tomcat_server.xml)
进入cacti --> Console ---> Import Templates
3.将解压缩TomcatStats-0.1.zip 得到的tomcatstats.pl 放到cacti/scritps目录下,并授予执行权限
chown -R apache.apache tomcatstats.pl
修改tomcatstats.pl,大概第18行,将
my $xml = `GET $url`;
修改为
my $xml = my $xml = `wget -qO - --http-user=$username --http-password=$password $url`;
不然在你导入之后很可能出现数据出不来。
Check URL连接是否正确
Vim tomcatstats.pl 后,在第17行后面添加print $url,在控制台打出url,如下所示:
my $url = "http://$username:$password"."\@$host/manager/status?XML=true";
print $url;
print "";
4.添加tomcat管理用户,账号tomcat,密码tomcatpass
vim /usr/local/tomcat7/conf/tomcat-users.xml
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<user username="tomcat" password="tomcatpass" roles="manager-script,manager-gui"/>
</tomcat-users>
# perl /var/www/html/cacti/scripts/tomcatstats.pl 192.168.8.93:8888 'tomcat' 'tomcatpass' \"http-bio-8090\"
报错:
BEGIN failed--compilation aborted at /var/www/html/cacti/scripts/tomcatstats.pl line 7
解决办法:
perl -MCPAN -e"install XML::Simple"
测试,在cacti的主机上执行
perl /var/www/html/cacti/scripts/tomcatstats.pl RemoteIP:port tomcat yourpassword \"http-bio-8090\"
如果出现以下说明ok
http://tomcat:tomcatpass@192.168.8.93:8888/manager/status?XML=truejvm_memory_free:250541488 jvm_memory_max:859832320 jvm_memory_total:364380160 connector_max_time: connector_error_count: connector_bytes_sent: connector_processing_time: connector_request_count: connector_bytes_received: connector_current_thread_count: connector_min_spare_threads: connector_max_threads: connector_max_spare_threads: connector_current_threads_busy:
也可以通过浏览器访问测试:http://192.168.8.93:8888/manager/status?XML=true
5.进入cacti---> console (控制台)--> Data Input Methods(数据输入方法) ---> Tomcat Status-->Input String右侧输入框
而且tomcat的http-bio-8090的双引号在perl中要转义才能被解析,否则出现只有jvm相关数据,其他connector没有数据
点击监控项连接进去,看到RRDTool Says: ERROR: invalid y-grid format报错信息,
解决办法是:
进右上角的连接*Edit Graph Template --> Tomcat - Connection Rate --> Unit Grid Value (--unit/--y-grid),默认的值为1,去掉改成为0即可。
1.首先下载监控tomcat的模板 TomcatStats-0.1.zip
2.导入模板 (cacti_host_template_tomcat_server.xml)
进入cacti --> Console ---> Import Templates
3.将解压缩TomcatStats-0.1.zip 得到的tomcatstats.pl 放到cacti/scritps目录下,并授予执行权限
chown -R apache.apache tomcatstats.pl
修改tomcatstats.pl,大概第18行,将
my $xml = `GET $url`;
修改为
my $xml = my $xml = `wget -qO - --http-user=$username --http-password=$password $url`;
不然在你导入之后很可能出现数据出不来。
Check URL连接是否正确
Vim tomcatstats.pl 后,在第17行后面添加print $url,在控制台打出url,如下所示:
my $url = "http://$username:$password"."\@$host/manager/status?XML=true";
print $url;
print "";
4.添加tomcat管理用户,账号tomcat,密码tomcatpass
vim /usr/local/tomcat7/conf/tomcat-users.xml
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<user username="tomcat" password="tomcatpass" roles="manager-script,manager-gui"/>
</tomcat-users>
# perl /var/www/html/cacti/scripts/tomcatstats.pl 192.168.8.93:8888 'tomcat' 'tomcatpass' \"http-bio-8090\"
报错:
BEGIN failed--compilation aborted at /var/www/html/cacti/scripts/tomcatstats.pl line 7
解决办法:
perl -MCPAN -e"install XML::Simple"
测试,在cacti的主机上执行
perl /var/www/html/cacti/scripts/tomcatstats.pl RemoteIP:port tomcat yourpassword \"http-bio-8090\"
如果出现以下说明ok
http://tomcat:tomcatpass@192.168.8.93:8888/manager/status?XML=truejvm_memory_free:250541488 jvm_memory_max:859832320 jvm_memory_total:364380160 connector_max_time: connector_error_count: connector_bytes_sent: connector_processing_time: connector_request_count: connector_bytes_received: connector_current_thread_count: connector_min_spare_threads: connector_max_threads: connector_max_spare_threads: connector_current_threads_busy:
也可以通过浏览器访问测试:http://192.168.8.93:8888/manager/status?XML=true
5.进入cacti---> console (控制台)--> Data Input Methods(数据输入方法) ---> Tomcat Status-->Input String右侧输入框
perl <path_cacti>/scripts/tomcatstats.pl <hostname>:8080 tomcat yourpassword \"http-bio-8090\"
而且tomcat的http-bio-8090的双引号在perl中要转义才能被解析,否则出现只有jvm相关数据,其他connector没有数据
点击监控项连接进去,看到RRDTool Says: ERROR: invalid y-grid format报错信息,
解决办法是:
进右上角的连接*Edit Graph Template --> Tomcat - Connection Rate --> Unit Grid Value (--unit/--y-grid),默认的值为1,去掉改成为0即可。
同理解决Tomcat - Heap Statistics 不出图的问题 将1048576 值改空即可。