spring-boot - 获取每个状态的计数(以微米为单位)@Timed 注释

标签 spring-boot micrometer

我在SpringBoot应用程序中使用@Timed注释来监视方法。我还想知道每个状态的响应计数。

@GetMapping("/status/{productNumber}", produces = [MediaType.APPLICATION_JSON_VALUE])
@Timed(value = "status.productnumber", description = "Timed information retrieveProduct()")
fun retrieveProduct(@PathVariable productNumber: String): ResponseEntity {

当我打开 http://localhost:8080/actuator/metrics/status.productnumber 时,我看到:

{
    "name": "status.productnumber",
    "description": "Timed information retrieveProduct()",
    "base_unit": "seconds",
    "measurements": [
        {
            "statistic": "COUNT",
            "value": 3.0
        },
        {
            "statistic": "TOTAL_TIME",
            "value": 0.515840608
        },
        {
            "statistic": "MAX",
            "value": 0.006641343
        }
    ],
    "available_tags": [
        {
            "tag": "exception",
            "values": [
                "None",
                "RuntimeException"
            ]
        },
        {
            "tag": "method",
            "values": [
                "GET"
            ]
        },
        {
            "tag": "uri",
            "values": [
                "/status/{productNumber}"
            ]
        },
        {
            "tag": "outcome",
            "values": [
                "SERVER_ERROR",
                "SUCCESS"
            ]
        },
        {
            "tag": "status",
            "values": [
                "500",
                "200"
            ]
        }
    ]
}

此处的 COUNT 统计信息显示访问此端点或方法的总次数。我可以知道每个状态的计数吗?我想知道500状态码出现了多少次

最佳答案

您可以通过以下方式查询标签:/actuator/metrics/status.productnumber?tag=status:500,请参阅docs .

一些旁注:

  • 指标端点用于指标调试/故障排除目的,它不能替代指标后端,不应该在产品中使用它来代替它
  • 我不确定通过阅读其名称是否了解 status.productnumber 的用途

关于spring-boot - 获取每个状态的计数(以微米为单位)@Timed 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72619200/

相关文章:

mysql - 无法使用 Gradle 和 Spring Boot 加载驱动程序类 : com. mysql.jdbc.Driver

java - 带标签的计数器 - 如何按维度/标签分组?

spring-boot - 如何使用 Spring Cloud Stream 4.x 生产者和消费者检测 Spring Boot 3.x 以关联记录器中的跟踪信息

java - 千分尺相当于普罗米修斯的标签

WLP (WebSphere Liberty) 上的 Spring Boot 部署抛出 CWWKC0044W 错误

ajax - 如何在Spring Boot中配置CORS和基本授权?

jpa - 无法将 eclipselink 与 spring boot 一起使用

java - 如何在运行微服务时禁用/启用 Micrometer 指标

java - 如何使用 SLA 和标签注册 Micrometer Timer?

spring-boot - Spring Boot 2.0.0.M4和Hibernate 5.2.11.Final找不到EntityManagerFactoryBuilder类型的bean