如何在SpringBoot2.1.4.RELEASE中创建指标?
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
答案 0 :(得分:0)
您可以使用千分尺:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>
这将为您提供终点:/actuator/prometheus
答案 1 :(得分:0)
如果您使用的是spring-boot-starter-actuator
,将创建类型为MeterRegistry
的bean。自动连线后,您就可以创建多个指标,例如计数器,量规和指标。每个工具都有一个流利的构建器,您可以使用它来进行设置,例如:
Counter
可用于简单的增量指标,例如,调用方法的次数。
Counter customCounter = Counter
.builder("my.custom.metric.counter")
.register(meterRegistry);
通过使用customCounter.increment()
,您可以增加该值。
另一方面,Gauge
是动态/实时值,应直接测量。一个例子是连接池的大小:
Gauge
.builder("my.custom.metric.gauge", () -> connectionPool.size())
.register(meterRegistry);
构建器允许您传递Supplier
来度量所需的任何内容。
顾名思义,它可以用来衡量执行某项操作所需的时间,例如:
Timer customTimer = Timer
.builder("my.custom.metric.timer")
.register(meterRegistry);
通过使用customTimer.record(() -> myMethod())
,您可以添加有关调用myMethod()
所需时间的度量。
运行应用程序时,您应该能够访问这些指标。如果要通过HTTP查看它们,可以启用指标端点,如下所示:
management.endpoints.web.exposure.include=metrics # Enable metrics endpoint
之后,您应该可以访问http://localhost:8080/actuator来查看已启用的端点列表,其中应包含http://localhost:8080/actuator/metrics。
此API应该返回可用指标的列表,可以通过http://localhost:8080/actuator/metrics/my.custom.metric.counter进行访问。