搜索本产品文档关键词
报警管理接口
所有文档
menu
没有找到结果,请重新输入

云监控 BCM

报警管理接口

创建报警策略

接口描述

创建报警策略

请求结构

  • method:POST
  • URL:/csm/api/v1/services/alarm/config/create

请求参数

名称 类型 描述 是否必须 参数位置
alarmConfig AlarmConfig 报警配置 RequestBody参数

请求示例

POST    /csm/api/v1/services/alarm/config/create
body
{
    "alarmActions": [
     	 "0262f103-****-****-****-078d0f2d80c5"
    ],
    "aliasName": "test_all_instance",
    "level": "MAJOR",
    "monitorObject": {
        "names": [],
        "type": "APP"
    },
    "okActions": [],
    "region": "bj",
    "rules": [
        [
            {
                "comparisonOperator": ">",
                "evaluationPeriodCount": 10,
                "index": 1,
                "metric": "OutBytes",
                "metricDimensions": [],
                "periodInSecond": 900,
                "statistics": "average",
                "threshold": "1111"
            }
        ]
    ],
    "scope": "BCE_CDN",
    "srcType": "ALL_INSTANCE",
    "type": "NORMAL",
    "userId": "453bf9********************9090dc"
}

删除报警策略

接口描述

删除报警策略

请求结构

  • method:POST
  • URL:/csm/api/v1/services/alarm/config/delete?{Query参数}

请求参数

名称 类型 描述 是否必须 参数位置
userId String 用户id Query参数
scope String 云产品名字空间,仅限于使用如下字符集合:"0~9、A~Z、a~z"、 "_" Query参数
alarmName String 报警名 Query参数

请求示例

为了展示的更清晰,对请求示例做了换行处理,在实际构造请求时URL路径及Query参数都在一行里。

POST    /csm/api/v1/services/alarm/config/delete?
userId=453bf9********************9090dc
&scope=BCE_CDN
&alarmName=b9444b********************f04dac

更新报警策略

接口描述

编辑报警策略

请求结构

  • method:POST
  • URL:/csm/api/v1/services/alarm/config/update

请求参数

名称 类型 描述 是否必须 参数位置
alarmConfig AlarmConfig 报警配置 RequestBody参数

请求示例

POST    /csm/api/v1/services/alarm/config/update
body
{
    "alarmActions": [
        "0262f103-****-****-****-078d0f2d80c5"
    ],
    "alarmName": "b9444b********************f04dac",
    "aliasName": "fgh678",
    "level": "MAJOR",
    "monitorObject": {
        "names": [],
        "type": "APP"
    },
    "okActions": [],
    "region": "bj",
    "rules": [
        [
            {
                "comparisonOperator": ">=",
                "evaluationPeriodCount": 1,
                "index": 1,
                "metric": "OutBytes",
                "metricDimensions": [],
                "periodInSecond": 60,
                "statistics": "average",
                "threshold": "11"
            }
        ]
    ],
    "scope": "BCE_CDN",
    "srcType": "ALL_INSTANCE",
    "type": "NORMAL",
    "userId": "453bf9********************9090dc"
}

屏蔽报警策略

接口描述

屏蔽报警策略

请求结构

  • method:POST
  • URL:/csm/api/v1/services/alarm/config/block?{Query参数}

请求参数

名称 类型 描述 是否必须 参数位置
userId String 用户id Query参数
scope String 云产品名字空间,仅限于使用如下字符集合:"0~9、A~Z、a~z"、 "_" Query参数
alarmName String 报警名 Query参数

请求示例

为了展示的更清晰,对请求示例做了换行处理,在实际构造请求时URL路径及Query参数都在一行里。

POST    /csm/api/v1/services/alarm/config/block?
userId=453bf9********************9090dc
&scope=BCE_CDN
&alarmName=b9444b********************f04dac

开启报警配置

接口描述

开启报警通知

请求结构

  • method:POST
  • URL:/csm/api/v1/services/alarm/config/unblock?{Query参数}

请求参数

名称 类型 描述 是否必须 参数位置
userId String 用户id Query参数
scope String 云产品名字空间,仅限于使用如下字符集合:"0~9、A~Z、a~z"、 "_" Query参数
alarmName String 报警名 Query参数

请求示例

为了展示的更清晰,对请求示例做了换行处理,在实际构造请求时URL路径及Query参数都在一行里。

