如何指定我想在 spring-boot with micrometer 中使用的指标的白名单
How to specify a whitelist of the metrics I want to use in spring-boot with micrometer
我们只想在 spring-boot 应用程序中使用来自 micrometer 的一些给定指标。我们在文档中找到以下代码片段。这应该默认禁用所有指标,并且应该使我们能够创建可能指标的白名单。
Spring blog about Micrometer metrics
management.metrics.enable.root=false
management.metrics.enable.jvm=true
问题是,它不起作用。所有现有指标都写入我们的石墨实例。
我们已经找到了解决方法,但我们想在 属性 文件中编辑指标。
这是我们目前的解决方法:
@Configuration
public class MicrometerGraphiteConfig {
@Bean
public MeterRegistryCustomizer<MeterRegistry> commonTags() {
return registry -> registry
.config()
.meterFilter(MeterFilter.denyUnless(this::isMetricToInclude))
.commonTags("a_tag", "some_common_tags");
}
private boolean isMetricToInclude(Meter.Id id) {
return id.getName().startsWith("jvm.");
}
}
有没有人有任何经验可以分享,我们必须想到什么才能在 属性-文件配置中达到这个目标?
您需要使用 management.metrics.enable.all=false
而不是 management.metrics.enable.root=false
,因为 属性 已被删除。
我有同样的要求将指标列入白名单并只选择所需的指标。博客 post 已过时,Spring Boot devs 在 gitter 上建议使用 management.metrics.enable.all=false
。
我们只想在 spring-boot 应用程序中使用来自 micrometer 的一些给定指标。我们在文档中找到以下代码片段。这应该默认禁用所有指标,并且应该使我们能够创建可能指标的白名单。
Spring blog about Micrometer metrics
management.metrics.enable.root=false
management.metrics.enable.jvm=true
问题是,它不起作用。所有现有指标都写入我们的石墨实例。
我们已经找到了解决方法,但我们想在 属性 文件中编辑指标。
这是我们目前的解决方法:
@Configuration
public class MicrometerGraphiteConfig {
@Bean
public MeterRegistryCustomizer<MeterRegistry> commonTags() {
return registry -> registry
.config()
.meterFilter(MeterFilter.denyUnless(this::isMetricToInclude))
.commonTags("a_tag", "some_common_tags");
}
private boolean isMetricToInclude(Meter.Id id) {
return id.getName().startsWith("jvm.");
}
}
有没有人有任何经验可以分享,我们必须想到什么才能在 属性-文件配置中达到这个目标?
您需要使用 management.metrics.enable.all=false
而不是 management.metrics.enable.root=false
,因为 属性 已被删除。
我有同样的要求将指标列入白名单并只选择所需的指标。博客 post 已过时,Spring Boot devs 在 gitter 上建议使用 management.metrics.enable.all=false
。