在“创建监控项目”页面的API监控中,点击<创建项目>按钮创建API监控项目,需要设置以下内容:

设置基本信息

管理API请求

设置初始变量

设置监控

设置告警


设置基本信息

在“基本信息”中设置监控项目的基本信息,如下图所示。

1、监控项目名称

输入监控项目名称,以便于查找和区分监控对象。

您需要为监控项目设置一个有代表性的名称,例如您需要监控在淘宝中提交订单的业务流程,则可设置监控项目名称为“淘宝-提交订单”。

2、描述

输入对监控项目的说明和备注信息等。

3、项目是否加入分类

为方便管理自己创建的监控项目,您可为当前监控项目选择一个项目分类。

您还可以点击<创建分类>按钮,新建一个项目分类作为当前监控项目的分类。


管理API请求

在“请求管理”中添加并管理需要监控的API请求,如下图所示。

1460105028636676.png

您能够直接导入脚本来添加API请求,也可手动添加和设置API请求。添加API请求后,可直接复制已添加的请求来创建新的请求。

1、通过导入脚本添加API请求

为快速创建多条API请求,点击<导入脚本>按钮,在打开的对话框中直接输入脚本内容并导入。导入成功后,监控宝根据导入的脚本自动创建对应的API请求。

点击<查看示例>按钮了解脚本样式,脚本支持postman格式,您可以直接使用postman中生成的脚本。

2、手动添加API请求

点击<添加API监控请求>按钮,打开请求编辑页面,如下图所示。

根据实际需要设置各项内容,详细说明见下表。

设置项

说明

目标URL

选择请求方式并填写监控目标的URL,目前支持的请求方式包括:GET、POST、PUT、DELETE、HEAD和OPTIONS。

认证

点击<添加认证>按钮添加身份认证信息,目前支持的认证方式包括:Basic Auth、OAuth1.0、OAuth2和Digest。

  • 选择Basic Auth和Digest认证时,需要填写用户名和密码,在访问API时使用。

  • 选择OAuth1.0和OAuth2认证时,需要在请求API时自动获取Access_Token和secret,然后通过URL进行传递。

1460105094512031.png  设置正确的认证信息后,才能成功访问API,从而监控API请求。

HTTP头

点击<添加HTTP头>按钮添加HTTP请求头,定义请求需要获取的内容,包括请求头及对应的值。

参数

点击<添加URL参数>按钮添加URL参数,定义需要传递的参数,包括参数名和对应的值。

设置的URL中已经包含了参数时,直接点击<自动解析参数>按钮获取参数即可。您也可以重新编辑或删除参数。

结果匹配

点击<添加断言>按钮添加断言,设置断言的属性名、比较条件和目标值,从而检查API请求获取内容是否与预期内容相匹配。

  • 位置:目前支持的获取位置包括:JSON Body、XML Body、Text Body、Response Headers和状态码,例如选择“JSON Body”。

  • 属性名:设置要检查的属性名,例如输入“id”。

  • 比较条件:设置目标值与获取内容的比较条件,包括为空、不为空、等于、不等于、包含、不包含、是数字、小于、小于等于、大于、大于等于、数值等于等条件,例如选择“等于”。

  • 目标值:设置判断获取内容是否正确的一个标准值。

    点击<自定义>按钮输入一个值;

    点击<变量>按钮可直接选择一个已定义的初始化变量作为目标值,初始化变量需要在“初始变量”中提前定义。例如选择已定义的变量“$a”。

则设置的断言的为:在JSON Body中,id的属性值等于变量“$a”的值,依次判断获取内容是否正确。

1460105094512031.png   添加断言后才能判断API请求的正确性,匹配则正确性为“是”,否则为“否”。

变量

点击<提取变量值>按钮,设置获取位置、属性名并选择初始化变量,则可动态提取属性值并赋给初始化变量。Text Body支持提取字符串,能够提取动态输出的数据。

添加请求时间间隔

输入发送API请求的时间间隔,例如设置“10s”,则发送一次API请求后,等待10s发送第二次API请求。

初始化变量相关内容的详情说明请参考“设置初始变量”部分。

3、复制API请求

为避免重复设置,添加API请求后,您可点击<>图标复制当前API请求作为一条新的API请求,点击<>图标根据需要修改相应内容即可。

4、测试API监控请求

添加API请求后,为保证正常监控,需检查是否能请求成功。点击<测试>按钮来测试请求并查看测试结果,如下图所示。

请求成功即可用,所有请求都成功时,监控项目(即整个API)的状态为正常且可用,点击<查看结果>查看请求的返回结果。

