如何在 Tomcat 上添加健康检查?
How to add a health check on Tomcat?
我想在 Tomcat 上为 Linux 配置简单的健康检查,例如:http://localhost:8080/health
我一直在查看 Tomcat 文档,我发现了这个内置的服务器状态站点 /manager/status/all
,它确实有很多信息,但需要我在那里登录,所以它不是如果我执行 "curl" 很有用,因为它不会检索任何 HTTP 响应。
我希望使用这样的东西:http://localhost:8080/health,其中 returns 一个 HTTP 响应,即 200,这样我就可以将这个 url 添加到我的监控工具中,以便显示当前状态。
一个简单的方法,你可以在webapps中创建一个像health这样的目录,并在webapps/health/中创建一个名为index.html的索引文件,内容如下。
<HTML>
<HEAD>
<TITLE>Tomcat status</TITLE>
</HEAD>
<BODY>
<H1>Tomcat Running</H1>
</BODY>
</HTML>
使用以下 URL
进行测试
从 Tomcat 9 开始,您可以在配置中使用一个 Valve 来达到这个目的:HealthCheckValve。参见 https://tomcat.apache.org/tomcat-9.0-doc/config/valve.html#Health_Check_Valve。
在 server.xml 中,类似于...
...
<Host name="localhost" ...>
...
<Valve className="org.apache.catalina.valves.HealthCheckValve" />
...
</Host>
...
... 将创建 OP 正在寻找的 /health
端点。
我想在 Tomcat 上为 Linux 配置简单的健康检查,例如:http://localhost:8080/health
我一直在查看 Tomcat 文档,我发现了这个内置的服务器状态站点 /manager/status/all
,它确实有很多信息,但需要我在那里登录,所以它不是如果我执行 "curl" 很有用,因为它不会检索任何 HTTP 响应。
我希望使用这样的东西:http://localhost:8080/health,其中 returns 一个 HTTP 响应,即 200,这样我就可以将这个 url 添加到我的监控工具中,以便显示当前状态。
一个简单的方法,你可以在webapps中创建一个像health这样的目录,并在webapps/health/中创建一个名为index.html的索引文件,内容如下。
<HTML>
<HEAD>
<TITLE>Tomcat status</TITLE>
</HEAD>
<BODY>
<H1>Tomcat Running</H1>
</BODY>
</HTML>
使用以下 URL
进行测试从 Tomcat 9 开始,您可以在配置中使用一个 Valve 来达到这个目的:HealthCheckValve。参见 https://tomcat.apache.org/tomcat-9.0-doc/config/valve.html#Health_Check_Valve。
在 server.xml 中,类似于...
...
<Host name="localhost" ...>
...
<Valve className="org.apache.catalina.valves.HealthCheckValve" />
...
</Host>
...
... 将创建 OP 正在寻找的 /health
端点。