如何通过JMX导出导出Tomcat的连接池指标,如NumActive、NumIdle、MaxTotal?

问题描述 投票:0回答:1

在 JConsole 中,我找到了我想要抓取到 Prometheus 的连接池的指标:

Catalina:类型=数据源,类= javax.sql.DataSource,名称=“jdbc/postgres”,连接池=连接

当我设置用于导出的 yml 文件时,我没有将指标放入 /metrics 页面,并且它们不会被刮掉

我尝试使用图案

- pattern: 'Catalina:type=DataSource,class=javax.sql.DataSource,name="jdbc/postgres"<>NumIdle: ([0-9]+([.][0-9]+)?)'
  name: jvm_process_jdbc_num_idle
  value: $1
  type: GAUGE
tomcat prometheus connection-pooling jconsole jmx-exporter
1个回答
0
投票

此模式正在发挥作用:

- pattern: 'Catalina<type=DataSource, class=javax.sql.DataSource, name="jdbc/postgres", connectionpool=connections><>(\w+): (\d+)'
  name: jvm_process_jdbc_$1
  value: $2
  type: GAUGE

它从该 MBean 的字段中生成所有数字指标。

注:

    JConsole iterface 中的
  1. <
    >
    代替
    :
  2. 参数分隔符
    , 
    之后的空格以及数值之前
    : 
    之后的空格
  3. 检查 /metrics 页面时稍等一下,它不仅在页面加载后出现,对我来说需要几十秒才能看到这些指标。在此之前,在流程开始后的第一秒内,我还没有看到它们
© www.soinside.com 2019 - 2024. All rights reserved.