添加断言时才能测试请求的正确性,所有请求都正确时监控项目的正确性为“是”,点击<查看断言>查看断言详情。


设置初始变量

使用变量时需要提前初始化变量,即为变量赋默认值。在“初始变量”中添加并管理初始变量,如下图所示。

1460105347505664.png

点击<添加初始化变量>按钮添加一个变量,设置变量名称和变量值。变量名称必须以$符号开头,并且是纯字母组成。

除自定义变量外,您可以使用系统变量,系统变量可用于所有监控项目的API请求,点击<查看系统函数>按钮查看可用的系统变量,详细说明见下表。

变量

使用方式

输出说明

timestamp

${timestamp()}  

${timestamp(s)}   

${timestamp(ms)}   

Unix时间戳,例如对应的结果为:

20160222121928

1456113541

1456113598686

random()

${random(1,100)}

随机数,例如1到100之间的一个数。

uuid

${uuid}

通用唯一识别码 (Universally Unique   Identifier),例如99386c08-6da7-4833-bb31-e70ce747c921

base64()

${base64($username)}

base64编码值,例如5L2O5aOw6K+0,可以是变量。

md5()

${md5($pwd)}

MD5加密值,例如50b7fe4da64720232c25bc7c6d66f6c5可以是变量。

初始化变量后,您可利用变量来存储值,动态地提取HTTP响应数据,并在多个请求之间动态地传递数据和状态。比如,添加请求1时,可通过设置变量$a来动态提取Response Header中的Date值。然后在添加请求2时,使用变量$a作为断言的目标值。


设置监控

在“监控设置”中设置监控选项和自定义告警线,如下图所示。

1460105674713391.png

1、设置监控选项

设置监控选项的详细说明见下表。

设置项

说明

监测点

选择需要监控的监测点。

监控频率

监控宝执行监控的时间间隔,例如选择“2”,则监控宝每隔2分钟就执行一次监控。

重试几次告警

监控宝发现故障后需要重试几次才需要发送告警通知,重试时间间隔目前为1分钟。例如,设置重试1次,那么监控宝第一次发现故障时,会在1分钟后重试1次,如果仍然失败,则发送告警通知。

连续告警提醒

监控宝发送连续告警提醒的时间间隔。例如选择“4”,则您的监控项目出现故障时,在第一次报警以后,每隔4分钟,监控宝都将给您发送一次报警。

1460105094512031.png   要实现连续告警提醒,还需要在【设置常规告警通知】中开启对相应用户的“连续提醒”功能。

2、设置自定义告警线

您能够自己定义故障判断规则,针对监控的指标设置一个阈值作为告警线。在监控过程中,监控宝发现指标超出、低于或是等于您设定的告警阈值时,便会发送告警提醒您。

目前支持的自定义的指标包括当前响应时间、当日可用率(常规)、当日正确率(常规)、当前可用性和当前正确性。点击<>图标设置告警线,各选项的详细说明见下表。

设置项

说明

监控指标描述

为当前指标选择判定条件,输入一个数值作为触发告警的阈值。例如“当前响应时间大于1000ms”。

针对分布式监测点

选择告警条件针对的监测点:

  • 任意几个监测点:需要指定监测点个数。

  • 指定常规监测点:需要在监测点列表中选择特定的监测点。

  • 指定移动监测点:后续将增加移动监测点。

连续触发几次告警

连续触发告警阈值多少次就发送告警通知。例如选择“2”,则连续2两次触发告警阈值,监控宝就发送告警通知。

是否立即开启

选择“开启”启用当前告警线;选择“关闭”则不使用当前告警线。


五、设置告警

在“告警设置”中设置常规告警方式,如下图所示。

1460105868121680.png

选择告警用户及对应的告警方式即可,设置的项目公开范围决定了可选择的用户。但请注意以下事项:

  • 在设置常规告警通知时,请确保您选择的告警接收用户已在【用户中心→通知设置】的对应通知方式中开启了“接收告警通知”选项,并已经完成了以下操作,以保证及时接收监控宝发送的告警通知:

    填写用于接收告警通知的Email和手机号。

    下载并安装移动端APP。

    开通并绑定了微信。

  • 告警方式对应的复选框后显示“1460105885455696.png”图标时,说明当前用户没有设置该告警方式,您需要提醒该用户尽快设置以免影响接收告警通知。

  • 选择“连续告警”时,请确保您已在“设置监控选项”中设置了连续告警提醒频率,否则无法实现连续告警。

本次设置的告警方式将作为下次创建监控项目的默认通知方式。