将 JvmHeapSize 从 Talend ESB 显示到 Prometheus
Posted
技术标签:
【中文标题】将 JvmHeapSize 从 Talend ESB 显示到 Prometheus【英文标题】:Show JvmHeapSize from Talend ESB to Prometheus 【发布时间】:2019-12-03 15:14:05 【问题描述】:我想从 Talend ESB 获取 jvm 指标并将指标显示给 Grafana。
我可以使用 JConsole 轻松查看它们,但我不知道如何将它们暴露给 Grafana。
我的想法是使用 JMX Exporter 获取指标并将它们公开给 prometheus,然后在 Grafana 上显示它们,但是当我尝试使用 JMX Exporter 时,我遇到了启动它的问题。
C:\Users\admin\Desktop\jmx_exporter-master>java -javaagent:./jmx_prometheus_javaagent-0.12.0.jar=9090:talend-config.yml 打开 zip 文件时出错或缺少 JAR 清单:./jmx_prometheus_javaagent-0.12.0.jar
一些想法或示例如何从 Talend ESB 获取 JVM 堆大小并将它们公开给 Prometheus?
【问题讨论】:
【参考方案1】:克隆这个项目:https://github.com/prometheus/jmx_exporter 然后导航到 jmx_prometheus_httpserver 文件夹,将 pom.xml 中的版本更改为 0.12.0 然后执行 mvn clean install 之后你可以在目标文件夹中找到jmx_prometheus_httpserver-0.12.0-jar-with-dependencies.jar。
创建 talend-config.yml 文件并将以下行添加到其中:
---
startDelaySeconds: 0
#hostPort:
username: tadmin
password: tadmin
jmxUrl: service:jmx:rmi://localhost:44444/jndi/rmi://localhost:1099/karaf-trun
ssl: false
lowercaseOutputName: false
lowercaseOutputLabelNames: false
保存并执行此命令:
java -jar jmx_prometheus_httpserver-0.12.0-jar-with-dependencies.jar localhost:9595 talend-config.yml
如果您愿意,您可以更改 ip 和端口。 执行命令后,您可以访问此链接上的指标:
http://localhost:9595/metrics
【讨论】:
你拯救了我的一天,谢谢以上是关于将 JvmHeapSize 从 Talend ESB 显示到 Prometheus的主要内容,如果未能解决你的问题,请参考以下文章
使用 talend 将数据从 as400 加载到雪花时数据发生变化
Talend - 从 xml 文件中读取 Ldap 的 xml 架构