DM 监控指标

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

注意:

目前只有 DM-worker 提供了 metrics,DM-master 暂未提供。

Task

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

overview

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

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

task 状态

metric 名称 说明 告警说明
task state 同步子任务的状态 当子任务状态处于 paused 超过 10 分钟时

Relay log

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

Dumper

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

metric 名称 说明 告警说明
dump process exits with error dumper 在 DM-worker 内部遇到错误并且退出了 立即告警

Loader

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

metric 名称 说明 告警说明
load progress loader 导入过程的进度百分比,值变化范围为:0% - 100% N/A
data file size loader 导入的全量数据中数据文件(内含 INSERT INTO 语句)的总大小 N/A
load process exits with error loader 在 DM-worker 内部遇到错误并且退出了 立即告警
table count loader 导入的全量数据中 table 的数量总和 N/A
data file count loader 导入的全量数据中数据文件(内含 INSERT INTO 语句)的数量总和 N/A
latency of execute transaction loader 在执行事务的时延,单位:秒 N/A
latency of query loader 执行 query 的耗时,单位:秒 N/A

Binlog replication

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

metric 名称 说明 告警说明
remaining time to sync 预计 syncer 还需要多少分钟可以和 master 完全同步,单位:分钟 N/A
replicate lag master 到 syncer 的 binlog 复制延迟时间,单位:秒 N/A
process exist with error binlog replication 在 DM-worker 内部遇到错误并且退出了 立即告警
binlog file gap between master and syncer 与上游 master 相比落后的 binlog file 个数 落后 binlog file 个数超过 1 个(不含 1 个)且持续 10 分钟时
binlog file gap between relay and syncer 与 relay 相比落后的 binlog file 个数 落后 binlog file 个数超过 1 个(不含 1 个)且持续 10 分钟时
binlog event qps 单位时间内接收到的 binlog event 数量 (不包含需要跳过的 event) N/A
skipped binlog event qps 单位时间内接收到的需要跳过的 binlog event 数量 N/A
cost of binlog event transform syncer 解析并且转换 binlog 成 SQLs 的耗时,单位:秒 N/A
total sqls jobs 单位时间内新增的 job 数量 N/A
finished sqls jobs 单位时间内完成的 job 数量 N/A
execution latency syncer 执行 transaction 到下游的耗时,单位:秒 N/A
unsynced tables 当前子任务内还未收到 shard DDL 的分表数量 N/A
shard lock resolving 当前子任务是否正在等待 shard DDL 同步,大于 0 表示正在等待同步 N/A

Instance

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

Relay log

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

task

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