如何启用所有SpringBoot执行器端点?

问题描述 投票:0回答:2

SpringBoot v2.5.1

我希望所有执行器端点(文档中描述)可用。 在docs之后,添加了执行器启动器依赖项和属性,但大多数端点不可用(HTTP 404)。

唯一可用的端点是

GET /actuator/health
,但它显示无用的信息:
{"status": "UP"}

添加了属性

management.endpoints.enabled-by-default=true

添加依赖项:

 <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-actuator</artifactId>
 </dependency>

GET /actuator

的结果
{
    "_links": {
        "self": {
            "href": "http://localhost:9999/actuator",
            "templated": false
        },
        "health-path": {
            "href": "http://localhost:9999/actuator/health/{*path}",
            "templated": true
        },
        "health": {
            "href": "http://localhost:9999/actuator/health",
            "templated": false
        }
    }
}

启用执行器端点的最小设置是什么?

spring spring-boot spring-boot-actuator spring-actuator
2个回答
1
投票

micrometer-core
文件中添加
micrometer-registry-prometheus
pom.xml
依赖项:

<!-- Spring boot actuator to expose metrics endpoint -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

<!-- Micormeter core dependecy -->
<dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-core</artifactId>
</dependency>

<!-- Micrometer Prometheus registry -->
<dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

在您的

application.properties
文件中添加以下属性:

#Metrics related configurations
management.endpoint.metrics.enabled          = true
management.endpoints.web.exposure.include    = *
management.endpoint.prometheus.enabled       = true
management.metrics.export.prometheus.enabled = true

如果您需要通过 HTTP 公开所有内容,那么您需要设置

management.endpoints.web.exposure.include
,如上例所示。在您的代码中缺少此属性。如果您希望公开特定端点,请参阅spring docs。我还在上面的示例中添加了公开
prometheus
相关端点所需的依赖项。


0
投票

我正在使用适用于 macOS 的 IntelliJ IDEA 2024.1.4(终极版)。

我按照以下步骤操作,

只需将依赖项添加到您的

pom.xml
文件即可。

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

接下来,更新

application.properties
文件。

要公开所有端点,请使用通配符

*
。或者,您可以使用逗号分隔的列表公开各个端点(例如,
health,info,
...)

management.endpoints.web.exposure.include=*
management.info.env.enabled=true

请注意,控制台将显示其他端点,执行器端点以

/actuator
为前缀。

endpoints

要查看执行器端点,请转至

/mappings
。这是为了演示,因此您可以尝试完整列表中的任何端点。

mappings

© www.soinside.com 2019 - 2024. All rights reserved.