配置入口:API监控>任务管理

单击创建项目创建API监控任务,需要配置监控任务的基本信息、事务设置、监控设置和告警设置。

设置基本信息

创建API监控任务页面设置监控任务的基本信息,包括定义任务名称、选择项目是否加入分类。如下图所示。

1646132347780636.png

  • 任务名称

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

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

  • 项目是否加入分类

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

    您还可以单击创建分类,新建一个项目分类作为当前监控任务的分类。

设置初始变量

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

创建API监控任务事务设置页面,单击设置初始化变量,添加并管理初始变量,如下图所示。

1646132497104945.png

  • 设置自定义变量

    自定义变量页面区域,单击添加变量添加一个变量,设置变量名称和变量值。自定义变量仅应用于本监控任务。

    注意:变量名称必须以$符号开头,并且是纯字母组成。

    除自定义变量外,您可以查看系统变量及自定义系统变量,系统变量可用于所有监控任务的API请求。

  • 设置系统变量

    l    系统变量页面区域,单击自定义页签,单击添加变量添加系统变量,定义变量名称和变量描述信息。

    注意:在自定义系统变量时,变量名称必须以$public_开头。

    l     系统变量页面区域,单击公共函数页签,查看可用的系统变量,详细说明见下表。

使用方式

输出说明

timestamp

${timestamp()}  

${timestamp(s)} 

${timestamp(ms)} 

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

20160222121928

1456113541

1456113598686

uuid

${uuid()}

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

base64()

${base64($username)}

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

md5()

${md5($pwd)}

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

random()

${random(1,100)}

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

设置事务

创建API监控任务事务设置中添加并管理需要监控的API请求。

1646133266831691.png

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

  • 通过导入脚本添加API请求

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

    在打开的导入脚本对话框,单击查看实例了解脚本样式,脚本支持Postman和JMeter格式。您可以直接使用Postman中生成的脚本。

  • 手动添加API请求

    单击添加请求,打开请求编辑页面,如下图所示。

  1646133373388490.png

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

配置类型

设置项

说明

基本信息

自定义名称

设置API请求名称,长度不能超过30字符。

目标URL

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

SSL版本&开启SSL证书

URL为HTTPS类型时,SSL版本设置及证书开启才生效。支持SSL版本为:

Ø  SSLv3

Ø  TSLv1

Ø  TSLv1.1

Ø  TSLv1.2

选择默认时,系统自动适配TSLv1.2。

认证

单击1646133542218255.png添加身份认证信息,目前支持的认证方式包括:Basic Auth、OAuth1.0、OAuth2和Digest。

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

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

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

URL参数

Ø  设置的URL不包含参数时,单击添加URL参数添加URL参数,定义需要传递的参数,包括参数名和对应的值。

Ø  设置的URL中已经包含了参数时,直接单击参数自动解析获取参数即可。

您也可以重新编辑或删除参数。

HTTP头

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

断言

断言

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

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

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

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

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

单击自定义输入一个值;单击变量可直接选择一个已定义的初始化变量作为目标值。初始化变量需要提前定义,参考设置初始变量

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

注意:添加断言后才能判断API请求的正确性,若匹配则正确性为“是”,否则为“否”。

变量

变量

变量可用来存储值,动态地提取HTTP响应数据,并在多个请求之间动态地传递数据和状态。

单击提取变量值,设置获取位置、属性值提取表达式,设置变量类型,变量类型包括普通变量和公共变量。并选择初始化变量,则可动态提取属性值并赋给初始化变量。Text Body支持提取字符串,能够提取动态输出的数据。

关于初始变量设置,参考设置初始变量

异常

异常

单击添加条件置异常数据的位置、属性名、比条件和目标值,从而检查API求异常数据是否与预期数据相匹配,如果匹配则忽略该数据,不生告警、记录快照以及影响可用率算。

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

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

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

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

单击自定输入一个值;单击可直接选择一个已定义的初始化变量作为目标值。初始化变量需要提前定义,参考设置初始变量

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

  • 复制API请求

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

  • 移动API请求

    当添加多个API请求,如果需要调换请求的先后顺序,鼠标拖动目标请求移动到目标位置。

  • 添加请求间隔

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

  • 测试API监控请求

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

1646134068952257.png

请求成功即可用,所有请求都成功时,监控任务(即整个业务流程)的状态为正常且可用,单击展开>返回结果,查看请求的返回结果。

添加断言时才能测试请求的正确性,所有请求都正确时监控任务的正确性为“是”,单击展开>变量与断言,查看断言详情。

设置监控

创建API监控任务监控设置中,设置监测点和监控频率,如下图所示。

1646134178573225.png

  • 监测点:选择相应的监测点对目标API进行监测。您可以选择多个监测点也可以创建/选择一个监测点分组。所选择的监测点或监测点分组的成员均用来监测目标网API。

    l     选择监测点:根据需求选择多个监测点。

    l     选择监测点分组:选择或创建监测点分组。若分组内监测点成员有所变化,任务创建后仍会同步。

    注意:选择监测点分组后,监测点分组中的所有监测点都发生故障时才会向您发送告警消息。

  • 监控频率:监控宝执行监控的时间间隔,例如选择2分钟,则监控宝每隔2分钟就执行一次监控。

设置告警

创建API监控任务告警设置中,设置常规告警重试次数,连续连续告警提醒,告警线,企业IM通知及告警方式,如下图所示。

1646134415602557.png

告警设置项说明如下表所示:

设置项

说明

重试几次告警

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

连续告警提醒

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

注意:要实现连续告警提醒,还需要在告警方式中开启对相应用户的连续提醒功能。

自定义告警线

您能够自己定义故障判断规则,针对监控的指标设置一个阈值作为告警线。在监控过程中,监控宝发现指标超出、低于或是等于您设定的告警阈值时,便会发送告警提醒您。目前支持的自定义的指标包括当前响应时间、当日可用率(任意几个监测点)、当日正确率(任意几个监测点)、当前可用性(所有监测点)和当前正确性(所有监测点)。单击1646134603499731.png设置告警线。设置内容如下:

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

Ø  针对分布式监测点

ü  指定监测点(仅适用于指标”当前响应时间“)

ü  所有监测点 (仅适用于指标“当前可用性”和“当前正确性”)

ü  任意几个监测(可以指定监测点数目)

注意:对于指标“当前可用率”和“当前正确率”,监测点不可设置,默认与任务当前所选监测点相同。

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

Ø  是否立即开启:选择开启,启用当前告警线;选择关闭则不使用当前告警线。

企业IM通知

设置关闭/开启。设置开启时,您需要选择告警通知的类型以及群组名称。

注意:请确保您已经在WebHooks通知中设置添加WebHook

告警方式

选择告警用户及对应的告警方式即可。本次设置的告警方式将作为下次创建监控任务的默认通知方式。设置时请注意以下事项:

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

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

ü  下载并安装移动端APP。

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

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