tencent cloud

文档反馈

事件通知和回调

最后更新时间:2024-01-13 11:19:28

    概要信息

    批量计算(Batch)支持将作业和计算环境内产生的事件以消息服务(CMQ)的形式抛出,例如作业运行成功/失败、计算环境节点创建成功/失败/异常等事件发生,可以通过 CMQ 的主题订阅机制来实现通知和回调。

    使用指南

    下面以监听计算环境相关事件为例,您可以通过以下三个步骤将一个计算环境相关的事件注册。

    1. 创建 CMQ 主题

    登录 消息服务 CMQ 控制台,新建一个主题。
    
    
    

    2. 创建计算环境并关联 CMQ 主题

    在提交作业(SubmitJob)或者创建计算环境(Create)时添加 notifications 字段并指定要监听的事件 event_name,支持指定多个事件。
    "notifications": [
    {
    "event_configs": [
    {
    "event_name": "JobFailed" // 事件名称
    },
    {
    "event_name": "JobSucceed",
    "event_vars": [ // 自定义事件参数
    {
    "name": "jobSucceed",
    "value": "Success"
    }
    ]
    }
    ],
    "topic_name": "job-message" // CMQ Topic Name
    }
    ],
    目前仅支持通过 API 或者 CLI 创建计算环境时关联 CMQ 主题,后续将支持控制台操作。
    event_vars:除了事件产生的固定消息本体外,还支持添加自定义参数。
    topic_name:关联的 CMQ 主题的 Name(注意:不是 ID),所有事件消息将投递给该主题,主题再将消息转发给所有订阅者。

    3. 设置订阅者并测试

    消息服务 CMQ 控制台 为新建的主题添加订阅者,为方便快速查看,可以指定为已经创建的一个消息队列。
    
    
    
    消息结构如下,如果订阅者中指定了消息队列,可以通过 消息服务 CMQ 控制台 - 消息接收 快速查看由 Batch 发送到主题内的事件消息(消息接收内消息内容需要 Base64 处理)。
    {
    "Events": [{
    "EventVersion": "1.0",
    "EventTime": "2018-06-15T14:43:17Z",
    "Region": "ap-guangzhou",
    "Batch": {
    "ComputeNodeId": "node-0iy7wxyo",
    "EnvId": "env-ptoxdb1t",
    "ComputeNodeState": "CREATED",
    "Mem": 8,
    "ResourceCreatedTime": "2018-06-15T14:43:18Z",
    "EnvName": "batch-env",
    "ComputeNodeInstanceId": "ins-9rikj9kw",
    "Cpu": 4
    },
    "EventName": "COMPUTE_NODE_CREATED",
    "EventVars": []
    }]
    }

    作业相关事件

    类型
    描述
    JOB_RUNNING
    作业运行
    JOB_SUCCEED
    作业完成
    JOB_FAILED
    作业失败
    JOB_FAILED_INTERRUPTED
    作业失败中断
    TASK_RUNNING
    任务运行
    TASK_SUCCEED
    任务完成
    TASK_FAILED
    任务失败
    TASK_FAILED_INTERRUPTED
    任务失败中断
    TASK_INSTANCE_RUNNING
    任务实例运行
    TASK_INSTANCE_SUCCEED
    任务实例完成
    TASK_INSTANCE_FAILED
    任务实例失败
    TASK_INSTANCE_FAILED_INTERRUPTED
    任务实例失败中断
    最新定义和提交作业 API Demo,请参见 提交作业

    计算环境相关事件

    类型
    描述
    COMPUTE_ENV_CREATED
    创建计算环境
    COMPUTE_ENV_DELETED
    删除计算环境
    COMPUTE_NODE_CREATED
    计算节点创建成功
    COMPUTE_NODE_CREATION_FAILED
    计算节点创建失败
    COMPUTE_NODE_RUNNING
    计算节点运行中
    COMPUTE_NODE_ABNORMAL
    计算节点异常
    COMPUTE_NODE_DELETING
    计算节点销毁中
    最新定义和创建计算环境 API Demo,请参见 创建计算环境
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持