FlashDuty
    Powered by Apifox

    变更 Event

    通过标准 API 推送自有系统变更事件到快猫星云,大部分故障由变更导致,变更和告警事件联动有助于快速定位故障原因。

    请求描述

    请求方式

    POST, Content-Type:"application/json"

    请求参数:

    QueryString 必须需要包含参数 integration_key,用于访问控制。

    JsonBody 参数如下:

    字段 必含 类型 释义
    change_status 是 string 变更 event 状态,枚举值:Planned:已提单,Ready:即将(或计划)开始,Processing:进行中,Canceled:已取消(或回滚),Done:已完成。不要求全部状态都上报,可选择性上报
    change_key 是 string 变更唯一 key,一般是变更单号。用于将不同的变更 event 合并至一个变更
    title 是 string 变更 title
    event_time 否 int64 变更 event 发生时间戳,单位“秒”,如果 change_status 为 Ready 状态,可以上报未来时间;如果不传,则使用当前时间
    description 否 string 变更描述,不超过 2048 个字符
    link 否 string 变更单地址,用于跳转到变更详情
    labels 否 map 变更标签集合,key 为标签名称,value 为标签值。标签是事件的描述,用于后续的关联,非常重要。1. 标签的 key 和 value 均为 string 类型,区分大小写。2. 标签的 key 不要超过 128 个字符。3. 至多传入 50 个标签。标签内容参考最佳实践

    请求响应

    Body:

    参数名称 必选 类型 描述
    request_id 是 string 请求 trace id,用于问题追踪
    error 否 Error 错误描述,仅当出现错误时返回


    Error:

    参数名称 可选 类型 描述
    code 是 string 错误码
    message 是 string 错误描述


    Code:

    错误码 HTTP Status 描述
    InvalidParameter 400 参数错误
    InvalidContentType 400 Conten-Type 不支持
    MethodNotAllowed 400 http method 不支持
    Unauthorized 401 登录认证失败
    AccessDenied 403 权限认证失败
    RequestTooFrequently 429 请求过于频繁
    RouteNotFound 404 请求Method+Path未匹配
    ResourceNotFound 400 账户未购买资源,前往费用中心线操作下单
    InternalError 500 内部或未知错误

    请求示例

    请求:

    curl -X POST 'https://api.flashcat.cloud/event/push/change/standard?integration_key=$key' \
    -H 'Content-Type: application/json' \
    -d '{
        "change_status": "Done",
        "change_key": "CHANGE-002",
        "description": "进度100%",
        "title": "双12活动",
        "labels": {
            "service": "flashcat",
            "cluster":"nj"
        },
        "link": "http://jira.flashcat.cloud/CHANGE-001"
    }'
    

    成功响应:

    {
        "request_id": "0ace00116215ab4ca0ec5244b8fc54b0"
    }
    

    失败响应:

    {
        "request_id": "0ace00116215abc0ba4e52449bd305b0",
        "error": {
            "code": "InvalidParameter",
            "message": "integration_key $key is not a valid one"
        }
    }
    

    最佳实践

    标签是事件的描述,应尽量丰富标签内容,比如:

    1. 变更的应用范围,如 host,cluster 等
    2. 变更的归属信息,如 team,owner 等
    修改时间 2 个月前
    举报
    请求描述
    请求方式
    请求参数:
    请求响应
    请求示例
    最佳实践