如何在不重新启动微服务的情况下禁用或启用 Micrometer 的某些指标?我想公开一个端点来更改我的应用程序收集的指标。
问问题
1284 次
1 回答
1
禁用/启用方案
您想停止修改您的指标,但将其保留在指标端点上,因此您的 TSDB 系统仍会抓取它。Micrometer 中没有这样的功能,但是您可以围绕指标实现包装器,并在其中放置一些切换器。
@Component
public class MetersService {
...
private boolean enableMeters;
...
public void incCounter() {
if (enableMeters) {
meterRegistry.counter("my.counter").increment();
}
}
...
}
删除方案
如果您想完全从 Micrometer 中删除公制,则在1.1.0-rc.1版本中添加了此类功能。查看GithHub 问题。所以使用那个版本你应该能够做这样的事情
public void removeMeter(Meter meter) {
meterRegistry.remove(meter);
}
于 2019-04-10T13:50:33.217 回答