gpt4 book ai didi

spring-boot - 使用 Spring-Boot 将系统指标发送到 Graphite

转载 作者:行者123 更新时间:2023-12-04 03:01:21 28 4
gpt4 key购买 nike

Spring-Boot 执行器在 /metrics 公开了许多有用的指标,例如正常运行时间、内存使用情况、GC 计数。

当使用 Dropwizard Metrics 集成时,只有其中的一个子集被发送到 Graphite。具体来说,只有计数器和仪表

有什么方法可以将这些其他指标发布到 Graphite?

documentation建议这应该是可能的:

Users of the Dropwizard ‘Metrics’ library will find that Spring Boot metrics are automatically published to com.codahale.metrics.MetricRegistry

最佳答案

Spring boot 创建的系统指标不会自动报告,因为 MetricsRegistry 对这些指标一无所知。

您应该在应用程序启动时手动注册这些指标。

@Autowired
private SystemPublicMetrics systemPublicMetrics;

private void registerSystemMetrics(MetricRegistry metricRegistry) {
systemPublicMetrics.metrics().forEach(m -> {
Gauge<Long> metricGauge = () -> m.getValue().longValue();
metricRegistry.register(m.getName(), metricGauge);
});
}

我已经定义了Gauge,并不是所有的系统指标都应该添加为gauge。例如计数器应该用于捕获计数值。

如果不想使用Spring boot。可以使用开箱即用的 metrics-jvm 来捕获 JVM 级别指标。

关于spring-boot - 使用 Spring-Boot 将系统指标发送到 Graphite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30852914/

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