Я использую отчеты Spring Boot 2 + Graphite и у меня есть метрики, которые получают общие теги, а некоторые - нет.
У меня есть два идентичных компонента, кроме имени, оба создают таймер с одинаковым кодом. Один из них создается первым и к нему не применяются общие теги, а другой -. например.,
@Autowired
MeterRegistry meterRegistry
@Bean Foo doesNotGetCommonTags() {
meterRegistry.timer(...);
...
}
@Bean MeterRegistryCustomizer<GraphiteMeterRegistry> graphiteCustomizer() {
return r -> r.config().commonTags(...);
}
@Bean Foo getsCommonTags() {
meterRegistry.timer(...);
...
}
Похоже, что это связано с порядком создания бина, но я не могу понять, как убедиться, что мой реестр полностью настроен перед созданием счетчиков. Я использую общие теги в качестве префикса, поэтому некоторые метрики отправляются в Graphite без префикса, а другие -
.
Я не понимаю, что могло вызвать это. Мой graphiteCustomizer должен быть применен до введения реестра метрик, верно?