3.4. MicroProfile Health 配置


3.4.1. 使用管理 CLI 检查健康状况

您可以使用管理 CLI 检查系统健康状况。

流程

  • 检查健康状况:

    /subsystem=microprofile-health-smallrye:check
    {
        "outcome" => "success",
        "result" => {
            "status" => "UP",
            "checks" => []
        }
    }
    Copy to Clipboard Toggle word wrap

3.4.2. 使用管理控制台检查健康状况

您可以使用管理控制台检查系统健康状况。

检查运行时操作将健康检查和全局结果显示为布尔值。

流程

  1. 导航到 Runtime 选项卡,再选择服务器。
  2. Monitor 列中,单击 MicroProfile Health View

3.4.3. 使用 HTTP 端点检查健康状况

健康检查会自动部署到 JBoss EAP 上的健康上下文中,因此您可以使用 HTTP 端点获取当前的健康状况。

可以从管理接口访问的 /health 端点的默认地址是 http://127.0.0.1:9990/health

流程

  • 要使用 HTTP 端点获取服务器的当前健康状况,请使用以下 URL:

    http://<host>:<port>/health
    Copy to Clipboard Toggle word wrap

    访问此上下文以 JSON 格式显示健康检查,指示服务器是否健康。

3.4.4. 为 MicroProfile Health 启用身份验证

您可以将 健康 上下文配置为需要身份验证才能访问。

流程

  1. microprofile-health-smallrye 子系统中将 security-enabled 属性设置为 true

    /subsystem=microprofile-health-smallrye:write-attribute(name=security-enabled,value=true)
    Copy to Clipboard Toggle word wrap
  2. 重新加载服务器以使更改生效。

    reload
    Copy to Clipboard Toggle word wrap

任何后续尝试访问 /health 端点都会触发身份验证提示符。

JBoss EAP XP 4.0.0 支持三个就绪度探测来确定服务器健康和就绪状态。

  • server-status - 当 server-state 运行时 返回 UP
  • boot-errors - 当探测检测到没有引导错误时返回 UP
  • deployment-status - 当所有部署的状态为 OK 时返回 UP

这些就绪度探测默认为启用。您可以使用 MicroProfile Config 属性 mp.health.disable-default-procedures 禁用探测。

以下示例演示了在 check 操作中使用三个探测:

[standalone@localhost:9990 /] /subsystem=microprofile-health-smallrye:check
{
    "outcome" => "success",
    "result" => {
        "status" => "UP",
        "checks" => [
            {
                "name" => "boot-errors",
                "status" => "UP"
            },
            {
                "name" => "server-state",
                "status" => "UP",
                "data" => {"value" => "running"}
            },
            {
                "name" => "empty-readiness-checks",
                "status" => "UP"
            },
            {
                "name" => "deployments-status",
                "status" => "UP"
            },
            {
                "name" => "empty-liveness-checks",
                "status" => "UP"
            },
            {
                "name" => "empty-startup-checks",
                "status" => "UP"
            }
        ]
    }
}
Copy to Clipboard Toggle word wrap

3.4.6. 没有定义探测时的全局状态

:empty-readiness-checks-status,:empty-liveness-checks-status, 和 :empty-startup-checks-status 管理属性指定没有 就绪度存活度启动探测 的全局状态。

这些属性允许应用报告 'DOWN',直到探测验证应用是否已就绪、实时或启动。默认情况下,应用程序会报告 'UP'。

  • 如果未定义就绪度探测,则 :empty- readiness -checks-status 属性指定 就绪度探测 的全局状态:

    /subsystem=microprofile-health-smallrye:read-attribute(name=empty-readiness-checks-status)
    {
        "outcome" => "success",
        "result" => expression "${env.MP_HEALTH_EMPTY_READINESS_CHECKS_STATUS:UP}"
    }
    Copy to Clipboard Toggle word wrap
  • 如果未定义存活度探测,则 :empty- liveness -checks-status 属性指定 存活度探测 的全局状态:

    /subsystem=microprofile-health-smallrye:read-attribute(name=empty-liveness-checks-status)
    {
        "outcome" => "success",
        "result" => expression "${env.MP_HEALTH_EMPTY_LIVENESS_CHECKS_STATUS:UP}"
    }
    Copy to Clipboard Toggle word wrap
  • :empty-startup-checks-status 属性指定 启动探测 的全局状态,如果没有定义 启动探测

    /subsystem=microprofile-health-smallrye:read-attribute(name=empty-startup-checks-status)
    {
        "outcome" => "success",
        "result" => expression "${env.MP_HEALTH_EMPTY_STARTUP_CHECKS_STATUS:UP}"
    }
    Copy to Clipboard Toggle word wrap

    检查 就绪度存活度启动探测 也考虑这些属性,/health HTTP 端点和 :check 操作也会考虑这些属性。

您还可以修改这些属性,如下例所示:

/subsystem=microprofile-health-smallrye:write-attribute(name=empty-readiness-checks-status,value=DOWN)
{
    "outcome" => "success",
    "response-headers" => {
        "operation-requires-reload" => true,
        "process-state" => "reload-required"
    }
}
Copy to Clipboard Toggle word wrap
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部