我有一个使用 Micrometer 框架的 SpringBoot 2 应用程序、一个 Postgresql 数据库、HikariCP 作为连接池和一个 Influxdb 来存储指标。应用程序已配置为使用 micrometer-registry-influx
依赖项。
向应用程序添加一些指标并启动后,在 SpringBoot 自动提供的 HikariCP 连接池指标的日志中可以看到以下错误:
2018-05-23 10:24:33.594 ERROR 23220 --- [pool-1-thread-1] i.micrometer.influx.InfluxMeterRegistry : failed to send metrics:
{"error":"partial write: unable to parse 'hikaricp_connections,pool=HikariPool-1,metric_type=gauge value=NaN 1527063873587': invalid number
unable to parse 'hikaricp_connections_active,pool=HikariPool-1,metric_type=gauge value=NaN 1527063873587': invalid number
nunable to parse 'hikaricp_connections_idle,pool=HikariPool-1,metric_type=gauge value=NaN 1527063873588': invalid number
unable to parse 'hikaricp_connections_pending,pool=HikariPool-1,metric_type=gauge value=NaN 1527063873588': invalid number dropped=0"}
指标值仅记录为 Nan
最佳答案
此错误已在 HikariCPm 的这次提交中修复,该版本已作为版本 2.7.9 发布并与 SpringBoot 2.0.2 捆绑在一起
https://github.com/brettwooldridge/HikariCP/issues/1033
将我的应用程序升级到 SpringBoot 2.0.2 后,错误不再出现,并且指标在 InfluxDB 中看起来也正常。
关于java - 使用 Micrometer 指标运行 SpringBoot 2 应用程序时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50618121/