Page 322 - 《软件学报》2020年第10期
P. 322
3298 Journal of Software 软件学报 Vol.31, No.10, October 2020
我们在对日志类型进行字符对比分类时,为了减少分类的模式,在字符匹配时引入了最长公共子序列的概
念 [23] ,这样使得计算时得到的匹配模式大量减少.得到分类结果后,可以验证日志的压缩率达到 99%以上.
2.2 后续内容中基本符号解释
后续系统设计和分析时,我们为了简化讨论,将定义一些数学符号,具体解释见表 1.
Table 1 Mathematical notation and interpretation
表 1 数学符号与解释
符号 解释
T n 第 n 种类型的日志
t n 第 n 个时间片段
λ 矩阵的特征值
V 矩阵的特征向量
NM n 节点的第 n 种异常日志流量模式
S n 得到的第 n 个日志类型有序排列
D n 白天时间段(8:00~18:00)日志产生的第 n 种类型序列
N n 晚上时间段(18:00~24:00)日志产生的第 n 种类型序列
M n 深夜时间段(0:00~8:00)日志产生的第 n 种类型序列
3 方法结构
为了适应高性能计算环境下出现的流量异常检测问题,我们根据系统中产生的日志特性,选择适当的预处
理和无监督机器学习算法来对系统日志的分析过程进行整体的构建与规划,设计出一种异常流量模式检测的
方法,该方法的结构主要包含 3 部分:预处理模块、异常处理模块、分类模块.各部分的功能简述如下.
(1) 预处理模块:根据日志匹配算法对输入的大量日志进行分类,输出日志类别文件;
(2) 异常处理模块:根据输入的待分析日志以及上一步得到的日志类别文件,使用基于主成分分析的异常
检测方法,得出异常的时间片内不同节点的异常类型序列;
(3) 分类模块:根据输入的大量异常类别序列,使用基于最长公共子序列的距离度量进行层次聚类,得出
不同的异常日志流量模式.
根据各个功能的作用,我们得到日志整体结构图,如图 1 所示.
日志匹配 待分析日志
分类算法 日志类型仓库
预处理模块
日志类别文件 日志时间片向量 结构化日志数据
异常日志时间片
异常处理模块
基于数量和
分位数的 异常时间片内异常节点
异常过滤规则
基于最长公共子
层次聚类算法进行聚类 序列的距离度量
类 1 类 2 … 核心思想:不同日志
分类模块 类型的有序排列代表
异常日志流量模式
Fig.1 Flow chart of log overall structure
图 1 日志整体结构流程图