用户可在设置页面通过自定义参数获取想要的数据,包括自定义参数、自定义事务、自定义远程服务、应用设置、自定义调用栈五部分。
自定义参数页面用于定义web事务trace中上传的参数数据,OneAPM AI按照集群进行分类,在每个集群下面,用户可自定义名称、定义不同类型上传规则,下面以java探针为例,它支持http和method类型。
HTTP类型
当用户选择类型为http时,用户可设置http请求参数,包括URL、session id、默认用户特征参数、参数提取规则、适用的web事务。
用户可自定义参数提取规则,AI支持的提取范围包括cookie、request header、request parameter、session,key则根据用户自己业务代码进行定义。
在设定好参数提取规则后,可选择适用的web事务,对该web事务进行trace追踪。
Method类型
用户可自定义方法签名,参数过滤条件、指定收集的参数、适用的web事务等。
自定义事务页面用于灵活设置web事务的数据拆分和聚合规则。选择对应的集群,点击添加,即可进入到自定义事务配置页面,页面由设置名称、业务匹配范围、请求梳理拆分业务共三部分组成,其中优先级是不必须要填写的,当一个集群配置多个自定义事务时,一个URL符合多个配置的自定义事务,系统将按照优先级进行查找与显示。
OneAPM AI的自定义事务设置视探针而有所不同,以Java探针为例,它支持Servlet、POJO类型事务提取。
Servlet类型
业务匹配范围是对监控的事务进行描述,由请求方法、URL、HTTP 参数、Header 参数、请求主机地址、请求主机端口 6 部分组成,用户可根据自身业务情况进行自定义。
当在业务匹配范围选择了URL后,在右侧可使用请求数据拆分业务。
使用请求数据拆分业务是对左半部分(业务匹配范围)匹配出来的 Web 事务进行如何展示。
* 使用请求数据拆分业务,由 从开头的第几段来拆分事务、尾部的第几段来拆分、中间的第几段来拆分 3 部分组成。
* HTTP 参数拆分事务,是问号之后的参数进行拆分事务,例如一个 URL 是
```
www.xxx.com/aaa/bbb/ccc?ddd=eee&fff=ggg
```
当用 ddd 来拆分事务,展示出来的就是
```
aaa/bbb/ccc/eee
```
使用 Header 参数来拆分事务,例如
www.xxx.com/aaa/bbb/ccc?ddd=eee&fff=ggg
Connection 是 Keep-alive,用 Connection 来进行拆分事务,展示出来就是
aaa/bbb/ccc/keep-alive
按照请求方式拆分事务,根据配置规则来进行展示,当配置规则是 POST 就会展示出 POST。
按照请求主机地址来拆分事务,会根据请求的主机地址来展示。
请求来源主机地址拆分事务,就是用户访问的主机来展示。
POJO类型
用户可在此版块灵活设置远程服务的数据拆分和聚合规则。 选择要配的集群后点击添加,进入到自定义远程服务。使用请求数据拆分业务的使用方法可参见自定义事务模块方法。
应用设置板块主要用于设置探针上传数据的相关阈值和参数,One APM AI以整个应用的框架向用户进行呈现,用户可对应用下的每个集群进行设置。
在应用设置页面,OneAPM AI分为基本信息、慢事务、浏览器监控、Web 事务、HTTP 请求参数、错误信息、数据库、日志错误采集、过滤指定事务这 9个部分。
基本信息
用于修改当前应用的展示名称。
慢事务
浏览器监控
通过勾选或者取消勾选,可以启用或者停用浏览器监控。
Web 事务
HTTP 请求参数
错误信息
数据库
日志错误采集
可以配置Java探针从日志中采集错误信息,目前支持常见的日志类型有java.util.log, log4j, logback。可以根据具体应用中使用哪种日志类勾选日志采集类型。除了从常见的日志类中采集日志信息外,还可以从自定义参数中配置类和方法,提取异常和错误,具体参见自定义参数说明。
过滤指定事务
对指定的过滤事务进行修改
在调用栈模块,用户可以将调用栈加入黑名单或白名单,其中黑名单主要是用于过滤掉一些不重要的方法和类,降低调用栈的可读性和系统开销。白名单主要是用于在过滤掉的类中显示一些特殊方法。