可观察性
Spring Data MongoDB 目前拥有支持 MongoDB 应用程序可观察性的最新代码。但是,这些更改尚未被 Spring Boot(尚未)采用。在应用这些更改之前,如果您希望使用 Spring Data MongoDB 的可观察性功能,则必须执行以下步骤。
-
首先,您必须通过在您的
@SpringBootApplication
类或您的某个配置类中自定义MongoClientSettings
来选择使用 Spring Data MongoDB 的配置设置。示例 1. 注册 MongoDB Micrometer 自定义程序设置@Bean MongoClientSettingsBuilderCustomizer mongoMetricsSynchronousContextProvider(ObservationRegistry registry) { return (clientSettingsBuilder) -> { clientSettingsBuilder.contextProvider(ContextProviderFactory.create(registry)) .addCommandListener(new MongoObservationCommandListener(registry)); }; }
-
您的项目必须包含 **Spring Boot Actuator**。
-
禁用 Spring Boot 自动配置的 MongoDB 命令监听器,并通过将以下属性添加到您的
application.properties
中手动启用跟踪。示例 2. 要应用的自定义设置# 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 的 Observation
API。另请参阅 OpenTelemetry 语义约定 以获取更多参考。