一种基于机器学习的日志等级分析方法技术

技术编号:18444762 阅读:426 留言:0更新日期:2018-07-14 10:19
本申请发明专利技术一种基于机器学习算法的日志分析方法。该方法通过收集大量的已有日志信息作为训练集,并构建机器学习模型,再通过对训练集的学习与测试,形成一个高精度的预测模型;然后让此预测模型运行在服务器中,自动分析此后出现的每一条新日志,并预测出该条日志的严重等级,若发现是个高危等级的日志,则立即通知维护人员,做到及时响应、及时处理问题。

A log level analysis method based on machine learning

This application invents a log analysis method based on machine learning algorithm. By collecting a large number of existing log information as training sets and building a machine learning model, a high precision prediction model is formed by learning and testing the training set. Then the prediction model is run in the server to automatically analyze every new log that appears since then and predict the log. If the severity level is found to be a log of high risk grade, notify the maintenance personnel immediately, so as to respond promptly and deal with the problem in time.

【技术实现步骤摘要】
一种基于机器学习的日志等级分析方法
本专利技术涉及服务器检测领域,具体涉及一种基于机器学习的日志等级分析方法。
技术介绍
一般情况下,一台服务器上通常会运行多种服务,开启数十种软件,同时还会有运维人员定期对服务器机器进行维护和测试,这一系列的操作都会产生大量的操作数据。通常情况下,为了服务器的安全,操作系统及运行的服务都会对一些关键操作进行日志记录,比如用户远程登录、连接数据库、程序发生故障崩溃等,将这些关键信息记录日志,可以有助于在日后出现问题时方便进行问题定位。由于服务器上的日志文件非常多,并且每个日志文件中还会存放大量的日志记录,因此如何对其中的内容进行分析、提取出有效的信息比如警告信息、错误提示信息等等,对维护人员来说是提高工作效率的一个重要手段。目前比较常用的处理方法是在发生问题后,由人工从服务器中提取相关日志,并将相关日志整理成表格或其他固定格式的文件,然后按照时间点找到出现问题的时刻,再对该时刻的日志进行分析,定位到问题所在,最后对问题进行处理。这种分析定位的方法,效率低下,响应滞后,无法在第一时间发现并定位问题,因此亟需一种更有效的方式,对服务器的日志文件进行处理分析。考虑到在人工智能飞速发展的今天,机器学习领域取得了非常大的进展,可以将比较成熟的机器学习算法应用于海量日志分析中。鉴于此,为了解决上述问题,本申请专利技术一种基于机器学习算法的日志分析方法。该方法通过收集大量的已有日志信息作为训练集,并构建训练模型,再通过对训练集的学习与测试,形成一个精度很高的预测模型。然后让此模型运行在服务器中,让它自动分析此后出现的每一条新日志,并预测出该条日志的严重等级,若发现是个高危等级的日志,则立即通过邮件或其他手段通知维护人员,做到及时响应、及时处理问题。
技术实现思路
具体地,本申请请求保护一种基于机器学习的日志等级分析方法,其特征在于,该方法具体包括:获取服务器中海量日志记录信息;从该海量日志记录信息中提取日志文字信息和日志等级信息;将提取的日志文字信息和日志等级信息进行数字化处理,生成二维的数据结构;将海量日志记录信息随机排布,分割为两个部分,一部分作为训练集用来对机器学习模型进行训练,另一部分作为测试集,用来对机器学习模型测试其学习精度;选择一个精度较高的模型作为预测模型运行在服务器中,让它自动分析此后出现的每一条新日志,并预测出该条日志的严重等级,如果发现高危等级的日志,则立即通知维护人员。如上所述的基于机器学习的日志等级分析方法,其特征还在于,该机器学习模型可以选择KNN或者逻辑回归算法作为学习模型。如上所述的基于机器学习的日志等级分析方法,其特征还在于,在海量日志记录信息分割的两个部分中,训练集与测试集的比例为9:1。如上所述的基于机器学习的日志等级分析方法,其特征还在于,生成二维的数据结构为设置所有单词对应的列为feature,将最后一列结果设置为label。如上所述的基于机器学习的日志等级分析方法,其特征还在于,对于后续服务器中出现的每条日志信息,将其分解为feature信息,然后经过预测模型后预测对应的level,再根据level来自动生成提示信息。附图说明图1、日志分析流程图具体实施方式日志文件中的日志记录通常会包含许多信息,而我们的预测模型需要建立实际文字内容(英文)与该条日志级别之间的关系,而其他诸如发生时间、用户、所在进程等对日志级别影响不大,可以忽略。因此在日志文件的分析中,只需要将这两条关键提取出来即可。具体操作中,因为处理器对数字更为敏感,因此需要将文字信息转换为数字信息。首先对较为简单的日志级别进行加工,例如,可以为不同的日志级别赋予不同的数字,如‘error’对应0,‘warning’对应1,‘normal’对应2,以此类推。而实际上,日志文字内容复杂的多,无法为每条日志都用单独的数字来表示。在本专利技术中,是将训练集中的所有日志内容拆分为单词,组成类似一维数组的结构,每条日志的文字内容只包含其中的一小部分单词,若包含单词,则用数字1表示,不包含的单词用0表示。举例说明:日志记录log1文字信息为“Useradminlogin”,等级为‘normal’(2),则数据结构如下表所示:login……admin……User…levellog1100100102表1数字化后的日志文字与日志等级结构其中‘...’代表出现在其他日志内容中的单词。由于日志文字内容千变万化,所以该表结构的列可能会非常多,但是最后一列一定是level,也就是该条日志的级别。可以设置所有单词对应的列为feature,将最后一列结果设置为label。通过大量已有的feature与level数据对机器学习模型进行训练,从而使其能够对未来出现的日志内容进行预测。考虑到虽然日志文字内容可能会非常繁多,但是其终究是在一个有限的集合中,因此可以通过对模型的大量训练来获得一个精度较高的结果。为使本专利技术的目的、技术方案和优点更加清楚,下面将结合具体实施例对本专利技术做进一步地详细描述:附图1所示为如何通过海量日志数据对机器学习模型进行训练的过程。首先获得服务器中十万条日志记录信息,从中提取日志文字信息和日志等级信息,编写程序进行数字化处理,形成类似表1的数据结构,这个结构中将有十万行数据。其次,可以随机的对这十万条数据排布,然后进行分割,其中九万条作为训练集,剩余一万条作为测试数集,以便测试经过训练的模型精度如何。算法上,由于这是个分类的监督学习场景,可以选择KNN或者逻辑回归等算法作为学习模型,最终选择一个精度较高的模型作为最终方案。确定最终学习模型后,以后服务器中出现的每条日志信息,现将其分解为feature信息,然后经过模型后预测对应的level,根据level来自动通知维护人员进行后续处理。本专利技术的关键技术点在于机器学习算法在文字语言处理上的应用,通过将海量文字信息转化为数字信息,构建机器学习模型,并对其进行训练,获得一个精度较高的预测模型。显而易见地,上面所示的仅仅是本专利技术的一个具体实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据上述实施例获得其他的技术方案,以及在本专利技术保护的范围内做出的等同变化均应落入本专利技术的保护范围内,都属于本专利技术保护的范围。综上所述,本专利技术所述的基于机器学习的日志等级分析方法,能够解放人工分析日志的时间成本,完全自动化分析及预测日志内容,大大提高了分析日志文件的效率,节约了解决问题的时间。本文档来自技高网
...

