【发布时间】:2020-09-17 08:31:22
【问题描述】:
我正在尝试向 Prometheus 公开 Flink 的内置指标,但不知何故,Prometheus 无法识别目标 - JMX 和 PrometheusReporter。
prometheus.yml 中定义的抓取如下所示:
scrape_configs:
- job_name: node
static_configs:
- targets: ['localhost:9100']
- job_name: 'kafka-server'
static_configs:
- targets: ['localhost:7071']
- job_name: 'flink-jmx'
static_configs:
- targets: ['localhost:8789']
- job_name: 'flink-prom'
static_configs:
- targets: ['localhost:9249']
而我的flink-conf.yml 有以下几行:
#metrics.reporters: jmx, prom
metrics.reporters: jmx, prometheus
#metrics.reporter.jmx.factory.class: org.apache.flink.metrics.jmx.JMXReporterFactory
metrics.reporter.jmx.class: org.apache.flink.metrics.jmx.JMXReporter
metrics.reporter.jmx.port: 8789
metrics.reporter.prom.class: org.apache.flink.metrics.prometheus.PrometheusReporter
metrics.reporter.prom.port: 9249
但是,当运行 WordCount 时,两个 Flink 目标都关闭了
- 在 IntelliJ 中
- 作为罐子:
java -jar target/flink-word-count.jar --input src/main/resources/loremipsum.txt - 作为 Flink 工作:
flink run target/flink-word-count.jar --input src/main/resources/loremipsum.txt
根据 Flink 文档,我不需要任何额外的 JMX 依赖项以及在 flink/lib/ 中为 Prometheus 报告者提供的 flink-metrics-prometheus-1.10.0.jar 的副本。
我做错了什么?缺少什么?
【问题讨论】:
标签: java apache-flink prometheus jmx