Spring Boot 2.3.3 から JMX でメトリクスを収集する
先日、Spring Boot のバージョン 2.2.3 を利用した際に、以前のように JMX でメトリクスを収集出来なかったので、対処を行いました。 以前記事を書いたときは、バージョン 1.5.2 となっていました。
application.yml へ追加する必要があったのは、以下の2つです。
Tomcatの稼働情報
利用している組み込みTomcatは、標準でMBeanが登録されないので、有効にします。
server.tomcat.mbeanregistry.enabled: true
データベス接続情報
以前は Tomcat JDBC Pool を利用していましたが、HikariCP を利用するようになった影響のようです。
spring.datasource.hikari.register-mbeans: true
あわせて、Zabbix で監視する場合、接続数・アイドル数のアイテムのキーを以下のように変更しました。
jmx["org.apache.tomcat.jdbc.pool.jmx:name=dataSourceMBean,type=ConnectionPool",NumActive] jmx["org.apache.tomcat.jdbc.pool.jmx:name=dataSourceMBean,type=ConnectionPool",NumIdle]