【技术保护点】
1.一种基于机器学习的日志等级分析方法,其特征在于,该方法具体包括:获取服务器中海量日志记录信息;从该海量日志记录信息中提取日志文字信息和日志等级信息;将提取的日志文字信息和日志等级信息进行数字化处理,生成二维的数据结构;将海量日志记录信息随机排布,分割为两个部分,一部分作为训练集用来对机器学习模型进行训练,另一部分作为测试集,用来对机器学习模型测试其学习精度;选择一个精度较高的模型作为预测模型运行在服务器中,让它自动分析此后出现的每一条新日志,并预测出该条日志的严重等级,如果发现高危等级的日志,则立即通知维护人员。

【技术特征摘要】
1.一种基于机器学习的日志等级分析方法,其特征在于,该方法具体包括:获取服务器中海量日志记录信息;从该海量日志记录信息中提取日志文字信息和日志等级信息;将提取的日志文字信息和日志等级信息进行数字化处理,生成二维的数据结构;将海量日志记录信息随机排布,分割为两个部分,一部分作为训练集用来对机器学习模型进行训练,另一部分作为测试集,用来对机器学习模型测试其学习精度;选择一个精度较高的模型作为预测模型运行在服务器中,让它自动分析此后出现的每一条新日志,并预测出该条日志的严重等级,如果发现高危等级的日志,则立即通知维护人员。2.如权利要求1所述的基于机器学习的日志等级分析方法...

【专利技术属性】
技术研发人员:梁盛楠
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1