DM 监控指标

使用 TiUP 部署 DM 集群的时候,会默认部署一套监控系统

Task

在 Grafana dashboard 中,DM 默认名称为 DM-task

Overview

overview 下包含运行当前选定 task 的所有 DM-worker/master instance/source 的部分监控指标。当前默认告警规则只针对于单个 DM-worker/master instance/source。

metric 名称说明告警说明告警级别
task state迁移子任务的状态N/AN/A
storage capacityrelay log 占有的磁盘的总容量N/AN/A
storage remainrelay log 占有的磁盘的剩余可用容量N/AN/A
binlog file gap between master and relayrelay 与上游 master 相比落后的 binlog file 个数N/AN/A
load progressload unit 导入过程的进度百分比,值变化范围为:0% - 100%N/AN/A
binlog file gap between master and syncer与上游 master 相比 binlog replication unit 落后的 binlog file 个数N/AN/A
shard lock resolving当前子任务是否正在等待 shard DDL 迁移,大于 0 表示正在等待迁移N/AN/A

Operate error

metric 名称说明告警说明告警级别
before any operate error在进行操作之前出错的次数N/AN/A
source bound error数据源绑定操作出错次数N/AN/A
start error子任务启动的出错次数N/AN/A
pause error子任务暂停的出错次数N/AN/A
resume error子任务恢复的出错次数N/AN/A
auto-resume error子任务自动恢复的出错次数N/AN/A
update error子任务更新的出错次数N/AN/A
stop error子任务停止的出错次数N/AN/A

HA 高可用

metric 名称说明告警说明告警级别
number of dm-masters start leader components per minute每分钟内 DM-master 尝试启用 leader 相关组件次数N/AN/A
number of workers in different state不同状态下有多少个 DM-worker存在离线的 DM-worker 超过一小时critical
workers’ stateDM-worker 的状态N/AN/A
number of worker event error不同类型的 DM-worker 错误出现次数N/AN/A
shard ddl error per minute每分钟内不同类型的 shard DDL 错误次数发生 shard DDL 错误critical
number of pending shard ddl未完成的 shard DDL 数目存在未完成的 shard DDL 数目超过一小时critical

Task 状态

metric 名称说明告警说明告警级别
task state迁移子任务的状态当子任务状态处于 Paused 超过 20 分钟时critical

Dump/Load unit

下面 metrics 仅在 task-modefull 或者 all 模式下会有值。

metric 名称说明告警说明告警级别
dump progressdump unit 导出过程的进度百分比,值变化范围为:0% - 100%N/AN/A
load progressload unit 导入过程的进度百分比,值变化范围为:0% - 100%N/AN/A
checksum progressload unit 导入完成后,数据校验过程的进度百分比,值变化范围为:0% - 100%N/AN/A
total bytes for load unitload unit 导入过程中源数据解析、生成数据 KV、生成索引 KV 阶段处理的字节数N/AN/A
chunk process durationload unit 处理数据源文件 chunk 的耗时,单位:秒N/AN/A
dump process exits with errordump unit 在 DM-worker 内部遇到错误并且退出了立即告警critical
load process exits with errorload unit 在 DM-worker 内部遇到错误并且退出了立即告警critical

Binlog replication

下面 metrics 仅在 task-modeincremental 或者 all 模式下会有值。