POST    /csm/api/v1/services/alarm/config/unblock?
userId=453bf9********************9090dc
&scope=BCE_CDN
&alarmName=b9444b********************f04dac

查看报警策略

接口描述

查看报警策略详情

请求结构

  • Method:GET
  • URL:/csm/api/v1/services/alarm/config?{Query参数}

请求参数

名称 类型 描述 是否必须 参数位置
userId String 用户id Query参数
scope String 云产品名字空间,仅限于使用如下字符集合:"0~9、A~Z、a~z"、 "_" Query参数
alarmName String 报警名 Query参数

返回字段说明

类型 描述
AlarmConfig 报警配置

请求示例

为了展示的更清晰,对请求示例做了换行处理,在实际构造请求时URL路径及Query参数都在一行里。

GET    /csm/api/v1/services/alarm/config?
alarmName=AllDomain-102
&scope=BCE_CDN
&userId=453bf9********************9090dc

响应示例

成功响应示例

{
    "alarmDescription": "",
    "alarmName": "AllDomain-102",
    "aliasName": "AllDomain-102",
    "userId": "453bf9********************9090dc",
    "scope": "BCE_CDN",
    "region": "bj",
    "monitorObject": {
        "type": "INSTANCE",
        "names": [
            "DomainId:www.****.com"
        ],
        "typeName": "Instance"
    },
    "type": "NORMAL",
    "level": "MAJOR",
    "actionEnabled": true,
    "rules": [
        [
            {
                "id": null,
                "index": 0,
                "metric": "HttpRetCodeCount4xx",
                "periodInSecond": 60,
                "statistics": "maximum",
                "threshold": "1 ",
                "comparisonOperator": ">=",
                "evaluationPeriodCount": 1,
                "metricDimensions": []
            },
            {
                "id": null,
                "index": 0,
                "metric": "HttpRetCodeCount4xx",
                "periodInSecond": 60,
                "statistics": "maximum",
                "threshold": "3",
                "comparisonOperator": ">=",
                "evaluationPeriodCount": 1,
                "metricDimensions": []
            }
        ]
    ],
    "alarmActions": [
        "edd825df-****-****-****-181ef0953523"
    ],
    "okActions": [],
    "insufficientActions": [],
    "insufficientCycle": 60,
    "srcName": "",
    "srcType": "",
    "repeatAlarmCycle": 300,
    "maxRepeatCount": 2,
    "callbackUrl": "",
    "callbackToken": ""
}

失败响应示例

情况一:参数不正确。下列为缺少scope的值

{
    "requestId": "4d619a********************9ff6db",
    "code": "ServletRequestBinding",
    "message": "Servlet Request Binding Exception: Required String parameter 'scope' is not present"
}

情况二:参数格式不正确。下列为scope错误为例

{
    "requestId": "4d619a********************9ff6db",
    "code": "ResourceNotExistException",
    "message": "The resource does not exist."
}

查看单一实例报列表接口

接口描述

查看单一实例报警策略列表

请求结构

  • Method:GET
  • URL: /csm/api/v1/services/alarm/config/list?{Query参数}

请求参数

名称 类型 描述 是否必须 参数位置
userId String 用户id Query参数
scope String 云产品名字空间,仅限于使用如下字符集合:"0~9、A~Z、a~z"、 "_" Query参数
region String 地域,默认为bj Query参数
dimensions String 维度,由dimensionName:dimensionValue组成。当监控项具备多个维度时使用分号连接,例如dimensionName:dimensionValue;dimensionName:dimensionValue,相同维度只能指定一个维度值 Query参数
order String 排序方式 Query参数
pageSize int 每页数量 Query参数
pageNo int 第几页 Query参数
actionEnabled boolean 是否已启用 Query参数
alarmNamePrefix String 报警名称前缀 Query参数

参数解释

  • 名字空间scope、指标metric、统计方法Statistic、维度Dimension等的概念请参考核心概念

返回字段说明

类型 描述
PageResultResponse<AlarmConfig> 报警策略列表

请求示例

为了展示的更清晰,对请求示例做了换行处理,在实际构造请求时URL路径及Query参数都在一行里。

