Observability
-
启用 Spring Data MongoDB 的配置设置。
-
注册 MongoDB Micrometer 自定义程序设置。
-
包含 Spring Boot Actuator。
-
禁用 Spring Boot 的自动配置 MongoDB 命令监听器并手动启用跟踪。
Spring Data MongoDB 目前拥有最最新的代码,可在您的 MongoDB 应用程序中支持可观察性。但是,Spring Boot(尚未)采用这些更改。在应用这些更改之前,如果您希望使用 Spring Data MongoDB 风格的可观察性,则必须执行以下步骤。
-
首先,您必须通过自定义
MongoClientSettings
来选择 Spring Data MongoDB 的配置设置,方法是通过@SpringBootApplication
类或其中一个配置类。.Registering MongoDB Micrometer customizer setup
@Bean
MongoClientSettingsBuilderCustomizer mongoMetricsSynchronousContextProvider(ObservationRegistry registry) {
return (clientSettingsBuilder) -> {
clientSettingsBuilder.contextProvider(ContextProviderFactory.create(registry))
.addCommandListener(new MongoObservationCommandListener(registry));
};
}
-
您的项目必须包含 Spring Boot Actuator。
-
通过添加以下属性到您的
application.properties
中,禁用 Spring Boot 自动配置的 MongoDB 命令监听程序,并手动启用追踪。.Custom settings to apply
# Disable Spring Boot's autoconfigured tracing
management.metrics.mongo.command.enabled=false
# Enable it manually
management.tracing.enabled=true
确保添加了配置您正在使用的跟踪器的任何其他相关设置,这些设置基于 Micrometer 参考文档。
现在应该可以了!你正在运行带有 Spring Data MongoDB 使用场景的 Spring Observability’s Observation
API。有关更多参考,另请参阅 OpenTelemetry Semantic Conventions。