Я использую Spring Boot 1.5 с микрометром-пружиной-наследием: 1.1.4 и микрометром-реестром-облаком-наблюдателем: 1.1.4 на пути к классам. Согласно документам он должен автоматически подобрать этот реестр:
Наличие зависимости от micrometer-registry- {system} в вашем пути к классам во время выполнения достаточно для Spring Boot для настройки реестра.
Однако, когда я смотрю на зарегистрированные bean-компоненты Spring, когда приложение запускается, появляется только «simpleMeterRegistry» (который, я полагаю, используется по умолчанию).
Почему он не поднимает CloudWatchMeterRegistry
? Как устранить неполадки? спасибо !!!
Из журнала:
Условие CompositeMeterRegistryConfiguration.MultipleNonPrimaryMeterRegistriesCondition для io.micrometer.spring.autoconfigure.CompositeMeterRegistryConfiguration не соответствует из-за того, что NoneNestedConditions 1 не соответствует 1; NestedCondition для CompositeMeterRegistryConfiguration.MultipleNonPrimaryMeterRegistriesCondition.SingleInjectableMeterRegistry @ConditionalOnSingleCandidate (типы: io.micrometer.core.instrument.MeterRegistry; SearchStrategy: все) нашел простой компонент bean; NestedCondition для CompositeMeterRegistryConfiguration.MultipleNonPrimaryMeterRegistriesCondition.NoMeterRegistryCondition @ConditionalOnMissingBean (типы: io.micrometer.core.instrument.MeterRegistry; SearchStrategy: все) найден bean 'simpleMeter
Условие DataSourcePoolMetricsAutoConfiguration.DataSourcePoolMetricsConditionalOnBeans на io.micrometer.spring.autoconfigure.jdbc.DataSourcePoolMetricsAutoConfiguration, сопоставленное из-за того, что AllNestedConditions 2 соответствует 0, не выполнено; NestedCondition для DataSourcePoolMetricsAutoConfiguration.DataSourcePoolMetricsConditionalOnBeans.ConditionalOnMeterRegistryBean @ConditionalOnBean (типы: io.micrometer.core.instrument.MeterRegistry; SearchStrategy: все) найден простой бин NestedCondition для DataSourcePoolMetricsAutoConfiguration.DataSourcePoolMetricsConditionalOnBeans.ConditionalOnDataSourceBean @ConditionalOnBean (типы: javax.sql.DataSource; SearchStrategy: все) найден bean-компонент «dataSource»
Фильтр 'webMetricsFilter' успешно настроен
Обновление
Я вижу, что есть CloudWatchMetricAutoConfiguration
, и я ожидаю, что он произведет CloudWatchMetricWriter
Боб, но такого боба нет. Он также должен создать боб AmazonCloudWatchAsync
, но это не так - единственный бин " amazon ", который у нас есть, - amazonS3
.
Вероятная причина
Я обнаружил, что micrometer-spring-legacy:1.1.4
имеет пакет io.micrometer.spring.autoconfigure.export.<system>
с <system>MetricsExportAutoConfiguration
, <system>Properties
, <system>PropertiesConfigAdapter
для каждой поддерживаемой системы - но не CloudWatch. Эти классы делают * Registry доступным как bean-компонент Spring, и, поскольку нет поддержки реестра cloudwatch, он не доступен как spring bean.