首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Apache 9中添加健康端点?

如何在Apache 9中添加健康端点?
EN

Stack Overflow用户
提问于 2022-09-22 21:53:27
回答 2查看 131关注 0票数 1

在我的项目中,我使用Apache 9服务器作为Maven依赖项。它运行良好,现在我需要添加一个健康端点,以便如果一切正常运行,它将返回200 OK。

我了解了Tomcat 9中的HealthCheckValve (气门)选项,这是很有帮助的。但我无法弄清楚在哪里添加这个和配置这个阀门的过程。正如我所知道的,如果服务器是独立的,我们可以在Server.xml中进行配置,但是由于Tomcat是maven依赖项,所以我不知道应该如何在哪里配置它。

有人能帮助我在Apache 9(作为maven依赖项)中配置健康端点吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-09-29 10:46:56

我在Tomcat9.0.x中看到了所有阀门的文档

为了找到这一具体任务的解决方案,我尝试寻找其他阀门的配置,如嵌入式tomcat中的远程地址阀门。

我在搜索了很多之后,发现了一个解决方案,它是由user967710开发的。

我做了以下工作,在Tomcat 9.0.64中添加了一个健康止回阀:

代码语言:javascript
复制
        Tomcat tomcat = new Tomcat();

        tomcat.getEngine().setName(UUID.randomUUID().toString());

        tomcat.setPort(context.port);

        tomcat.setHostname(context.hostname);
        tomcat.getHost().setAppBase(".");
        
        Valve valve = new HealthCheckValve();
        
        tomcat.getHost().getPipeline().addValve(valve);

如何为您的项目配置Tomcat并不重要,即从第1~5行开始,但实际上最后的2行(即6和7)在添加阀门时非常重要。

运行端点可以在主机上访问:端口/健康。例如,如果它托管在http://localhost:4000,那么健康端点将是http://localhost:4000/health

这个端点将返回200 OK,带有一个简单的JSON响应,说明Tomcat服务器的状态,即,如果一切都启动并运行,即" up“。

票数 1
EN

Stack Overflow用户

发布于 2022-09-22 22:03:21

查看文档,然后将HealthCheckerValve添加到server.xml中。阀门进入引擎、主机或上下文元素。在与Tomcat一起打包的server.xml中,您可以找到应该指向正确位置的注释。

在嵌入Tomcat版本时,您将无法获得此文件,因此需要以编程方式组装这些容器的实例。

检查本例中的启动程序应用程序:app-tomcat-embedded.html,虽然我找不到像addValve()这样的方法,但我找到了一个init()方法,您可以使用该方法来提供一个将由Tomcat读取的server.xml。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73821042

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档