查看运行分析

对于开源Flink实时计算引擎的实时实例,可在Dataphin中查看运行分析。运行分析不仅可以支持对实时实例信息进行分析、刷新等操作,也可以展示失败次数、反压情况、各Sink的数据输出、Checkpoint失败次数等信息。

权限说明

  • 查看项目的运行分析,需要具备项目空间权限。

  • 查看Apache Flink Dashboard需要填写用户名和密码,支持超级管理员系统管理员任务负责人、项目运维负责人查看用户名密码提示信息。

运行分析入口

  1. 在Dataphin首页,单击顶部菜单栏的研发。默认进入数据开发页面。

  2. 按照以下操作指引,查看运行分析

    单击运维->选择项目(Dev-Prod 模式需要选择环境)->单击实时实例->单击image图标。

    image

查看运行分析

在运行分析页面您可以查看各指标的运行情况。如下图所示:

image

功能

描述

①时间区域选择

  • 快捷选项:支持最近10分钟、最近1小时,最近6小时、最近1天,最近1周。默认为最近1小时。

  • 自定义时间区间:您可自定义设置时间区间,用自定义时间区间作为选择时间的区间。仅支持选择过去7天[N-7,N]的时间。

去Apache Flink Dashboard刷新

  • 去Apache Flink Dashboard:Apache Flink Dashboard仅支持Flink引擎版本为1.14及以上,单击去Apache Flink Dashboard,您可前往Apache Flink Dashboard进行查看。

    1

    说明

    查看Apache Flink Dashboard,请确保VPC网络互通。

  • 刷新:您可手动刷新数据。

实时监控指标

Flink SQL或Flink Datastream任务,可查看以下指标:overview、checkpoint、IO、watermark、cpu、memory、JVM。各指标详情,请参见实时监控指标说明

指标数据统计

您可查看各指标在当前时间段内的数据情况。

指标统计说明

  • 若所选择的时间区间小于或等于6小时,可查看每分钟采集的所有数据点。

  • 若所选择的时间区间大于6小时且小于等于24小时,可查看从整点开始的每5分钟所采集的数据点,每个数据点为该时间点前5分钟的记数。

  • 若所选择的时间区间大于24小时,可查看从整点开始的每10分钟所采集的数据点,每个数据点为该时间点前10分钟的记数。

实时监控指标说明

overview

监控指标

描述

单位

失败次数

当前时间段内任务的失败次数。

次数

反压情况

当前时间段内该任务是否存在反压。当前任务生产数据的速率比下游任务消费数据的速率要快时,将产生反压。

毫秒(ms)

各Sink的数据输出

Sink输出的情况(TPS)。

毫秒(ms)

Checkpoint失败次数

当前时间段内任务Checkpoint的失败次数。

次数

checkpoint

监控指标

细分类型

描述

单位

Checkpoint总数

(Num of Checkpoints)

Checkpoint总数

totalNumberOfCheckpoints

当前时间段内任务Checkpoint总数。

失败的Checkpoint总数

numberOfFailedCheckpoints

当前时间段内任务失败的Checkpoint数量。

已完成的Checkpoint总数

numberOfCompletedCheckpoints

当前时间段内任务已完成的Checkpoint数量。

正在进行的Checkpoint总数

numberOfInProgressCheckpoints

当前时间段内任务正在进行的Checkpoint数量。