metric 名称说明告警说明告警级别
remaining time to sync预计 Syncer 还需要多少分钟可以和上游 master 完全同步,单位:分钟N/AN/A
replicate lag gauge上游 master 到下游的 binlog 复制延迟时间,单位:秒N/AN/A
replicate lag histogram上游 master 到下游的 binlog 复制延迟分布,单位:秒。注意由于统计机制不同,数据会有误差N/AN/A
process exist with errorbinlog replication unit 在 DM-worker 内部遇到错误并且退出了立即告警critical
binlog file gap between master and syncer与上游 master 相比落后的 binlog file 个数落后 binlog file 个数超过 1 个(不含 1 个)且持续 10 分钟时critical
binlog file gap between relay and syncer与 relay 相比落后的 binlog file 个数落后 binlog file 个数超过 1 个(不含 1 个)且持续 10 分钟时critical
binlog event QPS单位时间内接收到的 binlog event 数量 (不包含需要跳过的 event)N/AN/A
skipped binlog event QPS单位时间内接收到的需要跳过的 binlog event 数量N/AN/A
read binlog event durationbinlog replication unit 从 relay log 或上游 MySQL 读取 binlog 的耗时,单位:秒N/AN/A
transform binlog event durationbinlog replication unit 解析 binlog 并将 binlog 转换成 SQL 语句的耗时,单位:秒N/AN/A
dispatch binlog event durationbinlog replication unit 调度一条 binlog event 的耗时,单位:秒N/AN/A
transaction execution latencybinlog replication unit 执行事务到下游的耗时,单位:秒N/AN/A
binlog event sizebinlog replication unit 从 relay log 或上游 MySQL 读取的单条 binlog event 的大小N/AN/A
DML queue remain length剩余 DML job 队列的长度N/AN/A
total sqls jobs单位时间内新增的 job 数量N/AN/A
finished sqls jobs单位时间内完成的 job 数量N/AN/A
statement execution latencybinlog replication unit 执行语句到下游的耗时,单位:秒N/AN/A
add job durationbinlog replication unit 增加一条 job 到队列的耗时,单位:秒N/AN/A
DML conflict detect durationbinlog replication unit 检测 DML 间冲突的耗时,单位:秒N/AN/A
skipped event durationbinlog replication unit 跳过 binlog event 的耗时,单位:秒N/AN/A
unsynced tables当前子任务内还未收到 shard DDL 的分表数量N/AN/A
shard lock resolving当前子任务是否正在等待 shard DDL 迁移,大于 0 表示正在等待迁移N/AN/A
ideal QPS在 DM 运行耗时为 0 时可以达到的最高 QPSN/AN/A
binlog event row一个 binlog 事件中的行数N/AN/A
finished transaction total执行完毕的事务数量N/AN/A
replication transaction batch执行到下游的事务里中 sql 行数N/AN/A
flush checkpoints time interval检查点刷新时间间隔,单位:秒N/AN/A

Relay log

metric 名称说明告警说明告警级别
storage capacityrelay log 占有的磁盘的总容量N/AN/A
storage remainrelay log 占有的磁盘的剩余可用容量小于 10G 的时候需要告警critical
process exits with errorrelay log 在 DM-worker 内部遇到错误并且退出了立即告警critical
relay log data corruptionrelay log 文件损坏的个数立即告警emergency
fail to read binlog from masterrelay 从上游的 MySQL 读取 binlog 时遇到的错误数立即告警critical
fail to write relay logrelay 写 binlog 到磁盘时遇到的错误数立即告警critical
binlog file indexrelay log 最大的文件序列号。如 value = 1 表示 relay-log.000001N/AN/A
binlog file gap between master and relayrelay 与上游 master 相比落后的 binlog file 个数落后 binlog file 个数超过 1 个(不含 1 个)且持续 10 分钟时critical
binlog posrelay log 最新文件的写入 offsetN/AN/A
read binlog event durationrelay log 从上游的 MySQL 读取 binlog 的时延,单位:秒N/AN/A
write relay log durationrelay log 每次写 binlog 到磁盘的时延,单位:秒N/AN/A
binlog event sizerelay log 写到磁盘的单条 binlog 的大小N/AN/A

Instance

在 Grafana dashboard 中,instance 的默认名称为 DM-instance

Relay log

metric 名称说明告警说明告警级别
storage capacityrelay log 占有的磁盘的总容量N/AN/A
storage remainrelay log 占有的磁盘的剩余可用容量小于 10G 的时候需要告警critical
process exits with errorrelay log 在 DM-worker 内部遇到错误并且退出了立即告警critical
relay log data corruptionrelay log 文件损坏的个数立即告警emergency
fail to read binlog from masterrelay 从上游的 MySQL 读取 binlog 时遇到的错误数立即告警critical
fail to write relay logrelay 写 binlog 到磁盘时遇到的错误数立即告警critical
binlog file indexrelay log 最大的文件序列号。如 value = 1 表示 relay-log.000001N/AN/A
binlog file gap between master and relayrelay 与上游 master 相比落后的 binlog file 个数落后 binlog file 个数超过 1 个(不含 1 个)且持续 10 分钟时critical
binlog posrelay log 最新文件的写入 offsetN/AN/A
read binlog durationrelay log 从上游的 MySQL 读取 binlog 的时延,单位:秒N/AN/A
write relay log durationrelay log 每次写 binlog 到磁盘的时延,单位:秒N/AN/A
binlog sizerelay log 写到磁盘的单条 binlog 的大小N/AN/A

task

metric 名称说明告警说明告警级别
task state迁移子任务的状态当子任务状态处于 paused 超过 10 分钟时critical
load progressload unit 导入过程的进度百分比,值变化范围为:0% - 100%N/AN/A
binlog file gap between master and syncer与上游 master 相比 binlog replication unit 落后的 binlog file 个数N/AN/A
shard lock resolving当前子任务是否正在等待 shard DDL 迁移,大于 0 表示正在等待迁移N/AN/A