[发明专利]日志异常检测方法及装置有效
申请号: | 202011444338.8 | 申请日: | 2020-12-08 |
公开(公告)号: | CN112579414B | 公开(公告)日: | 2023-07-28 |
发明(设计)人: | 李晓戈;邱连涛;胡飞雄;胡立坤;张东晨;于智洋 | 申请(专利权)人: | 西安邮电大学;腾讯科技(深圳)有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34 |
代理公司: | 北京易捷胜知识产权代理有限公司 11613 | 代理人: | 齐胜杰;李会娟 |
地址: | 710121 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志 异常 检测 方法 装置 | ||
本申请属于数据处理技术领域,具体涉及一种日志异常检测方法和装置。其中的方法包括:获取多条原始日志记录,作为待检测日志序列;基于预先建立的日志模板库,提取所述待检测日志序列的变量特征、窗口特征、顺序特征;基于所述变量特征,通过统计学法或聚类法对待检测日志序列中每个日志记录中的数值型变量的变量值进行异常检测;基于所述窗口特征,通过主成分分析法对待检测日志序列中每个时间窗口内日志记录出现的频率进行异常检测;基于所述顺序特征,通过有限自动机的方法检测所述待检测日志序列中日志记录子序列是否属于预先建立的任务集合。本申请中的方法能够对日志记录进行实时检测,及时、准确地获取日志记录中的异常数据。
技术领域
本申请属于数据处理技术领域,具体涉及一种日志异常检测方法和装置。
背景技术
现代系统正在向大规模发展,通过构建数千台机器来扩展分布式系统,使用数千台处理器的超级计算机来扩展高性能计算。系统运行时通常将软件运行的实时状态记录以文本形式记录在文件中,该文件称为日志(logs)或日志文件,记录软件运行期间的详细运行时信息。一个日志包括多行日志记录,每一行日志记录用于记录软件运行时的一个事件。日志中的日志记录通常具有隐含的日志模板(schema),即该记录本身的模式或格式。
现有方法中开发人员根据他们的领域知识手动检查系统日志或编写规则来检测异常,并额外使用关键字搜索或正则表达式匹配。然而,这种依赖人工检查日志的异常检测,无法实现对日志的准确检测。
发明内容
(一)要解决的技术问题
鉴于现有技术的上述缺点、不足,本申请提供一种日志异常检测方法和装置。
(二)技术方案
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请实施例提供一种日志异常检测方法,该方法包括:
S10、获取多条原始日志记录,作为待检测日志序列;
S20、基于预先建立的日志模板库,提取所述待检测日志序列的变量特征、窗口特征、顺序特征;所述日志模板库是通过对历史日志记录进行日志解析,模板抽取得到的;所述变量特征为日志记录的数值型变量值,所述窗口特征为时间窗口内各日志模板出现的次数,所述顺序特征为根据日志记录的输出顺序得到的日志模板序列;
S30、对所述待检测日志序列进行异常检测,包括:
基于所述变量特征,通过统计学法或聚类法对所述待检测日志序列中每个日志记录中的数值型变量的变量值进行异常检测,以确定变量值异常的日志记录;
基于所述窗口特征,通过主成分分析法对所述待检测日志序列中每个时间窗口内日志记录出现的频率进行异常检测,以确定频率异常的时间窗口中的日志记录组;
基于所述顺序特征,通过有限自动机的方法检测所述待检测日志序列中日志记录子序列是否属于预先建立的任务集合,以确定行为异常的日志记录子序列。
可选地,所述窗口特征的提取方法包括:
对所述待检测日志序列中的每一条日志记录,从所述日志模板库中匹配得到其使用的日志模板;
对所述待检测日志序列以预设长度的滑动窗口进行切分,统计每个窗口中各个日志模板出现的次数,作为时间窗口的窗口特征。
可选地,每次滑动窗口滑动的距离为半个窗口。
可选地,基于所述窗口特征,通过主成分分析法对待检测日志序列中每个时间窗口内日志记录出现的频率进行异常检测,包括:
基于每个时间窗口的窗口特征,生成窗口日志数量向量;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安邮电大学;腾讯科技(深圳)有限公司,未经西安邮电大学;腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011444338.8/2.html,转载请声明来源钻瓜专利网。