8

我有测试并想对千分尺指标做出断言,但测试以随机顺序运行,所以我想在每次测试之前重置或清除所有千分表指标,这样我的断言总是正确的。

4

3 回答 3

6

这取决于使用的 Meter 注册表。如果您使用的是SimpleMeterRegistry,您可以这样做:

registry.getMeters().forEach((meter) -> registry.remove(meter))
于 2019-08-28T06:31:25.073 回答
0

你可以使用clear()方法

registry.clear();
于 2022-02-16T16:15:24.887 回答
0

您应该尝试模拟仪表注册表,因为它们正在监视并且不应该影响您的业务逻辑并用于警报。如果这没有帮助:

对于仪表,您可以重置值

AtomicInteger myGauge = meterRegistry.gauge("numberGauge", new AtomicInteger(0));
myGauge.set(0);

对于计数器,重新初始化,

counter = meterRegistry.counter(counter.toString());

参考:https ://micrometer.io/docs/concepts#_manually_incrementingdecrementing_a_gauge

于 2021-05-07T02:04:36.710 回答