调用CreateHostAvailability接口创建可用性监控任务。
本文将提供一个示例,在应用分组123456
中创建探测类型为HTTP
的可用性监控任务task1
,通过邮件和钉钉机器人给您发送报警。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateHostAvailability |
要执行的操作,取值:CreateHostAvailability。 |
GroupId | Long | 是 | 123456 |
应用分组ID。 |
TaskName | String | 是 | task1 |
可用性监控任务名称。取值范围:4~100个字符,支持英文字母、数字、下划线(_)和汉字。 |
TaskScope | String | 否 | GROUP |
可用性监控任务的探测范围。取值:
|
TaskType | String | 是 | HTTP |
可用性监控任务的探测类型。取值:
|
TaskOption.HttpURI | String | 否 | https://www.aliyun.com |
HTTP探测类型的探测URI地址。 |
TaskOption.TelnetOrPingHost | String | 否 | www.aliyun.com |
探测的域名或地址。 说明 如果探测任务类型为PING或TELNET,则需要设置该参数。
|
TaskOption.HttpResponseCharset | String | 否 | UTF-8 |
HTTP探测类型的响应字符集。 说明 仅支持UTF-8。
|
TaskOption.HttpPostContent | String | 否 | params1=paramsValue1 |
HTTP探测类型探测请求的Post内容。 |
TaskOption.HttpResponseMatchContent | String | 否 | ok |
匹配响应的内容。 |
TaskOption.HttpMethod | String | 否 | GET |
探测类型的方法。取值:
说明 如果任务的探测类型为HTTP,则需要设置该参数。
|
TaskOption.HttpNegative | Boolean | 否 | true |
匹配HTTP响应内容的报警规则。取值:
说明 如果任务的探测类型为HTTP,则该参数生效。
|
TaskOption.HttpHeader | String | 否 | token:testTokenValue |
HTTP请求的Header。格式为
|
TaskOption.Interval | Integer | 否 | 60 |
探测频率。单位:秒。取值:15、30、60、120、300、900、1800和3600。 说明 仅3.5.1及以上版本的云监控插件支持该参数。
|
AlertConfig.NotifyType | Integer | 是 | 0 |
报警通知类型。取值: 0:邮件+钉钉机器人。 |
AlertConfig.StartTime | Integer | 否 | 0 |
报警生效的开始时间。取值范围:0~23。 例如: 说明 如果报警不在生效时间内,则超过阈值也不会发送报警通知。
|
AlertConfig.EndTime | Integer | 否 | 22 |
报警生效的结束时间。取值范围:0~23。 例如: 说明 如果报警不在生效时间内,则超过阈值也不会发送报警通知。
|
AlertConfig.SilenceTime | Integer | 否 | 86400 |
通道沉默时间。单位:秒,默认值:86400(1天)。 |
AlertConfig.WebHook | String | 否 | https://www.aliyun.com/webhook.json |
URL回调地址。 |
AlertConfigEscalationList.N.MetricName | String | 是 | HttpStatus |
报警的监控项。N的取值范围:1~21。取值:
|
AlertConfigEscalationList.N.Value | String | 否 | 90 |
报警阈值。N的取值范围:1~21。 |
AlertConfigEscalationList.N.Times | Integer | 否 | 3 |
报警重试次数。N的取值范围:1~21。 |
AlertConfigEscalationList.N.Operator | String | 否 | > |
报警规则比较符号。N的取值范围:1~21。取值:
|
AlertConfigEscalationList.N.Aggregate | String | 否 | Value |
报警统计方法。N的取值范围:1~21。不同监控项的取值如下:
说明 状态码类的统计方法为原始值(Value),延时时间或丢包率的统计方法为平均值(Average)。
|
InstanceList.N | String | 否 | 2 |
发起探测的ECS实例列表。N的取值范围:1~21。 说明 当
TaskScope 为GROUP_SPEC_INSTANCE 时,需要设置该参数。
|
AlertConfigTargetList.N.Id | String | 否 | 1 |
报警触发目标ID。 |
AlertConfigTargetList.N.Arn | String | 否 | acs:mns:cn-hangzhou:120886317861****:/queues/test/message |
资源ARN。格式为
|
AlertConfigTargetList.N.Level | String | 否 | ["INFO", "WARN", "CRITICAL"] |
报警级别。取值:
|
AlertConfigTargetList.N.JsonParams | String | 否 | {"customField1":"value1","customField2":"$.name"} |
报警回调的JSON格式参数。 |
关于公共请求参数的详情,请参见公共参数。
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
Code | String | 200 |
状态码。 说明 200表示成功。
|
Message | String | The specified resource is not found. |
错误信息。 |
RequestId | String | ACBDBB40-DFB6-4F4C-8957-51FFB233969C |
请求ID。 |
TaskId | Long | 12345 |
可用性监控任务ID。 |
Success | Boolean | true |
操作是否成功。取值:
|
示例
请求示例
http(s)://[Endpoint]/?Action=CreateHostAvailability
&AlertConfig.NotifyType=0
&AlertConfigEscalationList.1.MetricName=HttpStatus
&GroupId=123456
&TaskName=task1
&TaskType=HTTP
&<公共请求参数>
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<CreateHostAvailabilityResponse>
<TaskId>12345</TaskId>
<RequestId>CDA78493-F10F-485F-98AD-B4C0B40AB225</RequestId>
<Code>200</Code>
<Success>true</Success>
</CreateHostAvailabilityResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"TaskId" : "12345",
"RequestId" : "CDA78493-F10F-485F-98AD-B4C0B40AB225",
"Code" : 200,
"Success" : true
}
错误码
访问错误中心查看更多错误码。