gpt4 book ai didi

Dropwizard:自定义健康检查地址和格式

转载 作者:行者123 更新时间:2023-12-05 01:02:05 24 4
gpt4 key购买 nike

是否可以自定义 Dropwizrd 的健康检查输出,例如:/health用于健康检查而不是 /healthcheck和一些输出,如 {“status”: 200} .

我意识到我可以简单地编写一个新资源来满足我的需求,我只是想知道是否有更标准的方法来做到这一点。

最佳答案

不幸的是,从我在 0.7.1 源代码上阅读的内容来看,无法更改运行状况检查的资源 URI,我非常怀疑您是否可以更改运行状况检查格式。我还记得有人提示无法将 REST 资源添加到管理页面,只能添加 servlet。也许在 0.8.0 上?

以下是我迄今为止在源代码上跟踪的详细信息。也许我误读或误解了某些东西,所以有人可以解决它。

Metrics 居然写了AdminServlet添加 healthcheck servlet 以检查 servlet 配置是否定义了 URI。

this.healthcheckUri = getParam(config.getInitParameter(HEALTHCHECK_URI_PARAM_KEY), DEFAULT_HEALTHCHECK_URI);

但是 dropwizard 没有提供以任何方式在 AbstractServerFactory 上注入(inject)此配置的方法。 .
handler.addServlet(new NonblockingServletHolder(new AdminServlet()), "/*");

NonblockingServletHolder是向 AdminServlet 提供配置的那个但由 AbstractServerFactory 创建构造函数为空,并且无法更改配置。

我已经想到并尝试从 Environment 访问 ServletHolder对象 Application.run方法,但直到 run 之后才创建管理 servlet方法运行。
environment.getAdminContext().getServletHandler().getServlets()[0].setInitParameter("healthcheck-uri", "/health");

关于Dropwizard:自定义健康检查地址和格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27145108/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com