mongodb - MongoDB 的 Spring Boot Micrometer 指标
问题描述
我使用 spring boot 2.2.5 + micrometer 1.3.5 + starter-data-mongodb
在“io.micrometer.core.instrument.binder.mongodb”下,我可以看到 2 个类 CommandListener 和 ConnectionPoolListener。我想知道这些服务的目的是什么?
在执行器指标端点中,mongo 指标不可用。
如何在执行器中启用 mongodb 的指标?例如, actuator 自动显示 RabbitMQ 的几个指标。在 MongoDB 的情况下,我也期待类似的东西。我应该创建自己的指标吗?
解决方案
为了启用 Spring Boot 应用其 AutoConfiguration,我建议使用定制器模式:
科特林:
@Configuration
class MongoConfiguration {
@Bean
fun mongoClientSettingsBuilderCustomizer(meterRegistry: MeterRegistry) =
MongoClientSettingsBuilderCustomizer {
it.addCommandListener(MongoMetricCommandListener(meterRegistry))}
}
爪哇:
@Configuration
public class MongoConfiguration {
@Bean
public MongoClientSettingsBuilderCustomizer mongoClientSettingsBuilderCustomizer(MeterRegistry meterRegistry) {
return builder -> builder.addCommandListener(new MongoMetricsCommandListener(meterRegistry));
}
}
请注意,您目前在指标中既不会看到与 spring 数据存储库的关系,也不会看到与 mongo 集合的关系。查看未解决的问题
编辑(2021 年 7 月 30 日):
这些问题已得到修复,因此您可能会在当前版本中获得收集指标。
推荐阅读
- ios - 转换到根视图控制器的问题
- css - 是否有 CSS 页面 URL 选择器?
- ffmpeg - 如何将 3 个视频合并到一个屏幕中并进行模糊处理
- delphi - 与 TIdTCPServer 同时发送和接收
- python - 计算列表列表的平均长度
- java - jasper 2.0.5 中的子报告未显示在主报告 pdf 中
- android - 从处理程序更新 UI
- android - 将 Android 应用程序从 GCM 迁移到 FCM 云消息传递
- javascript - 我正在使用 socket.io 但客户端和服务器之间没有通信
- python-3.x - 如何使用 gspread (Python 3) 获取单元格的背景颜色