系统配置
在导航栏中依次点击业务感知分析>配置>系统配置,进入系统配置页面。
阈值配置
用户可在阈值设置探针采集数据的等待时间,描述如下:
- JS探针超时阈值:该阈值用于判定每一个请求是否超时。
- 跳转等待阈值:默认3000ms,触发window.open、表单提交、a标签后,新开页面的事件归属上个自动事件的时间阈值。新打开的页面可能会发起多个Ajax请求,当执行到第N个请求时,如果总执行时间已经超过了阈值,那么第N个请求的执行数据不会被计入window.open、表单提交、a标签所代表的操作。
- 页面打开时间:当一个用户操作触发一次页面的打开,支持选择完全加载、白屏、首屏、可交互4个时间点中任意一个作为页面的打开时间,该时间同时也会当做是操作的执行时间。刷新iframe、新增iframe都是一次页面的打开。
识别规则配置
如果Web自动识别的操作不准确,用户可以对应用或页面配置识别规则,聚合部分操作,主要解决以下问题:
- 点击一个按钮识别出多个元素路径,导致生成多个不同的操作。
- 从不同页面点击菜单栏,生成多个操作,如基调听云左侧导航栏菜单。
- 刷新页面时会自动识别出来脚本点击事件。
默认规则
展示Web操作的默认自识别规则,只做展示用,提示用户现有的系统规则,不可修改。已配置规则的应用或页面使用自定义识别规则,未配置规则的应用或页面使用默认规则识别Web操作。
其中,精准匹配指该项条件完全一样时才识别为一个操作;等于任意值指忽略该项规则,无论返回什么值都会识别为一个操作。
浏览器触发交互事件
- 交互元素所在页面URI:指URL的path部分,不包含参数,设置为“精准匹配”。
- 元素路径:指元素的Xpath,设置为“精准匹配”。
- 元素内容:指html元素或按钮的属性。如果当前元素是img,取值优先级:title > src > nodeName; 如果当前元素是a标签,取值优先级: text > title > href > nodeName ; 其他则按value > text > title中的优先级取值,设置为“等于任意值”。
- 元素触发请求/页面:指请求或页面URL的path部分,但不包含参数,设置为“等于任意值”。
- 脚本触发事件:程序脚本自动触发的事件将保留,设置为“开启”。
浏览器发送一次Ajax请求
Ajax请求URI:指请求URL的path部分,但不包含参数,设置为“精准匹配”。
浏览器打开页面
页面URI:指页面URL的path部分,但不包含参数,设置为“精准匹配”。
自定义识别规则
可按以下步骤修改JS探针自动识别操作的规则:
判断是否需要配置自定义识别规则。
如点击一个按钮识别出多个元素路径,导致生成多个不同的操作;从不同页面点击菜单栏,生成多个操作,如基调听云左侧菜单;刷新页面时会自动识别出来脚本点击事件。
批量删除操作。
在自定义识别规则生效前,需要手动删除要聚合的操作规则才能生效。详细说明请参见操作。
配置规则。
对某个应用或页面配置单独的识别规则,详细说明如下。
规则列表
展示用户配置的所有自识别规则,默认按配置的时间顺序排列,规则和规则之间为“或”的关系,每条规则展示其序号、规则名称、状态、优先级,并支持对规则进行编辑、复制和删除的操作。
- 状态:打开开关后,该条规则生效,关闭开关后规则不生效。
- 优先级:用户可设置多条规则的作用优先级,如果规则1和规则2的条件冲突,先执行优先级高的规则;点击表示往上移一位,点击表示往下移一位,点击将该条规则移至第一条,点击将该条规则移至最后一条。
- 点击后显示该条规则的编辑弹框。
- 点击后在规则下方新增一条相同的规则,命名为“xx_副本”。
- 点击后删除这条规则。
- 点击查看弹出规则配置框(只有只读权限有)。
规则处理逻辑
规则列表展示用户配置的所有自识别规则,规则与【数据过滤配置】、【默认规则】、【操作列表】已有操作(自识别生成)的关系如下:
说明:
规则只对自动识别的操作生效,对用户新建操作或自识别编辑后的操作不生效;
规则只对新生成的操作生效,对已经自识别出来的,在操作列表中存在的操作不生效;
事件判断优先级:【数据过滤配置】>【操作列表】已有操作 >【自定义识别规则】>【系统默认规则】。
添加规则
点击按钮,可在弹框中配置过滤规则,说明如下:
规则名称:用户可输入中文、字母、数字或下划线,最多输入20位,不可重名。
选择应用/页面:点击输入框后弹出过滤框,用户可选择应用或者页面。
说明:此处仅显示当前合同号下有权限的所有Browser应用。
操作所属类型:用户可选择浏览器触发交互事件、浏览器触发ajax请求、浏览器打开页面。
识别规则:配置操作的识别规则,按照操作类型做以下配置:
浏览器触发交互事件
如果应用或页面内的交互事件识别规则具有共性特征,可以使用以下5个识别规则的配置,规则之间是逻辑“且”的关系。按照规则生成的操作以第一个满足条件的事件命名,取其元素内容。
交互元素所属页面URI:设置交互元素所在页面规则,有以下几种配置,
精准匹配,指该项条件完全一样时才识别为一个操作,常用于区分事件所在页面时;
等于任意值,指忽略该项规则,无论返回什么值都会识别为一个操作,常用于不需要区分事件所在页面时。
正则匹配,用户可在输入框中输入匹配规则,满足规则的事件识别为一个操作。
使用举例,如从业务分析不同页面点击【业务追踪】时,如配置成“精准匹配”会识别成2个操作,配置成“等于任意值”会聚合成1个操作,用户也可配置“正则匹配”
.*bpi.*
把从业务分析的不同页签点击【业务追踪】聚合成一个操作。元素路径:设置交互元素在页面的path,有以下几种配置。
精准匹配,指元素路径完全一样时才识别为一个操作,常用于需要区分元素在页面上的位置时;
等于任意值,指忽略元素路径,无论返回什么值都会识别为一个操作,常用于不需要区分元素在页面上的位置时;
模糊匹配,用户点击后,可在弹框中填写路径规则,将满足规则的事件识别为一个操作。
使用举例,如在【操作列表】点击不同的操作名称或“编辑”按钮时,如配置成“精准匹配”会识别成多个操作;配置成“等于任意值”会聚合成1个操作;用户也可配置“模糊匹配” 把操作列表点击操作名称的事件聚合成一个操作。如下图所示,先在浏览器找到多个元素的路径。
比较2个元素路径,再把不同的部分聚合成
tr:nth-child(*)
。路径1:body > div.bg-gray > custom-ext-table > div:nth-child(2) > ngx-table > div.table-fixed > tbody > tr:nth-child(1) > td:nth-child(1) > div > a > span 路径2:body > div.bg-gray > custom-ext-table > div:nth-child(2) > ngx-table > div.table-fixed > tbody > tr:nth-child(2) > td:nth-child(1) > div > a > span 模糊路径:body > div.bg-gray > custom-ext-table > div:nth-child(2) > ngx-table > div.table-fixed > tbody > tr:nth-child(*) > td:nth-child(1) > div > a > span
把模糊路径填在输入框中,填写规则请参见新建Web操作。
元素内容:设置交互元素在页面的属性,有以下几种配置。
精准匹配,指元素内容完全一样时才识别为一个操作。
等于任意值,指忽略元素内容,无论返回什么值都会识别为一个操作。
包含,用户可在输入框中输入匹配内容,包含内容的事件识别为一个操作。
说明:如果当前元素是img,取值优先级:title > src > nodeName; 如果当前元素是a标签,取值优先级: text > title > href > nodeName ; 其他则按value > text > title中的优先级取值。
使用举例,如在【操作列表】点击不同的操作名称时,如元素路径配置成“等于任意值”,元素内容配置成“精准匹配”会识别成多个操作;元素内容配置“等于任意值”该页面的所有事件会聚合成1个操作;用户也可配置元素内容“包含” 【监测】把操作名称包含”监测“的事件聚合成一个操作。
元素触发请求/页面:设置点击交互元素后触发的请求或打开页面规则,有以下几种配置。
等于任意值:指忽略元素触发请求,无论触发什么请求都会识别为一个操作。
条件匹配:用户点击后,可在弹框中填写元素触发请求、页面、iframe规则。点击后弹出一条规则选项设置,规则和规则之间为“且”的关系,配置规则如下。
匹配规则:选择完全匹配时,操作的所有请求/页面/iframes满足以上条件才被过滤;选择部分匹配时,操作的部分请求/页面/iframes满足以上条件即被过滤。
位置:可选择请求、iframes、页面;默认选择请求。
URI规则设置:支持配置全路径匹配(选择“等于”)和正则匹配(选择“正则”)。
说明: 正则匹配仅支持常用的符号,包括 . ? + | { } [ ] ,如`.bpi,*`。
请求方法:可选择不限、get、post、put、delete、head。
只聚合请求个数相同的事件:勾选后,只有当2个事件的请求、iframe、页面的总个数相同时才会聚合为一个操作。
删除:点击后删除该条规则。
使用举例,如从业务分析不同页面点击【业务追踪】,要求把这个点击事件定义为一个操作。如下图所示,先在浏览器找到点击【业务追踪】触发的请求。
把元素所属页面URI配置成“等于任意值” ,元素路径配置成”等于任意值“,元素内容配置成”包含”【业务追踪】,元素触发请求/页面配置“条件匹配“,配置如下图示,即可把所有点击【业务追踪】事件聚合成一个操作。
- 脚本触发事件:设置脚本点击事件是否被识别为操作的开关,默认开启,程序脚本自动触发的事件将保留,关闭后将不识别为操作。如用户登录Network后,默认展示持续监测-单页面监测的页面,是脚本自动触发的事件。如脚本触发事件设置为开启,登录后,点击持续监测、点击单页面监测的操作触发次数就会加1;如设置为关闭,以上2个操作触发次数不增加,只有用户鼠标点击才会增加。
说明:
以上功能仅在Chrome 55、IE 11、Firefox 59以上版本才生效。
探针3.2.1及以上版本才生效。
浏览器触发Ajax请求
如果应用或页面内的Ajax请求的识别规则具有共性特征,可以使用以下配置。按照规则生成的操作以第一个满足条件的请求命名,规则是“xhr_/请求的URI”。
Ajax请求URI:设置Ajax请求的URI规则,有以下几种配置。
精准匹配,指该项条件完全一样时才识别为一个操作,常用于要将不同的ajax请求识别成不同的操作时;
等于任意值,指忽略该项规则,无论返回什么值都会识别为一个操作,常用于要将不同的ajax请求识别成一个操作时;
正则匹配,用户可在输入框中输入匹配规则,满足规则的事件识别为一个操作。
使用举例,如点击某些表单时,会生成多个Ajax操作,每个Ajax请求最后有不同id,如配置成“精准匹配”会识别成不同操作,配置成“等于任意值”该应用下所有的Ajax请求会聚合成1个操作。
用户也可配置“正则匹配”
/api/app/fms/v1/authorityResource/getListByRoleId/.*
把不同id的Ajax请求聚合成一个操作。
浏览器打开页面
如果应用的打开页面识别规则具有共性特征,需要在自动识别操作之前修改规则,可以使用以下配置。以第一个满足条件的页面命名,规则是“pf_/iframes/iframe中所加载的请求的URI”。
页面URI:设置页面的URI规则,有以下几种配置。
精准匹配,指该项条件完全一样时才识别为一个操作,常用于要将不同的页面识别成不同的操作时;
等于任意值,指忽略该项规则,无论返回什么值都会识别为一个操作,常用于要将不同的页面识别成一个操作时;
正则匹配,用户可在输入框中输入匹配规则,满足规则的事件识别为一个操作。
使用举例,如从【操作列表】点击操作名称后打开【性能洞察分析】页面,页面URI中包含操作ID。如配置“精准匹配”,不同操作ID会识别成不同操作,配置成“等于任意值”该应用下所有打开页面会聚合成1个操作。
用户也可配置“正则匹配”
/operation/performance/.*
把打开【性能洞察分析】聚合成一个操作。
保存和取消:点击后保存新增的规则,点击后不保存当前修改。
规则切换和保存
用户从默认规则切换至自定义识别规则后,如果新建规则,需点击右上角的按钮自定义规则才能生效。同理,如果从自定义规则切换至默认规则,需点击后默认规则才生效。