调用CreateSiteMonitor接口创建一次性探测任务。

仅开通网络分析与监控的阿里云账号,才能创建一次性探测任务。关于网络分析与监控的计费说明,请参见网络分析与监控计费说明。

本文将提供一个示例,创建一次性探测任务,该探测任务的名称为task1,探测地址为http://www.aliyun.com,探测类型为HTTP,探测点数量为1。

调试

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

请求参数

名称 类型 是否必选 示例值 描述
Action String 是 CreateInstantSiteMonitor

系统规定参数。取值:CreateInstantSiteMonitor。

Address String 是 http://www.aliyun.com

探测任务的URL或IP地址。

TaskType String 是 HTTP

探测任务的类型。

目前探测任务的类型包括:HTTP、PING、TCP、UDP和DNS。

TaskName String 是 task1

探测任务的名称。

长度4~100个字符,取值可包含英文字母、数字、下划线(_)和汉字。

IspCities String 否 [{"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"}]

探测点信息。如果该参数取值为空,则系统随机选择3个探测点。

格式为JSONArray,例如:{"city":"546","isp":"465"},{"city":"572","isp":"465"},{"city":"738","isp":"465"},分别对应北京、杭州、青岛。

关于如何获取探测点信息,请参见DescribeSiteMonitorISPCityList。

说明 IspCities和RandomIspCity必须二选一。
OptionsJson String 否 {"time_out":5000}

探测任务对应协议类型的高级扩展选项。不同探测任务的协议类型对应不同的扩展选项。

RandomIspCity Integer 否 1

探测点的数量。

说明
  • IspCities和RandomIspCity必须二选一。
  • 如果您设置了参数RandomIspCity,参数IspCities自动失效。

TaskType的高级参数说明

TaskType中HTTP、PING、TCP、UDP和DNS的高级参数的设置方法如下表所示。

  • HTTP

参数

类型

描述

http_method

String

HTTP请求方式。支持三种请求方式:GET、POST、HEAD。默认值:GET。

header

String

换行符(\n)分隔的自定义HTTP header。

每行Header格式需符合HTTP协议(使用半角冒号分隔的键值)。

cookie

String

Cookie和HTTP请求标准的写法一致。

request_content

String

请求内容。支持两种格式:JSON和表单。不提供时,请求中不含正文。

response_content

String

期望的回应内容。探测时会检查HTTP服务器返回的前64个字节。

match_rule

String

0:回应中不含response_content时,探测成功。

1:回应中含response_content时,探测成功。

username

String

如果提供用户名,则会在HTTP请求中携带BasicAuth header。

password

String

HTTP请求验证密码。

time_out

int

超时时间。单位:毫秒。默认值:5 。

max_redirect

int

最大跳转次数。ECS探针默认5次,运营商探针默认2次。

如果需要禁止跳转,则将该参数设置为0。

取值范围:0~50 。

  • PING

参数

类型

描述

failure_rate

int

当PING失败率超过该参数时,探测失败,返回610(PingAllFail)或615(PingPartialFail)。

默认值:0.1。

ping_num

int

PING次数,默认值:20。

取值范围:1~100。

  • TCP或UDP

参数

类型

描述

port

int

TCP或UDP服务器的端口。

request_content

string

请求内容。当request_format为hex时,request_content内容为十六进制紧凑格式。

request_format

string

当request_format为其他值时,request_content作为普通字符串发送给TCP或UDP服务器。

response_content

string

回应内容。当TCP或UDP服务器返回的内容中不含response_content时,探测失败。

当response_format为hex时,response_content中的内容为十六进制紧凑格式。

当response_content为其他值时,response_content为普通字符串。

  • DNS

参数

类型

描述

dns_server

string

DNS服务器地址,可以为域名或IP地址。

dns_type

string

DNS查询类型。取值:A、NS、CNAME、MX、TXT、ANY。

expect_value

string

英文空白符分隔的期望值列表。

match_rule

string

期望值列表与DNS列表的关系,当不满足指定关系时,探测失败。

空字符串或IN_DNS:期望值列表是DNS列表的子集。

DNS_IN:DNS列表是期望值列表的子集。

EQUAL:DNS列表与期望值列表相等。

ANY:DNS列表与期望值列表有交集(交集不为空)。

返回数据

名称 类型 示例值 描述
Code String 200

状态码。

说明 200表示成功。
Message String successful

返回信息。

RequestId String 68192f5d-0d45-4b98-9724-892813f86c71

请求ID。

Success String true

操作是否成功。取值:

  • true:成功。
  • false:失败。
CreateResultList Array of CreateResultList

创建一次性探测任务的结果列表。

TaskId String 2c8dbdf9-a3ab-46a1-85a4-f094965e****

探测任务ID。

TaskName String task1

探测任务名称。

示例

请求示例

http(s)://[Endpoint]/?Action=CreateInstantSiteMonitor
&Address=http://www.aliyun.com
&TaskType=HTTP
&TaskName=task1
&RandomIspCity=1
&<公共请求参数>

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<CreateInstantSiteMonitorResponse>
	<Message>successful</Message>
	<RequestId>68192f5d-0d45-4b98-9724-892813f86c71</RequestId>
	<Code>200</Code>
	<CreateResultList>
		<TaskId>2c8dbdf9-a3ab-46a1-85a4-f094965e****</TaskId>
		<TaskName>task1</TaskName>
	</CreateResultList>
	<Success>true</Success>
</CreateInstantSiteMonitorResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "Message" : "successful",
  "RequestId" : "68192f5d-0d45-4b98-9724-892813f86c71",
  "Code" : "200",
  "CreateResultList" : [ {
    "TaskId" : "2c8dbdf9-a3ab-46a1-85a4-f094965e****",
    "TaskName" : "task1"
  } ],
  "Success" : true
}

错误码

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