CreateHostAvailability - 创建可用性监控任务

调用CreateHostAvailability接口创建可用性监控任务。

接口说明

本文将提供一个示例,在应用分组123456中创建探测类型为HTTP的可用性监控任务task1,通过邮件和钉钉机器人给您发送报警。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
cms:CreateHostAvailabilitycreate
  • HostAvailability
    acs:cms::{#accountId}:group/{#groupId}

请求参数

名称类型必填描述示例值
GroupIdlong

应用分组 ID。

123456
TaskNamestring

可用性监控任务名称。取值范围:4~100 个字符,支持英文字母、数字、下划线(_)和汉字。

task1
TaskScopestring

可用性监控任务的探测范围。取值:

  • GROUP:表示将当前应用分组内的所有 ECS 实例作为探测任务的探针。
  • GROUP_SPEC_INSTANCE:表示将当前应用分组内的指定 ECS 实例作为探测任务的探针。设置该参数时,需要同时设置 InstanceList(发起探测的 ECS 实例列表)。
GROUP
TaskTypestring

可用性监控任务的探测类型。取值:

  • PING
  • TELNET
  • HTTP
HTTP
TaskOption.HttpURIstring

HTTP、Telnet 探测类型的探测 URI 地址。

https://www.aliyun.com telnet://127.0.0.1:80
TaskOption.TelnetOrPingHoststring

探测的域名或地址。

说明 如果探测任务类型为 PING,则需要设置该参数。
www.aliyun.com
TaskOption.HttpResponseCharsetstring

HTTP 探测类型的响应字符集。

说明 仅支持 UTF-8。
UTF-8
TaskOption.HttpPostContentstring

HTTP 探测类型探测请求的 Post 内容。

params1=paramsValue1
TaskOption.HttpResponseMatchContentstring

匹配响应的内容。

ok
TaskOption.HttpMethodstring

探测类型的方法。取值:

  • GET
  • POST
  • HEAD
说明 如果任务的探测类型为 HTTP,则需要设置该参数。
GET
TaskOption.HttpNegativeboolean

匹配 HTTP 响应内容的报警规则。取值:

  • true:如果 HTTP 响应内容包含设置的报警规则,则报警。
  • false:如果 HTTP 响应内容不包含设置的报警规则,则报警。
说明 如果任务的探测类型为 HTTP,则该参数生效。
true
TaskOption.HttpHeaderstring

HTTP 请求的 Header。格式为参数名:参数,多个参数之间用回车符分隔,例如:

params1:value1
params2:value2
token:testTokenValue
TaskOption.Intervalinteger

探测频率。单位:秒。取值:15、30、60、120、300、900、1800 和 3600。

说明 仅 3.5.1 及以上版本的云监控插件支持该参数。
60
AlertConfig.NotifyTypeinteger

报警通知类型。取值:

  • 2:电话+短信+邮件+钉钉机器人。

  • 1:短信+邮件+钉钉机器人。

  • 0:邮件+钉钉机器人。

0
AlertConfig.StartTimeinteger

报警生效的开始时间。取值范围:0~23。

例如:AlertConfig.StartTime为 0,AlertConfig.EndTime为 22,表示报警生效时间为 00:00:00 至 22:00:00。

说明 如果报警不在生效时间内,则超过阈值也不会发送报警通知。
0
AlertConfig.EndTimeinteger

报警生效的结束时间。取值范围:0~23。

例如:AlertConfig.StartTime为 0,AlertConfig.EndTime为 22,表示报警生效时间为 00:00:00 至 22:00:00。

说明 如果报警不在生效时间内,则超过阈值也不会发送报警通知。
22
AlertConfig.SilenceTimeinteger

通道沉默时间。单位:秒,默认值:86400(1 天)。

86400
AlertConfig.WebHookstring

URL 回调地址。

https://www.aliyun.com/webhook.json
AlertConfigEscalationListarray<object>

无。

object

无。

MetricNamestring

报警的监控项。N 的取值范围:1~21。取值:

  • HttpStatus:HTTP 状态码。
  • HttpLatency:HTTP 等待时间。
  • TelnetStatus:Telnet 状态码。
  • TelnetLatency:Telnet 等待时间。
  • PingLostRate:Ping 丢包率。
HttpStatus
Valuestring

报警阈值。N 的取值范围:1~21。

90
Timesinteger

报警重试次数。N 的取值范围:1~21。

3
Operatorstring

报警规则比较符号。N 的取值范围:1~21。取值:

  • >
  • >=
  • <
  • <=
  • =
>
Aggregatestring

报警统计方法。N 的取值范围:1~21。不同监控项的取值如下:

  • HttpStatus:Value。
  • HttpLatency:Average。
  • TelnetStatus:Value。
  • TelnetLatency:Average。
  • PingLostRate:Average。
说明 状态码类的统计方法为原始值(Value),延时时间或丢包率的统计方法为平均值(Average)。
Value
InstanceListarray

发起探测的 ECS 实例列表。N 的取值范围:1~21。

说明 TaskScopeGROUP_SPEC_INSTANCE时,需要设置该参数。
string

发起探测的 ECS 实例列表。N 的取值范围:1~21。

说明 TaskScopeGROUP_SPEC_INSTANCE时,需要设置该参数。
2
AlertConfigTargetListarray<object>

报警触发目标。

object

报警触发目标。

Idstring

报警触发目标 ID。

1
Arnstring

资源 ARN。格式为acs:{云产品缩写}:{regionId}:{userId}:/{资源类型}/{资源名称}/message。例如:acs:mns:cn-hangzhou:120886317861****:/queues/test123/message。参数说明如下:

  • {云产品缩写}:目前仅支持轻量消息队列(原 MNS)。

  • {userId}:阿里云账号 ID。

  • {regionId}:轻量消息队列(原 MNS)或主题所在地域。

  • {资源类型}`:接收报警的资源类型。取值:

    • queues:队列。
    • topics:主题。
  • {资源名称}:资源名称。

    • 如果资源类型为 queues,则资源名称为队列名称。
    • 如果资源类型为 topics,则资源名称为主题名称。
acs:mns:cn-hangzhou:120886317861****:/queues/test/message
Levelstring

报警级别。取值:

  • INFO:信息。
  • WARN:警告。
  • CRITICAL:紧急。
["INFO", "WARN", "CRITICAL"]
JsonParamsstring

报警回调的 JSON 格式参数。

{"customField1":"value1","customField2":"$.name"}

关于公共请求参数的详情,请参见公共参数

返回参数

名称类型描述示例值
object
Codestring

状态码。

说明 200 表示成功。
200
Messagestring

错误信息。

The specified resource is not found.
RequestIdstring

请求 ID。

ACBDBB40-DFB6-4F4C-8957-51FFB233969C
TaskIdlong

可用性监控任务 ID。

12345
Successboolean

操作是否成功。取值:

  • true:成功。

  • false:失败。

true

示例

正常返回示例

JSON格式

{
  "Code": "200",
  "Message": "The specified resource is not found.",
  "RequestId": "ACBDBB40-DFB6-4F4C-8957-51FFB233969C",
  "TaskId": 12345,
  "Success": true
}

错误码

HTTP status code错误码错误信息
400ParameterInvalidIllegal parameters.
403AccessForbiddenUser not authorized to operate on the specified resource.
404ResourceNotFound%s
409ResourceConflictConcurrent modification of resources.
409ResourceExistResources already exist.
412ResouceOverLimitThe task over limit
500InternalErrorThe request processing has failed due to some unknown error.

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2022-08-05OpenAPI 错误码发生变更、OpenAPI 入参发生变更查看变更详情
2022-03-22OpenAPI 错误码发生变更查看变更详情