Page 73 - 《软件学报》2021年第7期
P. 73
王璐 等:基于事件关系保障识别质量的自适应分析方法 1991
不同服务的计算机和访问的客户端计算机共 8 台.其配置信息均为 CPU Inter(R) Core(TM) i5-4570,内存为 8GB,
操作系统是 Windows 64 位.
Table 2 Running log snippet display
表 2 运行日志片段示例
商品服务页面 商品服务页面 商品服务 商品服务心跳 节点 CPU 节点内存
序号 时间戳
响应时间(s) 错误率(%) 请求量 返回时间(s) 利用率(%) 使用率(%)
1 1.69 0 865 34 69 81 15:41:50
2 2.04 2 709 34 70 80 15:41:53
3 1.45 0 945 34 61 80 15:41:56
4 0.61 0 1 078 34 74 78 15:41:59
5 1.57 0 937 34 77 75 15:42:02
6 3.83 9 1 434 34 82 77 15:42:05
7 4.13 4 1 574 34 85 80 15:42:08
8 3.94 0 1 359 34 84 79 15:42:11
9 3.59 0 1 347 34 87 83 15:42:14
… … … … … … … …
4.2 算法有效性测试
(1) 识别准确性测试(RQ1)
本文在前述数据集 1~6 下测试了 SAFER 的识别准确性.首先挖掘并建模事件关系,然后将其转换为贝叶斯
网络模型并进行可视化展示,在此基础上测试了贝叶斯网络模型识别事件的准确性.具体如下.
首先,本文采用事件关系挖掘方法在数据集 1~6 中挖掘事件关系.通过重复实验,本文将元素的时间窗大小
ETW 设为 5s,序列时间窗大小 STW 设为 20s,最小支持度 minsup 设为 9,以获得有价值的挖掘效果.挖掘结果见
表 3,本文以表中的第 1 条事件关系为例展开介绍.若服务多次调用系统 API 接口失败,服务可能不会获取到所
需的数据,或是影响服务的功能实现,因此对应页面的数据展示或者功能将会有一个较高的错误率.
Table 3 Mined event relationships display
表 3 挖掘的事件关系展示
频繁序列 支持度 对应的因果关系
{多次调用系统 API 接口失败},{对应页面的出错率较高} 10 多次调用系统 API 接口失败||多次调用第三方组件失败
{多次调用第三方组件失败},{对应页面的出错率较高} 9 对应页面的出错率较高
{服务任务量较重},{对应功能的响应时间较长} 23 服务任务量较重对应功能的响应时间较长
{服务心跳返回较慢},{对应页面响应非常慢甚至无响应} 11 服务心跳返回较慢对应页面响应非常慢甚至无响应
{对应页面响应非常慢甚至无响应},{服务资源故障} 13 对应页面的响应非常慢甚至无响应服务资源故障
{页面出错率较高},{服务资源过载} 11 页面出错率较高&&页面响应较慢服务资源过载
{页面响应较慢},{服务资源过载} 16
其次,将上述挖掘得到的事件关系建模为模糊故障树,其中的顶事件分别设为“服务资源出现问题”“节点资
源出现问题”“软件应用失效”等,图 4 和表 4 以顶事件为“服务资源出现问题”为例介绍事件关系模型.
Table 4 Symbolic representation
表 4 符号表示
符号 事件名称
T 服务资源出现问题
M 1 服务资源故障
M 2 服务资源过载
M 3 页面响应超级慢甚至无响应
M 4 页面出错率较高
M 5 页面响应较慢
X 1 服务心跳返回非常慢
X 2 多次 API 调用失败
X 3 多次第三方调用失败
Fig.4 “Service Resource Problem” fuzzy fault tree X 4 服务的任务量较重
X 5 服务心跳返回较慢
图 4 “服务资源出现问题”模糊故障树