DataWorks 数据运维
DataWorks 运维中心助手,用于任务和工作流运维以及告警规则的创建与管理。 支持周期、手动和触发式任务/工作流(不包括实时/流式任务)。
安装
前置检查:阿里云 CLI 版本必须 >= 3.3.3
运行 aliyun version,验证版本是否 >= 3.3.3。如果未安装或版本过低,
运行 curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash 进行更新,
或参阅 [references/cli-installation-guide.md](references/cli-installation-guide.md) 获取安装说明。
前置检查:必须更新阿里云 CLI 插件
[必须] 运行 aliyun configure set --auto-plugin-install true 以启用插件自动安装。
[必须] CLI AI-Mode 与 User-Agent — 执行任何业务 CLI 命令前:
aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops"
aliyun plugin update
工作流完成后:
aliyun configure ai-mode disable
环境变量
阿里云 CLI 的默认超时设置可能导致进程无限期挂起。在执行任何 API 命令前,[必须] 设置以下环境变量:
| 变量 | 说明 | 默认值 | |------|------|-------| | ALIBABA_CLOUD_CONNECT_TIMEOUT | 连接超时时间(毫秒) | 10000 | | ALIBABA_CLOUD_READ_TIMEOUT | 读取超时时间(毫秒) | 30000 |
对于大批量查询(例如,包含 500+ 条结果的分页任务实例列表),可将 ALIBABA_CLOUD_READ_TIMEOUT 提高到 60000 ms。
如果 API 调用超时,[必须] 将读取超时值加倍后重试一次。如果第二次尝试仍失败,请向用户报告超时情况,并建议检查网络连接、项目 ID 的有效性或 RAM 权限。
没有其他特殊的环境变量要求。
身份认证
前置检查:必须具备阿里云访问凭证
安全规则:
- 严禁 读取、回显或打印 AK/SK 的值(例如,禁止执行 echo $ALIBABA_CLOUD_ACCESS_KEY_ID)
- 严禁 要求用户直接在对话或命令行中输入 AK/SK
- 严禁 在 aliyun configure set 中使用字面量凭证值
- 只能 使用 aliyun configure list 检查凭证状态
```bash
aliyun configure list
```
检查输出中是否存在有效配置文件(AK、STS 或 OAuth 身份)。
如果不存在有效配置文件,请在此停止。
1. 从阿里云控制台获取凭证
2. 在此会话之外配置凭证(通过终端中的 aliyun configure,或 shell 配置文件中的环境变量)
3. 在 aliyun configure list 显示有效配置文件后返回并重新运行
RAM 权限
此 skill 需要以下 RAM 权限:
任务管理
| API | 权限操作 | 说明 | |-----|------------|------| | GetTask | dataworks:GetTask | 获取任务详情 | | ListTasks | dataworks:ListTasks | 查询任务列表 | | ListUpstreamTasks | dataworks:ListUpstreamTasks | 查询上游任务列表 | | ListDownstreamTasks | dataworks:ListDownstreamTasks | 查询下游任务列表 | | ListTaskOperationLogs | dataworks:ListTaskOperationLogs | 查询任务操作日志 |
任务实例管理
| API | 权限操作 | 说明 | |-----|------------|------| | ListTaskInstances | dataworks:ListTaskInstances | 查询任务实例列表 | | GetTaskInstance | dataworks:GetTaskInstance | 获取任务实例详情 | | GetTaskInstanceLog | dataworks:GetTaskInstanceLog | 获取任务实例日志 | | ListUpstreamTaskInstances | dataworks:ListUpstreamTaskInstances | 查询上游任务实例 | | ListDownstreamTaskInstances | dataworks:ListDownstreamTaskInstances | 查询下游任务实例 | | ListTaskInstanceOperationLogs | dataworks:ListTaskInstanceOperationLogs | 查询任务实例操作日志 |
工作流(运维中心,只读)
| API | 权限操作 | 说明 | |-----|------------|------| | GetWorkflow | dataworks:GetWorkflow | 获取工作流详情 | | ListWorkflows | dataworks:ListWorkflows | 查询工作流列表 |
工作流实例(运维中心,只读)
| API | 权限操作 | 说明 | |-----|------------|------| | ListWorkflowInstances | dataworks:ListWorkflowInstances | 查询工作流实例列表 | | GetWorkflowInstance | dataworks:GetWorkflowInstance | 获取工作流实例详情 |
告警规则(自定义监控,只读)
| API | 权限操作 | 描述 | |-----|------------|------| | ListAlertRules | dataworks:ListAlertRules | 查询告警规则列表 | | GetAlertRule | dataworks:GetAlertRule | 获取告警规则详情 |
[必须] 权限失败处理: 执行过程中,如果任何命令或 API 调用在任意时点因权限错误而失败,请遵循以下流程:
1. 阅读 references/ram-policies.md,获取此 SKILL 所需的完整权限列表
2. 使用 ram-permission-diagnose skill 指导用户申请所需权限
3. 暂停并等待,直到用户确认已授予所需权限
参数确认
重要:参数确认 — 执行任何命令或 API 调用之前,
所有用户可自定义的参数(例如,ProjectId、RegionId、bizdate、实例 ID 等)
都必须与用户确认。未经用户明确批准,不得假定或使用默认值。
| 参数 | 必填/可选 | 描述 | 默认值 | |-------|----------|------|-------| | 地域 | 必选 | 目标地域 | 无 | | ProjectId | 必选 | DataWorks 工作空间 ID | 无 | | Bizdate | 必选(实例相关) | 业务日期(毫秒时间戳) | 当天的业务日期 |
实例状态枚举值(用于 --status 参数):
NotRun- 未运行Running- 运行中Failure- 失败Success- 成功WaitTime- 等待时间WaitResource- 等待资源
工作流实例类型枚举值(用于 --type 参数):
Normal- 正常调度Manual- 手动运行SmokeTest- 冒烟测试SupplementData- 补数据ManualWorkflow- 手动工作流TriggerWorkflow- 触发工作流
核心工作流
0. 确认目标地域
请与用户确认目标地域。常用地域:
cn-hangzhou- 华东 1(杭州)cn-shanghai- 华东 2(上海)cn-beijing- 华北 2(北京)cn-shenzhen- 华南 1(深圳)
---
任务管理
# Query task list
aliyun dataworks-public list-tasks \
--region <REGION> \
--project-id <PROJECT_ID> \
[--name <TASK_NAME>] \
[--page-size <SIZE>] \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
# Get task details
aliyun dataworks-public get-task \
--region <REGION> \
--id <TASK_ID> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
有关更多命令参数和完整的命令列表,请参阅 [references/related-commands.md](references/related-commands.md)
---
任务实例管理
# Query task instance list (filter by status)
aliyun dataworks-public list-task-instances \
--region <REGION> \
--project-id <PROJECT_ID> \
--bizdate <BIZDATE_TIMESTAMP> \
[--status NotRun|Running|Failure|Success|WaitTime|WaitResource] \
[--task-name <TASK_NAME>] \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
# Get task instance details (use instance ID from list above)
aliyun dataworks-public get-task-instance \
--region <REGION> \
--id <TASK_INSTANCE_ID> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
# Get task instance log
aliyun dataworks-public get-task-instance-log \
--region <REGION> \
--id <TASK_INSTANCE_ID> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
有关更多命令(实例详情、上游/下游实例、操作日志等),请参阅 [references/related-commands.md](references/related-commands.md)
---
工作流(运维中心,只读)
# Query workflow list
aliyun dataworks-public list-workflows \
--region <REGION> \
--project-id <PROJECT_ID> \
[--name <WORKFLOW_NAME>] \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
# Get workflow details
aliyun dataworks-public get-workflow \
--region <REGION> \
--id <WORKFLOW_ID> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
---
工作流实例(运维中心,只读)
# Query workflow instance list
aliyun dataworks-public list-workflow-instances \
--region <REGION> \
--project-id <PROJECT_ID> \
--biz-date <BIZDATE_TIMESTAMP> \
[--type Normal|Manual|SmokeTest|SupplementData|ManualWorkflow|TriggerWorkflow] \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
# Get workflow instance details
aliyun dataworks-public get-workflow-instance \
--region <REGION> \
--id <WORKFLOW_INSTANCE_ID> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
---
告警规则(自定义监控,只读)
# Query alert rule list
aliyun dataworks-public list-alert-rules \
--region <REGION> \
--page-number <PAGE_NUMBER> \
--page-size <PAGE_SIZE> \
[--name <RULE_NAME>] \
[--owner <OWNER_UID>] \
[--receiver <RECEIVER_UID>] \
[--task-ids <ID1> <ID2> ...] \
[--types <TYPE1> <TYPE2> ...] \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
# Get alert rule details
aliyun dataworks-public get-alert-rule \
--region <REGION> \
--id <ALERT_RULE_ID> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
---
命令示例
# Step 1: Query failed task instances
aliyun dataworks-public list-task-instances \
--region cn-hangzhou \
--project-id 240863 \
--bizdate 1775404800000 \
--status Failure \
--page-size 100 \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
# Step 2: View instance log
aliyun dataworks-public get-task-instance-log \
--region cn-hangzhou \
--id <INSTANCE_ID> \
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-dataworks-data-ops
成功验证
- 查询验证:
ListTaskInstances返回TaskInstances列表,其中包含实例 ID、状态、任务名称和其他信息 - 日志验证:
GetTaskInstanceLog返回包含日志内容的TaskInstanceLog字段
有关详细的验证步骤,请参阅 [references/verification-method.md](references/verification-method.md)
清理
此 skill 不会创建资源,无需清理。
最佳实践
- 业务日期计算:
Bizdate通常是调度日期前一天 00:00:00 对应的毫秒时间戳 - 分页查询:使用
--page-number和--page-size进行分页,每页最多 500 条 - 操作前检查:建议先检查实例日志以确认状态,并避免重复失败
参考资料
| 文档 | 描述 | |------|------| | [references/ram-policies.md](references/ram-policies.md) | RAM 权限策略 | | [references/related-commands.md](references/related-commands.md) | CLI 命令快速参考 | | [references/verification-method.md](references/verification-method.md) | 成功验证方法 | | [related_apis.yaml](related_apis.yaml) | 完整的 API 列表 |