Tomcat监控

271 阅读3分钟
原文链接: zhuanlan.zhihu.com

Tomcat监控方法通常有两种:一是自带的监控模块status;二是第三方监控工具probe。

8.2.1Tomcat启动与停止

Tomcat启动

./usr/local/apache‐tomcat‐8.5.31/bin/startup.sh

Tomcat停止

./usr/local/apache‐tomcat‐8.5.31/bin/shutdown.sh

8.2.2status监控

使用status监控步骤如下:

1.配置角色与用户

配置角色与用户的文件

usr/local/apache-tomcat-8.5.31/conf/tomcat-users.xml

配置角色与用户的语法:

//角色名

<role rolename="tomcat"/>

<role rolename="role1"/>

<role rolename="manager"/>

//用户

<user username="tomcat" password="tomcat" roles="manager‐gui,admin‐gui"/>

角色是指权限,指访问Tomcat的权限

如果需要监控tomcat,那么需要两类角色权限

如果是监控server status那么需要的角色权限为manager-gui

如果需要监控host manage那么需要的角色权限为admin-gui

配置用户时需要配置其相关角色,简单的来说就配置其对应权限

2.如果提示403错误

如果配置好角色之后还是出现403的错误,那么表现我们没有权限去读监控的相关信息,那么需要修改以下两

个文件中的内容:

./webapps/host-manager/meta-inf/context.xml

./webapps/manager/meta-inf/context.xml

<Valve className="org.apache.catalina.valves.RemoteAddrValve"

allow="192.168.*.*" />

将allow的值修改为测试机的IP地址网段

3.重启tomcat

./usr/local/apache‐tomcat‐8.5.31/bin/shutdown.sh

./usr/local/apache‐tomcat‐8.5.31/bin/startup.sh

4.进入监控界面

Tomcat监控的URL地址

http://ip:8080

如:

http://192.168.40.133:8080/

如果监控server status

http://192.168.40.133:8080/manager/status

如果监控host manage

http://192.168.40.133:8080/host‐manager/html

8.2.3probe监控

使用第三方监控工具的步骤如下:

1.安装probe

现在安装的probe的版本是psi-probe

2.配置角色和用户

如果只是使用probe进行监控的,那么只需要manager-gui角色即可

conf/tomcat‐users.xml文件中添加以下代码

//设置角色名

<role rolename="manager‐gui"/>

//设置用户

<user username="admin" password="admin" roles="manager‐gui"/>

3.重启tomcat服务器

4.进监控界面

http://ip:8080/probe

如:

http://192.168.40.133:8080/probe/

监控内容如下:

1.applications标签页

显示webapps目录下所有的内容信息,有每个目录的请求数、请求是由那个jsp类生成、所以使用到的jsp

applications标签页中显示了所有应用程序,我们现在测试的程序是opencarrun

status列:表示运行的状态

REQ.列:表示HTTP请求数

sess.列:表示session数

JSP列:表示发布程序所有JSP文件

2.datasources标签页

表示数据源,我们这里没有设置源

3.deployment标签页

表示允许在客户端向服务上传jar文件

4.logs标签页

显示日志文件信息,只显示catalina.out文件的日志信息

5.threads标签页

显示由tomcat产生的线程,对我们来,一般情况下我们主要关注的线程是http-nio-8080,关注的目的是确定

http连接器是否能正常的处理我们的请求

6.cluster标签页

表示tomcat的集群设置

7.system标签页

显示系统相关信息,主要是用于查看JVM内存使用情况

8.connectors标签页

表示连接器使用的情况,显示的内容包括:请求数、进程执行时间、处理的字节数