Batch Update Alert Tags


批量更新当前和历史告警库中指定告警的标签内容。返回的结构依次说明每一条告警的更新结果。如果某一条发生了错误信息,会记录下错误信息并且继续执行余下的更新。

请求格式

POST https://{apigw-address}/alert-service/v2.1/alerts?action=batchUpdateTags

请求参数(URI)

名称 位置(Path/Query) 必需/可选 数据类型 描述
orgId Query 必需 String 资产所属的组织 ID。如何获取 orgId 信息>>

请求参数(Body)

名称 必需/可选 数据类型 描述
alertIds 必需 String 数组 告警 ID 列表。
tags 必需 Map 需要修改的标签。标签的作用与表示方法>>
isPatchUpdate 必需 Boolean

是否全量更新。

  • 当其值为 true 时,只更新参数中指定字段的值。
  • 当其值为 false 时,更新所有字段的值,即未指定值的字段将被置空。

响应参数

名称 数据类型 描述
data EnosBatchEachData 结构体数组 成功或失败消息列表。EnosBatchEachData 的详细信息,参见 EnosBatchEachData 结构体>>
successSize Integer 成功更新的当前和历史告警数。
totalSize Integer 需要更新的当前和历史告警总数。

EnosBatchEachData 结构体

名称 数据类型 描述
code Integer
更新成功或失败的指示码:
  • 0: 成功,
  • -1: 失败。
msg String 成功时返回 OK。如果返回其他值,则为失败。

示例

请求示例

url: https://{apigw-address}/alert-service/v2.1/alerts?action=batchUpdateTags&orgId=yourOrgId
method: POST
requestBody:
{
    "alertIds": ["youralertId1", "youralertId2"],
  "isPatchUpdate":false,
    "tags": {
        "Tag999": "999"
    }
}

返回示例

{
  "code":0,
  "msg":"OK",
  "requestId":"829db237-c850-4c58-a692-64ebe2105309",
  "data":[
    {
      "code":0,
      "msg":"OK",
      "data":null
    },
    {
      "code":0,
      "msg":"OK",
      "data":null
    }
  ],
  "successSize":2,
  "totalSize":2
}

Java SDK 调用示例

public void testBatchUpdateAlertRecordTags(){
  BatchUpdateAlertTagsRequest request = new BatchUpdateAlertTagsRequest();
  request.setOrgId(orgId);
  List<String> list=new LinkedList<>();
  list.add("20201109a7451eac2ef7b562bd673198e55d0019");
  list.add("20201109a5d050346415305a86a89c817dc1c83f");
  request.setAlertIds(list);

  Map<String,String> map = new HashMap<>();
  map.put("Tag999","88");
  request.setTags(map);
  request.setIsPatchUpdate(false);
  try {
      BatchUpdateAlertTagsResponse response = Poseidon.config(PConfig.init().appKey(appKey).appSecret(appSecret).debug())
              .url(url)
              .getResponse(request, BatchUpdateAlertTagsResponse.class);
      System.out.println(response);
  }
  catch(Exception e){
      System.out.print(e);
  }
}