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

jos*_*osh 4 java metrics spring-boot micrometer spring-micrometer

我试图了解 spring micromenter 的按维度/标签功能分组。我正在使用 StepMeterRegistry 并递增计数器,但没有看到所需的结果。

创建计数器为,

final MeterRegistry myRegistry = new StepMeterRegistry(config, Clock.SYSTEM) {...};

final Counter myCounter1 = myRegistry.counter("myTestCounter", "tag1", "value1");
final Counter myCounter2 = myRegistry.counter("myTestCounter", "tag2", "value2");
final Counter myCounter1n2 = myRegistry.counter("myTestCounter", "tag1", "value1", "tag2", "value2");
Run Code Online (Sandbox Code Playgroud)

计数器增量为,

myCounter1.increment();
myCounter2.increment();
myCounter1n2.increment();
Run Code Online (Sandbox Code Playgroud)

当我打印时(步骤持续时间之后),

myCounter1.measure(); => value=1.0
myCounter2.measure(); => value=1.0
myCounter1n2.measure(); => value=1.0
Run Code Online (Sandbox Code Playgroud)

而我期待的是(在步骤持续时间之后),

myCounter1.measure(); => value=2.0
myCounter2.measure(); => value=2.0
myCounter1n2.measure(); => value=1.0
Run Code Online (Sandbox Code Playgroud)

我的理解正确吗?或者我如何实现分组依据(或)选择功能?

Joh*_*Lim 7

您可以Counter通过标签查找MeterRegistry.find()并自行聚合它们。AFAICT 没有对标签聚合值的开箱即用支持,我希望聚合发生在监控系统中。

请参阅此测试以了解其工作原理。