GET    /csm/api/v1/services/alarm/config/list?
userId=453bf9********************9090dc
&pageSize=10
&pageNo=1
&scope=BCE_CDN
&order=desc
&dimensions=DomainId%3Abcm5-********.sys-qa.com
&actionEnabled=
&alarmNamePrefix=
&region=bj

响应示例

成功响应示例

{
    "orderBy": "",
    "order": "",
    "pageNo": 1,
    "pageSize": 10,
    "totalCount": 599,
    "result": [
        {
            "alarmDescription": "",
            "alarmName": "025bc1********************5093c0",
            "aliasName": "test_cdn_ymd_0831_01",
            "userId": "453bf9********************9090dc",
            "scope": "BCE_CDN",
            "region": "bj",
            "monitorObject": {
                "type": "INSTANCE",
                "names": [
                    "DomainId:bcm5-********.sys-qa.com"
                ],
                "typeName": "Instance"
            },
            "type": "NORMAL",
            "level": "MAJOR",
            "actionEnabled": true,
            "rules": [
                [
                    {
                        "id": null,
                        "index": 0,
                        "metric": "ProvIspReqCount",
                        "periodInSecond": 60,
                        "statistics": "average",
                        "threshold": "10",
                        "comparisonOperator": ">",
                        "evaluationPeriodCount": 1,
                        "metricDimensions": [
                            {
                                "name": "Isp",
                                "value": "pbs"
                            },
                            {
                                "name": "Prov",
                                "value": "hubei"
                            }
                        ]
                    },
                    {
                        "id": null,
                        "index": 0,
                        "metric": "ProvIspReqCount",
                        "periodInSecond": 60,
                        "statistics": "average",
                        "threshold": "5",
                        "comparisonOperator": ">",
                        "evaluationPeriodCount": 1,
                        "metricDimensions": [
                            {
                                "name": "Isp",
                                "value": "pbs"
                            },
                            {
                                "name": "Prov",
                                "value": "beijing"
                            }
                        ]
                    }
                ]
            ],
            "alarmActions": [
                "yangmoda_test"
            ],
            "okActions": [],
            "insufficientActions": [],
            "insufficientCycle": 0,
            "srcName": "",
            "srcType": "INSTANCE",
            "repeatAlarmCycle": 0,
            "maxRepeatCount": 0,
            "callbackUrl": "",
            "callbackToken": ""
        },
        ...
        {
            "alarmDescription": "",
            "alarmName": "ba39ee********************ad28aa",
            "aliasName": "TestCDNRepeat0824_3",
            "userId": "453bf9********************9090dc",
            "scope": "BCE_CDN",
            "region": "bj",
            "monitorObject": {
                "type": "INSTANCE",
                "names": [
                    "DomainId:bcm5-********.sys-qa.com"
                ],
                "typeName": "Instance"
            },
            "type": "NORMAL",
            "level": "MAJOR",
            "actionEnabled": true,
            "rules": [
                [
                    {
                        "id": null,
                        "index": 0,
                        "metric": "OutBytes",
                        "periodInSecond": 60,
                        "statistics": "average",
                        "threshold": "3",
                        "comparisonOperator": ">",
                        "evaluationPeriodCount": 1,
                        "metricDimensions": []
                    }
                ]
            ],
            "alarmActions": [
                "test_wenqing"
            ],
            "okActions": [],
            "insufficientActions": [],
            "insufficientCycle": 0,
            "srcName": "",
            "srcType": "INSTANCE",
            "repeatAlarmCycle": 300,
            "maxRepeatCount": 5,
            "callbackUrl": "",
            "callbackToken": ""
        }
    ]
}

失败响应示例

情况一:参数不正确。pageSize为空

{
    "requestId": "4a7643********************7ae904",
    "code": "ServletRequestBinding",
    "message": "Servlet Request Binding Exception: Required Integer parameter 'pageSize' is not present"
}

获取指标列表

接口描述

获取指标项列表

请求结构

  • method:GET
  • URL:/csm/api/v1/services/alarm/config/metrics?{Query参数}

请求参数

名称 类型 描述 是否必须 参数位置
userId String 用户id Query参数
scope String 云产品名字空间,仅限于使用如下字符集合:"0~9、A~Z、a~z"、 "_" Query参数
region String 地域 Query参数
dimensions String 维度,由dimensionName:dimensionValue组成。当监控项具备多个维度时使用分号连接,例如dimensionName:dimensionValue;dimensionName:dimensionValue,相同维度只能指定一个维度值 Query参数
type String 获取指标列表的类型,默认为INSTANCE Query参数
locale String 国家地区,默认为zh-cn Query参数

