前段时间因为要使用nagios监控tomcat程序,本来是在网上找到的监控端口的,像check_tcp!8080端口,但是实际的工作中却出现问题了,实际中tomcat经常出现假死状态,就是像jsp的页面打不开的,但是端口已经是正常的,所以这个方法看来是不行了,后来在网上查找,可以直接使用check_http监控,就把我的方法贴出来,给刚使用nagios监控tomcat程序,节省一些时间。

在每一个tomcat的webapps目录下,新建一个目录test(这个目录随便建),然后在其下面放一个asp文件。然后修改commands.cfg ,在里面添加
#tomcat1 set
define command{
command_name check_tomcat_80
command_line /usr/local/nagios/libexec/check_http -I $HOSTADDRESS$ -p 80 -u /test/test.jsp -e 200
}

#tomcat2 set
define command{
command_name check_tomcat_8028
command_line /usr/local/nagios/libexec/check_http -I $HOSTADDRESS$ -p 8028 -u /test/test.jsp -e 200
}
然后在servers.cfg中添加tomcat服务就好了。