最近Checkpoint持续时间(lastCheckpointDuration

最近一个Checkpoint的持续时间

lastCheckpointDuration

任务最近一个Checkpoint的持续时间。

如果Checkpoint耗时过长或者超时,可能由于状态过大、临时网络原因、Barrier未对齐或者数据存在反压等原因造成。

毫秒(ms)

最近Checkpoint大小

(lastCheckpointSize)

最近一个Checkpoint的大小

lastCheckpointSize

任务最近一次实际上传的Checkpoint大小,可以在Checkpoint有瓶颈时协助分析Checkpoint性能。

字节(Byte)

IO

监控指标

含义

监控指标

描述

单位

每秒输入字节总数。

(numBytesIn PerSecond)

可查看上游流速的输入情况,协助您观察作业流量表现。

每秒本地读取数据的字节数

numBytesInLocal PerSecond

每秒本地读取数据的字节数。

字节(Byte)

每秒远端读取数据的字节数

numBytesInRemote PerSecond

每秒远端读取数据的字节数。

字节(Byte)

每秒本地读取网络缓冲区数据的字节数

numBuffersIn Local PerSecond

每秒本地读取网络缓冲区数据的字节数。

字节(Byte)

每秒远端读取网络缓冲区的数据的字节数

numBuffersIn Remote PerSecond

每秒远端读取网络缓冲区的数据的字节数。

字节(Byte)

每秒输出字节总数。

numBytesOut PerSecond

可查看上游吞吐输出情况,协助您观察作业流量表现。

每秒输出字节数

numBytesOut PerSecond

每秒输出字节数。

字节(Byte)

每秒输出网络缓冲区的数据的字节数

numBuffersOut PerSecond

每秒输出网络缓冲区的数据的字节数。

字节(Byte)

每个Subtask每秒收到和输出的总数据量。

(Task numRecords I/O PerSecond)

可根据该指标判断作业是否存在I/O瓶颈并且通过速率判断严重程度。

每秒接收的记录数

numRecordsIn PerSecond

每秒接收的记录数。

每秒发出的记录数

numRecordsOut PerSecond

每秒发出的记录数。

每个Subtask收到和输出的总数据量。

(Task numRecords I/O)

可根据该指标判断作业是否存在I/O瓶颈。

接收的记录总数

numRecordsIn

接收的记录总数。

发出的记录总数

numRecordsOut

发出的记录总数。

watermark

监控指标

描述

单位

每个任务收到最近一个Watermark的时间

(Task InputWatermark)

每个任务收到最近一个Watermark的时间,说明TM收到数据的延时情况。

毫秒(ms)

cpu

监控指标

描述

单位

单个JM CPU使用率

(JM CPU Load)

单个JM CPU使用率。如果该值长期大于100%,说明CPU很繁忙,负载很高。这可能会影响系统性能,导致系统卡顿、响应时间过长等问题。

单个TM CPU使用率

(TM CPU Load)

单个TM CPU使用率。该值反映Flink对CPU时间片的占用情况,1个Core的CPU用满为100%,4个Core用满为400%。如果该值长期大于100%则说明CPU很繁忙。如果负载很高,但CPU使用率却比较低,可能因为频繁的读写操作导致不可中断睡眠状态的进程过多。

memory

监控指标

细分类型

描述

单位

JM 堆内存

(JM Heap Memory)

JM 堆内存已使用量

(JM Heap Memory Used)

JM 堆内存已使用量。

字节(Byte)

JM 堆内存已申请量

(JM Heap Memory Committed)

JM 堆内存已申请量。

字节(Byte)

JM 堆内存最大可用量

(JM Heap Memory Max)

JM 堆内存最大可用量。

字节(Byte)

JM的非堆内存

(JM NonHeap Memory)

JM 堆外内存已使用量

(JM NonHeap Memory Used)

JM 堆外内存已使用量。

字节(Byte)

JM 堆外内存已申请量

(JM NonHeap Memory Committed)

JM 堆外内存已申请量。

字节(Byte)

JM 堆外内存最大可用量

(JM NonHeap Memory Max)

JM 堆外内存最大可用量。

字节(Byte)

TM 堆内存

(TM Heap Memory)

TM 堆内存已使用量

(TM Heap Memory Used)

TM 堆内存已使用量。

字节(Byte)

TM 堆内存已申请量

(TM Heap Memory Committed)

TM 堆内存已申请量。

字节(Byte)

TM 堆内存最大可用量

(TM Heap Memory Max)

TM 堆内存最大可用量。

字节(Byte)

TM 堆外内存

(TM NonHeap Memory)

TM 堆外内存已使用量

(TM NonHeap Memory Used)

TM 堆外内存已使用量。

字节(Byte)

TM 堆外内存已申请量

(TM NonHeap Memory Committed)

TM 堆外内存已申请量。

字节(Byte)

TM 堆外内存最大可用量

(TM NonHeap Memory Max)

TM 堆外内存最大可用量。

字节(Byte)

JVM

监控指标

描述

单位

JM活跃线程总数

(JM Threads)

JM活跃线程总数。JM线程数过多时,会导致占用过大的内存空间,从而降低作业稳定性。

TM活跃线程总数

(TM Threads)

TM活跃线程总数(按 TM 聚合,多个 TM 多条线)。

JM年轻代垃圾回收器运行时间

(JM GC Time)

JM年轻代垃圾回收器运行时间。长时间GC会导致占用过大内存空间,从而影响作业性能。该指标协助您进行作业诊断,排查作业级别的故障原因。

毫秒(ms)

TM年轻代垃圾回收器运行时间

(TM GC Time)

TM年轻代垃圾回收器运行时间。长时间GC会导致占用过大内存空间,从而影响作业性能。该指标协助您进行作业诊断,排查作业级别的故障原因。

毫秒(ms)

JM年轻代垃圾回收器运行次数

(JM GC Count)

JM年轻代垃圾回收器运行次数。GC次数过多会导致占用过大内存空间,从而影响作业性能。该指标协助您进行作业诊断,排查作业级别的故障原因。

TM年轻代垃圾回收器运行次数

(TM GC Count)

TM年轻代垃圾回收器运行次数。GC次数过多会导致占用过大内存空间,从而影响作业性能。该指标协助您进行作业诊断,排查作业Task级别的故障原因。

TM自JVM启动以来已加载的类总数

(TM ClassLoader)

TM自JVM启动以来已加载的类总数。JM所在的JVM创建后加载类的总数或卸载类的总数过大,会导致占用过大内存空间,从而影响作业性能。

JM自JVM启动以来已加载的类总数

(JM ClassLoader)

JM自JVM启动以来已加载的类总数。JM所在的JVM创建后,加载类的总数或卸载类的总数过大,会导致占用过大的内存空间,从而影响作业性能。