数据校验
适用版本:1.0.0。任务 → 新增/编辑 → 插件 DATA_CHECK。
入口与准备
使用 ADMIN 创建、配置和保存任务;ADMIN 或 OPERATOR 可以执行已发布定义,详细日志和输入输出变量由 ADMIN 查看。资源必须启用并可被执行节点访问。任务公共超时、重试和版本规则见任务,角色动作见权限矩阵。
字段说明
“默认值”指 1.0.0 新建表单的初始值;空表示尚未填写,不表示必填项可以省略。显示条件决定当前分支中是否出现字段。“条件必填”只在对应分支启用时要求填写。
查询
| 字段 | 是否必填 | 默认值 | 显示条件 | 作用范围 |
|---|---|---|---|---|
| 数据库资源 | 必填 | 无 | 始终 | 当前任务版本 |
| 查询超时(秒) | 有默认值 | 30 | 始终 | 当前任务版本 |
- 数据库资源:执行检查 SQL 的业务数据库资源。
- 查询超时(秒):1–3600 秒,每项查询。
检查项
| 字段 | 是否必填 | 默认值 | 显示条件 | 作用范围 |
|---|---|---|---|---|
| 名称 | 必填 | 空 | 每个检查项 | 当前任务版本 |
| 查询 SQL | 必填 | 空 | 每个检查项 | 当前任务版本 |
| 类型 | 选择 | NORMAL | 每个检查项 | 当前任务版本 |
| 级别 | 选择 | ERROR | 每个检查项 | 当前任务版本 |
| 比较条件 | 条件必填 | EQ | 非 EMPTY | 当前任务版本 |
| 期望值 | 条件必填 | 空 | 非 EMPTY 且非 BETWEEN | 当前任务版本 |
| 下界(包含) | 条件必填 | 空 | BETWEEN | 当前任务版本 |
| 上界(包含) | 条件必填 | 空 | BETWEEN | 当前任务版本 |
| 输出实际值变量(可选) | 可选 | 空 | 每个检查项 | 当前任务版本 |
- 名称:名称不能重复;1–100 个检查项。
- 查询 SQL:只读查询。
- 类型:NORMAL 比较首个值;COUNT 比较返回行数,不是 SQL COUNT(*) 的标量。
- 级别:ERROR/WARN。
- 比较条件:EXISTS 只支持 EQ/NE。
- 期望值:EXISTS 使用布尔值;保持数值/布尔类型。
- 下界(包含):含下界。
- 上界(包含):含上界。
- 输出实际值变量(可选):开启变量结果处理后输出实际值。
结果处理
| 字段 | 是否必填 | 默认值 | 显示条件 | 作用范围 |
|---|---|---|---|---|
| 导出结果变量 | 可选 | false | 始终 | 当前任务版本 |
| 发送通知 | 可选 | false | 始终 | 当前任务版本 |
| 发送通知 | 条件必填 | null | 发送通知 | 当前任务版本 |
| 全部检查通过时也通知 | 可选 | false | 发送通知 | 当前任务版本 |
- 导出结果变量:开启后加入 type=VARIABLE 的结果处理器,将检查实际值导出为变量。
- 发送通知:开启后加入 type=NOTIFY 的结果处理器,用于发送检查结果通知。
- 发送通知:type=NOTIFY 时选择发送检查结果的通知配置。
- 全部检查通过时也通知:type=NOTIFY 时,控制全部检查通过是否仍发送通知。
使用边界
- NORMAL比较查询首个值;COUNT比较结果集行数。SELECT COUNT(*)返回的业务计数应使用NORMAL。
- handlers为数组;开启导出变量会加入type=VARIABLE,开启通知会加入type=NOTIFY。通知配置和成功通知开关位于该NOTIFY项的params中。
典型配置:校验订单表恰有 3 行
按下表填写界面,资源名称需替换为自己的已启用资源。这是配置说明,不是可直接导入的 JSON。完整数据准备与执行步骤见本节末尾教程。
先准备三行orders;失败变体使用独立orders_short表,不删除原三行数据。
| 配置项 | 填写内容 |
|---|---|
| 数据库资源 | 包含三行orders的教程业务库 |
| 检查项名称 | three-orders |
| 查询SQL | SELECT COUNT(*) FROM orders |
| 类型 | NORMAL |
| 比较条件 | EQ |
| 期望值类型 | 数值 |
| 期望值 | 3 |
| 级别 | ERROR |
预期结果: 三行时通过;独立副本改成两行后失败。
跟做完整教程。保存定义后再手动执行;实例状态与业务结果分别核对。
真实界面
技术字段对照
以下键名用于导入配置、接口或排障。规则中的 [] 表示集合元素;不需要把这些键名填入界面标签。
| 类别 / 字段 | 技术键名 |
|---|---|
| 查询 / 数据库资源 | resourceId |
| 查询 / 查询超时(秒) | queryTimeoutSeconds |
| 检查项 / 名称 | checks[].name |
| 检查项 / 查询 SQL | checks[].sql |
| 检查项 / 类型 | checks[].type |
| 检查项 / 级别 | checks[].level |
| 检查项 / 比较条件 | checks[].compareType |
| 检查项 / 期望值 | checks[].expected |
| 检查项 / 下界(包含) | checks[].minValue |
| 检查项 / 上界(包含) | checks[].maxValue |
| 检查项 / 输出实际值变量(可选) | checks[].variable |
| 结果处理 / 导出结果变量 | handlers[].type |
| 结果处理 / 发送通知 | handlers[].type |
| 结果处理 / 发送通知 | handlers[].params.notifyConfigId |
| 结果处理 / 全部检查通过时也通知 | handlers[].params.notifyOnSuccess |