返回字段说明

类型 描述
List<AlarmMetric> 报警指标列表

请求示例

GET    /csm/api/v1/services/alarm/config/metrics?
userId=453bf9********************9090dc
scope=BCE_CDN
region=bj

响应示例

[
    {
        "alias": "流量",
        "name": "OutBytes",
        "unitCategory": "Percent",
        "unitName": "Bytes",
        "cycle": 60,
        "metricDimensions": [
            []
        ],
        "scope": "BCE_CDN",
        "typeName": "Instance"
    },
    ...
    {
        "alias": "分省份运营商有效请求数",
        "name": "ProvIspReqCount",
        "unitCategory": "Percent",
        "unitName": "次",
        "cycle": 60,
        "metricDimensions": [
            [
                "Prov",
                "Isp"
            ]
        ],
        "scope": "BCE_CDN",
        "typeName": "Instance"
    }
]

附录

AlarmConfig

名称 类型 描述
alarmDescription String 自动生成,报警规则说明
alarmName String userId下唯一报警名
aliasName String 前端展示使用,允许重复
userId String 用户id
scope String 所属云产品名字空间
region String 地域
monitorObject MonitorObject 监控对象
type AlarmType(enum) 报警类型,可选值为:
NORMAL(指标报警)
EVENT(事件报警)
eventTypeList List< String > 事件类型列表
level AlarmLevel(enum) 报警等级,可选值为:
NOTICE(通知)
WARNING(警告)
MAJOR(重要)
CRITICAL(严重)
actionEnabled Boolean 报警的通知状态
rules List< List<AlarmRule> > 报警规则列表
alarmActions Set< String > 报警状态下所要采取的动作
okActions Set< String > 正常状态下所要采取的动作
insufficientActions Set< String > 采集数据不足状态下的动作
insufficientCycle int 无数据报警判断周期
srcName String 实例组id
srcType String 实例组类型
repeatAlarmCycle int 重复报警周期
maxRepeatCount int 最大的报警重复次数
callbackUrl String 报警回调地址
callbackToken String 报警回调token

MonitorObject

名称 类型 描述
type MonitorObjectType(enum) 监控对象云服务类型,可选值为:
APP(应用监控类型)
SERVICE(实例组类型)
CUSTOM(自定义监控类型)
INSTANCE(实例类型)
DOMAIN(站点监控类型)
names List< String > 监控对象名称列表
resources List<PolicyResource> 监控对象资源列表
typeName String 监控对象的类型名

AlarmRule

名称 类型 描述
id long 报警规则的id
index long 报警规则的索引,当多个规则共同组成同一报警规则,它们的索引相同
metric String 监控指标名称
periodInSecond long 多长时间计算一次是否满足各个报警规则,即单个评估周期时长,单位s
statistics String 统计方式,可选值为:maximum(最大值)、minimum(最小值)、sum(和值)、average(平均值)
threshold String 报警规则的阈值
comparisonOperator String 和阈值比较的算符,取值为>=、>、=、<、<=
evaluationPeriodCount int 触发报警所需连续发生次数
metricDimensions List<Dimension> 指标的维度

PolicyResource

名称 类型 描述
identifiers List<Dimension> 实例维度列表
metricDimensions List<Dimension> 指标维度列表

Dimension

名称 类型 描述
name String 指标名
value String 指标维度

AlarmMetric

名称 类型 描述
alias String 指标前端显示命名
name String 监控指标名
unitCategory String 单位类别
unitName String 单位名
cycle int 多长时间计算一次是否满足各个报警规则,即单个评估周期时长,单位s
metricDimensions Set< MetricDimensions > 指标的维度
scope String 云产品名字空间,仅限于使用如下字符集合:"0~9、A~Z、a~z"、 "_"
typeName String 警报指标类型名

pageInfo

名称 类型 描述
perPage int 每页数量
totalCount int 总页数
currentPage int 当前页码

PageResultResponse

名称 类型 描述
orderBy String 排序规则
order String 排序项
pageNo int 当前页
pageSize int 每页数量
totalCount int 总页数
result List< T > 结果集
上一篇
部分维度查询最新指标数据
下一篇
报警管理接口V2