#spring-boot #spring-integration
#spring-boot #spring-интеграция
Вопрос:
У меня есть реестр метрик prometheus и зарегистрированные компоненты captor, как показано ниже:
"prometheusMeterRegistry": {
"aliases": [],
"scope": "singleton",
"type": "io.micrometer.prometheus.PrometheusMeterRegistry",
"resource": "class path resource [org/springframework/boot/actuate/autoconfigure/metrics/export/prometheus/PrometheusMetricsExportAutoConfiguration.class]",
"dependencies": [
"prometheusConfig",
"collectorRegistry",
"micrometerClock"
]
},
"integrationMicrometerMetricsCaptor": {
"aliases": [],
"scope": "singleton",
"type": "org.springframework.integration.support.management.micrometer.MicrometerMetricsCaptor",
"resource": null,
"dependencies": []
},
Однако, когда я проверяю actuator/prometheus
конечную точку, я не вижу никаких показателей для MessageHandler
, MessageChannel
и MessageSource
которые упоминаются здесь. Доступны только spring-integeration
следующие показатели:
spring_integration_sources 1.0
spring_integration_handlers 17.0
spring_integration_channels 15.0
Я также прогонял данные через свои потоки, но все еще не вижу метрик. Чего мне не хватает?
Комментарии:
1. Есть ли шансы поиграть с простым проектом Spring Boot? Что такое Prometheus? Нужно ли мне устанавливать что-то особенное?
2. Prometheus -> micrometer.io/docs/registry/prometheus Пружинный ботинок -> docs.spring.io/spring-boot/docs/current/reference/html /. … Должен ли я попробовать то же самое на одном из образцов из spring-integration-samples и отправить вам результаты?
3. Спасибо. Итак, с каким проектом можно поиграть, пожалуйста?
4. Нет, было бы лучше иметь отдельный простой проект, чтобы сосредоточиться только на проблеме. Это может ввести в заблуждение с образцом…
5. Я когда-нибудь создам его и поделюсь им, как мне им поделиться?
Ответ №1:
Спасибо за такой отличный образец!
Итак, ваша проблема здесь:
<!-- Enable Spring Integration Metrics -->
<int:management/>
Прежде всего, вы не должны этого делать, поскольку Spring Boot автоматически настраивает это для нас. (Вероятно, нам нужно улучшить документы Spring Boot, чтобы упомянуть эту функцию).
Во-вторых, вы все еще можете это сделать, но вам нужно использовать эту опцию:
<xsd:attribute name="default-counts-enabled" use="optional">
<xsd:annotation>
<xsd:documentation>
The default value for components that don't match 'counts-enabled-patterns'.
Defaults to false, or true when an Integration MBean Exporter is provided.
</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
и установите для него значение true
.
В текущей 5.4
версии Spring Integration она уже устарела. Мы определенно собираемся полностью удалить его в следующем 6.0
.
Комментарии:
1. Большое вам спасибо, высоко ценю вашу поддержку!