帮你快速理解、总结文档立即下载

事件推送概述

最近更新时间:2026-07-17 16:44:32

我的收藏

什么是事件推送

事件推送是 WeData 提供的项目级事件推送能力。当任务或工作流的运行状态发生变化时,WeData 可以将对应事件主动推送到腾讯云事件总线 EventBridge,再由 EventBridge 根据事件规则将事件路由到下游系统。
事件推送适用于外部系统需要及时感知 WeData 任务或工作流状态的场景,可减少通过 WeData OpenAPI 轮询状态产生的等待和调用开销。
事件推送链路包括以下环节:
1. WeData 产生任务实例或工作流实例状态事件。
2. WeData 推送通道根据事件类型和任务或工作流范围进行过滤。
3. WeData 将符合条件的事件推送到绑定的 EventBridge 自定义事件集。
4. EventBridge 根据事件规则进行匹配,并将事件投递到下游目标。

适用场景

场景
说明
BI 报表刷新
数仓任务执行成功后,通知 BI 系统刷新报表缓存或触发数据拉取
数据质量告警
任务执行失败后,将事件发送到监控平台,触发告警或工单流程
跨平台编排
将 WeData 任务完成事件作为其他调度系统的触发信号
数据应用联动
数据产出完成后,通知数据服务层刷新缓存或更新 API 数据
运营监控大屏
接收任务运行状态事件,更新监控大屏数据
IM 消息通知
任务执行失败后,由下游系统向相关负责人发送通知

WeData 与 EventBridge 的职责

配置位置
主要职责
WeData 推送通道
选择需要产生的事件类型,并按任务或工作流范围进行基础过滤
EventBridge 事件规则
根据事件模式进行进一步匹配和路由
EventBridge 投递目标
将匹配的事件发送到下游腾讯云服务或业务系统

支持的事件类型

WeData 支持任务调度项目和工作流调度项目。不同调度模式下可选择的事件类型不同。

任务实例事件

任务调度项目支持以下事件:
事件类型
事件编码
触发时机
任务开始运行
task.instance.running
任务实例从等待状态变为运行中
任务执行成功
task.instance.succeeded
任务实例执行成功
任务执行失败
task.instance.failed
任务实例重试耗尽后最终执行失败
任务等待资源
task.instance.waiting_resource
任务实例进入等待资源状态
任务等待上游
task.instance.waiting_upstream
任务实例等待上游依赖完成

工作流实例事件

工作流调度项目支持以下事件:
事件类型
事件编码
触发时机
工作流开始运行
workflow.instance.running
工作流实例开始执行
工作流执行成功
workflow.instance.succeeded
工作流内所有任务执行成功
工作流执行失败
workflow.instance.failed
工作流实例执行失败

事件内容说明

WeData 按 CloudEvents 规范将事件推送到 EventBridge。用于配置事件规则的关键字段如下:
字段
说明
source
事件源,固定为 wedata.cloud.tencent
type
EventBridge 中的事件类型,格式为 wedata:{事件编码},例如 wedata:task.instance.succeeded
data
事件业务数据,字段随事件类型变化

任务实例事件的 data 字段

适用事件:task.instance.runningtask.instance.succeededtask.instance.failedtask.instance.waiting_resourcetask.instance.waiting_upstream
字段
类型
必有
说明
projectId
String
WeData 项目 ID
projectName
String
WeData 项目名称
taskId
String
任务 ID
taskName
String
任务名称
taskType
String
任务类型,例如 SHELLHIVE_SQLSPARK_SQLDATA_INTEGRATION
instanceId
String
实例 ID
status
String
实例状态:RUNNINGSUCCEEDEDFAILEDWAITING_RESOURCEWAITING_UPSTREAM
dataTime
String
实例数据时间,格式为 YYYY-MM-DD
scheduledTime
String
计划调度时间,ISO 8601 格式,使用 UTC 时区
startTime
String
实例开始运行时间,ISO 8601 格式,使用 UTC 时区;等待类状态可能为空
endTime
String
实例结束时间,ISO 8601 格式,使用 UTC 时区;仅成功或失败状态有值
duration
Integer
运行耗时,单位为秒;仅成功或失败状态有值
retryCount
Integer
已重试次数;仅失败状态有值
errorMessage
String
失败原因摘要;仅失败状态有值,最长 1024 个字符
inChargeId
String
任务负责人 ID
inChargeName
String
任务负责人名称
folderId
String
任务所在文件夹 ID
folderName
String
任务所在文件夹路径
resourceGroupId
String
任务使用的资源组 ID
tenantId
String
租户 ID
region
String
WeData 项目所在地域

工作流实例事件的 data 字段

适用事件:workflow.instance.runningworkflow.instance.succeededworkflow.instance.failed
字段
类型
必有
说明
projectId
String
WeData 项目 ID
projectName
String
WeData 项目名称
workflowId
String
工作流 ID
workflowName
String
工作流名称
instanceId
String
工作流实例 ID
status
String
工作流实例状态:RUNNINGSUCCEEDEDFAILED
scheduledTime
String
计划调度时间,ISO 8601 格式,使用 UTC 时区
startTime
String
工作流开始运行时间
endTime
String
工作流结束时间;仅成功或失败状态有值
duration
Integer
运行耗时,单位为秒
totalTaskCount
Integer
工作流内任务总数
succeededTaskCount
Integer
已成功的任务数
failedTaskCount
Integer
已失败的任务数
failedTaskNames
String 数组
失败的任务名称列表;仅失败状态有值
errorMessage
String
工作流失败原因摘要;仅失败状态有值
inChargeId
String
工作流负责人 ID
inChargeName
String
工作流负责人名称
tenantId
String
租户 ID
region
String
WeData 项目所在地域

测试事件的 data 字段

执行测试推送时,EventBridge 中的事件类型为 wedata:test.connectivity
字段
类型
说明
projectId
String
WeData 项目 ID
projectName
String
WeData 项目名称
channelId
String
推送通道 ID
channelName
String
推送通道名称
testTime
String
测试发起时间
message
String
固定值 This is a connectivity test event from WeData.

使用限制

单个项目最多创建 10 条推送通道。
项目管理员默认拥有事件推送相关权限。项目也可以通过成员与角色管理,为自定义角色配置事件推送下的“推送通道”和“推送日志”权限;用户可执行的操作以其角色权限为准。
推送日志默认展示近 24 小时的记录,单次最长可查询近 7 天;超过 7 天的日志会自动清理。
EventBridge 的事件规则数、投递目标数、消息大小和投递频率等限制由 EventBridge 维护,请以 EventBridge 控制台和官方文档为准。

相关文档