Flink pushGateway监控

java 复制代码
metrics:
  reporter:
    promgateway:
      factory:
        class: org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporterFactory
      hostUrl: http://hadoop31:9091
      jobName: flink-application
      randomJobNameSuffix: true
      deleteOnShutdown: false
      interval: 30 SECONDS

2、添加依赖

flink-metrics-prometheus-1.20.0.jar

3、启动观察关键日志

java 复制代码
LOG.info(
                "Configured PrometheusPushGatewayReporter with {hostUrl:{}, jobName:{}, randomJobNameSuffix:{}, deleteOnShutdown:{}, groupingKey:{}}",
                hostUrl,
                jobName,
                randomSuffix,
                deleteOnShutdown,
                groupingKey);

https://nightlies.apache.org/flink/flink-docs-release-2.0/docs/ops/metrics/#metric-types

1、作业级指标(Job-Level Metrics)

  • numRestarts: 作业从启动以来的重启次数,反映作业的稳定性。
  • uptime: 作业持续运行时间,用于评估作业的可靠性。
  • downtime: 作业停止运行的时间(如故障恢复期间)。
  • checkpoint 相关指标 *:
    • lastCheckpointSize: 最近一次检查点(Checkpoint)的大小。
    • lastCheckpointDuration: 最近一次检查点的完成耗时。
    • checkpointFailuresPerMinute: 每分钟检查点失败的次数,高值可能意味着资源不足或状态后端问题。

2、任务级指标(Task-Level Metrics)

  • numRecordsIn/Out: 每个任务每秒处理的输入/输出记录数,反映吞吐量。
  • latency : 记录从进入任务到处理完成的延迟,通常分为分位数(如 p50, p95, p99),用于衡量实时性。
  • backPressureTime: 任务因下游处理能力不足而处于背压(Backpressure)状态的时间占比,高值需优化下游性能。
  • bufferQueueLength: 输入缓冲队列的长度,队列过长可能导致延迟增加。

3、操作符级指标(Operator-Level Metrics)

  • numRecordsIn/Out: 每个操作符(如 Map、Filter)处理的记录数。
  • currentInputWatermark: 当前输入数据的水位线(Watermark),用于事件时间处理。
  • processTime: 操作符处理单条记录的平均耗时。
  • stateSize: 操作符状态(如窗口状态)的大小,过大可能影响检查点性能。

4、系统资源指标(Resource Metrics)

  • CPU/Memory 使用率:
    • cpuUsage: 任务管理器(TaskManager)的 CPU 使用率。
    • heapUsed: JVM 堆内存使用量,过高可能导致 GC 停顿。
  • 网络指标:
    • outputQueueLength: 网络输出队列长度,反映跨任务数据传输的负载。
    • numBytesIn/OutPerSecond: 每秒网络传输的字节数。

4、容错与检查点(Fault Tolerance)

  • checkpointAlignmentTime: 检查点对齐时间(等待所有任务同步的时间),过长可能因数据倾斜导致。
  • checkpointStartDelay: 检查点启动延迟,高值可能因资源争用引起。

https://grafana.com/grafana/dashboards/14161-flink-job-metrics/

相关推荐
贝多芬也爱敲代码5 小时前
如何减小ES和mysql的同步时间差
大数据·mysql·elasticsearch
异次元的星星6 小时前
智慧新零售时代:施易德系统平衡技术与人力,赋能门店运营
大数据·零售
深思慎考7 小时前
ElasticSearch与Kibana 入门指南(7.x版本)
大数据·elasticsearch·jenkins
银行数字化转型导师坚鹏8 小时前
如何设计优秀的企业微信私域运营实战培训方案
大数据·python·企业微信
悠闲蜗牛�8 小时前
人工智能时代下的全栈开发:整合AI、大数据与云原生的实践策略
大数据·人工智能·云原生
ml魔力信息9 小时前
活体检测与防伪技术的安全与隐私分析
大数据·人工智能·安全·隐私保护·生物识别·活体检测
数据要素X11 小时前
寻梦数据空间 | 架构篇:从概念到落地的技术实践与突破性创新
大数据·运维·数据仓库·微服务·数据治理·数据中台·可信数据空间
IT学长编程12 小时前
计算机毕业设计 基于EChants的海洋气象数据可视化平台设计与实现 Python 大数据毕业设计 Hadoop毕业设计选题【附源码+文档报告+安装调试】
大数据·hadoop·python·毕业设计·课程设计·毕业论文·海洋气象数据可视化平台
呆呆小金人12 小时前
SQL入门: HAVING用法全解析
大数据·数据库·数据仓库·sql·数据库开发·etl·etl工程师
Elastic 中国社区官方博客14 小时前
如何减少 Elasticsearch 集群中的分片数量
大数据·数据库·elasticsearch·搜索引擎·全文检索