我正在使用 spring-boot 2
和 graphite
。我想为我的所有指标添加一个前缀。
@Bean
public MeterRegistry graphiteRegistsry() {
return new GraphiteMeterRegistry(
GraphiteConfig.DEFAULT, Clock.SYSTEM,
(id, convention) -> "prefix." +
HierarchicalNameMapper.DEFAULT.toHierarchicalName(id,convention));
}
如果我使用此代码,这实际上是添加前缀,但也会创建一些没有前缀的指标。似乎他们几乎所有的指标都是重复的。
如何添加此前缀?并且从这个应用程序转到 Graphite 的所有指标都将包含前缀?
谢谢。
最佳答案
首先,您可以使用 MeterRegistryCustomizer
添加一个公共(public)标签:
@Configuration
public class MetricsConfig {
@Bean
public MeterRegistryCustomizer<MeterRegistry> commonTags() {
return r -> r.config().commonTags("commonTag", "somePrefix");
}
}
其次,扩展您的应用程序属性,将此标签转换为前缀:
management.metrics.export.graphite.tags-as-prefix=commonTag
详细解释请看here
关于java - 在 spring-boot 中为 Graphite 千分尺事件添加前缀,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49872765/