一种智能分析日志数据的方法及装置与流程

文档序号:12906008阅读:317来源:国知局
一种智能分析日志数据的方法及装置与流程

本发明涉及日志分析技术领域,特别涉及一种智能分析日志数据的方法及装置。



背景技术:

日志数据是故障排除、监控、安全、合规、电子取证等许多安全应用的基础。日志数据具有巨大的分析价值,利用日志数据可以分析点击流、社交媒体、以及以客户为中心的使用案例中的行为记录数据,如活跃用户数、应用使用数量、服务质量、使用偏好等。随着日志数据容量和类型的增长,日志数据已经超出了人类的认知能力,对日志数据内容进行分析并追踪潜在的问题越来越困难,尤其是在多日志数据相关性分析出现之后,需要经验丰富的操作人员跟踪事件链、过滤噪音,并最终诊断出问题出现的根本原因。针对日志数据信息的it异常检测告警,常常假设数据服从正态分布,然后根据3σ原则,认定99.7%区间以外的数据属于异常。

现有技术中,基于日志数据检测的告警需要用户自行配置数据,需要用户具备较高的专业技能才能够预先编写好查询语句,设置查询频率,设定查询时间等条件,上述操作为用户增添繁琐复杂的负担,而且出现用户没有考虑到的告警情况,将无法及时获取告警信息。而且,目前常见的基于正态分布的告警模式会带来两个问题:一、永远都有0.3%的数据被认定为异常,而事实可能是100%正常的数据;二、在真实it环境中,绝大多数数据并不服从正态分布,会导致误报增加。



技术实现要素:

本发明提供一种智能分析日志数据的方法及装置,可无需用户具备相应的知识储备来自行配置检测数据和警告条件。同时也避免了过度依赖历史数据的弊端,还有效的降低了误报出现的概率。

根据本发明实施例的第一方面,提供一种智能分析日志数据的方法,包括:

将接收到日志数据划分为多个样本;

生成各个所述样本的检测组;

分析出各个所述样本的检测组中数据异常的检测组;

实时发出警告信息到用户端,所述警告信息包括所述数据异常的检测组的相关信息。

在一个实施例中,所述将接收到日志数据划分为多个样本,包括:

每间隔一个预设的执行时间周期,将预设的执行时间周期内接收到的全部的日志数据构成待分析集合;

计算出所述待分析集合中的日志数据的数量与预设的第一数量阈值的商;

将所述待分析集合中的日志数据分配到各个样本中,其中,所述样本的数量为所述商的数值。

在一个实施例中,所述生成各个所述样本的检测组,包括:

通过机器学习抽取出各个所述样本中的日志数据的关键字段,所述关键字段包括访问数量、权限更改和错误信息中的任一者或多者;

对各个所述样本的日志数据的关键字段进行分析统计;

根据分析统计的结果,生成各个所述样本的检测组。

在一个实施例中,所述分析出各个所述样本的检测组中数据异常的检测组,包括:

分别对各个所述样本的检测组进行非参数分布校验;

对非参数分布校验的检验结果进行组间对比;

通过组间对比,确认出数据异常的检测组。

在一个实施例中,还包括:

根据所述警告信息,可直接跳转至所述数据异常的检测组的样本。

根据本发明实施例的第二方面,提供一种智能分析日志数据的装置,包括:

划分模块,用于将接收到日志数据划分为多个样本;

生成模块,用于生成各个所述样本的检测组;

分析模块,用于分析出各个所述样本的检测组中数据异常的检测组;

警告模块,用于实时发出警告信息到用户端,所述警告信息包括所述数据异常的检测组的相关信息。

在一个实施例中,所述划分模块,包括:

构成子模块,用于每间隔一个预设的执行时间周期,将预设的执行时间周期内接收到的全部的日志数据构成待分析集合;

计算子模块,用于计算出所述待分析集合中的日志数据的数量与预设的第一数量阈值的商;

分配子模块,用于将所述待分析集合中的日志数据分配到各个样本中,其中,所述样本的数量为所述商的数值。

在一个实施例中,所述生成模块,包括:

抽取子模块,用于通过机器学习抽取出各个所述样本中的日志数据的关键字段,所述关键字段包括访问数量、权限更改和错误信息中的任一者或多者;

统计子模块,用于对各个所述样本的日志数据的关键字段进行分析统计;

生成子模块,用于根据分析统计的结果,生成各个所述样本的检测组。

在一个实施例中,所述分析模块,包括:

校验子模块,用于分别对各个所述样本的检测组进行非参数分布校验;

对比子模块,用于对非参数分布校验的检验结果进行组间对比;

确认子模块,用于通过组间对比,确认出数据异常的检测组。

在一个实施例中,还包括:

跳转模块,用于根据所述警告信息,可直接跳转至所述数据异常的检测组的样本。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:

图1为本发明一示例性实施例示出的一种智能分析日志数据的方法的流程图;

图2为本发明一示例性实施例示出的一种智能分析日志数据的方法的步骤s11的流程图;

图3为本发明一示例性实施例示出的一种智能分析日志数据的方法的步骤s12的流程图;

图4为本发明一示例性实施例示出的一种智能分析日志数据的方法的步骤s13的流程图;

图5为本发明另一示例性实施例示出的一种智能分析日志数据的方法的流程图;

图6为本发明一示例性实施例示出的一种智能分析日志数据的装置的框图;

图7为本发明一示例性实施例示出的一种智能分析日志数据的装置的划分模块61的框图;

图8为本发明一示例性实施例示出的一种智能分析日志数据的装置的生成模块62的框图;

图9为本发明一示例性实施例示出的一种智能分析日志数据的装置的分析模块63的框图;

图10为本发明另一示例性实施例示出的一种智能分析日志数据的装置的框图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1是根据一示例性实施例示出的一种智能分析日志数据的方法流程图,如图1所示,该智能分析日志数据的方法,包括以下步骤s11-s14:

在步骤s11中,将接收到日志数据划分为多个样本;

在步骤s12中,生成各个所述样本的检测组;

在步骤s13中,分析出各个所述样本的检测组中数据异常的检测组;

在步骤s14中,实时发出警告信息到用户端,所述警告信息包括所述数据异常的检测组的相关信息。

在一个实施例中,日志数据是故障排除、监控、安全、合规、电子取证等许多安全应用的基础。日志数据具有巨大的分析价值,利用日志数据可以分析点击流、社交媒体、以及以客户为中心的使用案例中的行为记录数据,如活跃用户数、应用使用数量、服务质量、使用偏好等。随着日志数据容量和类型的增长,日志数据已经超出了人类的认知能力,对日志数据内容进行分析并追踪潜在的问题越来越困难,尤其是在多日志数据相关性分析出现之后,需要经验丰富的操作人员跟踪事件链、过滤噪音,并最终诊断出问题出现的根本原因。针对日志数据信息的it异常检测告警,常常假设数据服从正态分布,然后根据3σ原则,认定99.7%区间以外的数据属于异常。

现有技术中,基于日志数据检测的告警需要用户自行配置数据,需要用户具备较高的专业技能才能够预先编写好查询语句,设置查询频率,设定查询时间等条件,上述操作为用户增添繁琐复杂的负担,而且出现用户没有考虑到的告警情况,将无法及时获取告警信息。而且,目前常见的基于正态分布的告警模式会带来两个问题:一、永远都有0.3%的数据被认定为异常,而事实可能是100%正常的数据;二、在真实it环境中,绝大多数数据并不服从正态分布,会导致误报增加。本实施例中的技术方案可妥善的解决上述问题。

首先将接收到日志数据划分为多个样本。进一步的,每间隔一个预设的执行时间周期,将预设的执行时间周期内接收到的全部的日志数据构成待分析集合;计算出该待分析集合中的日志数据的数量与预设的第一数量阈值的商;将该待分析集合中的日志数据分配到各个样本中,其中,该样本的数量为该商的数值。

然后生成各个该样本的检测组。进一步的,通过机器学习抽取出各个该样本中的日志数据的关键字段,该关键字段包括访问数量、权限更改和错误信息中的任一者或多者;对各个该样本的日志数据的关键字段进行分析统计;根据分析统计的结果,生成各个该样本的检测组。

接着分析出各个该样本的检测组中数据异常的检测组,进一步的,分别对各个该样本的检测组进行非参数分布校验;对非参数分布校验的检验结果进行组间对比;通过组间对比,确认出数据异常的检测组。

最后实时发出警告信息到用户端,该警告信息包括该数据异常的检测组的相关信息。

采用本实施例中的技术方案可无需用户具备相应的知识储备来自行配置检测数据和警告条件,系统可自动的分析出异常的日志数据。同时也避免了过度依赖历史数据的弊端,还有效的降低了误报出现的概率。

在一个实施例中,如图2所示,步骤s11包括如下步骤s21-s23:

在步骤s21中,每间隔一个预设的执行时间周期,将预设的执行时间周期内接收到的全部的日志数据构成待分析集合;

在步骤s22中,计算出所述待分析集合中的日志数据的数量与预设的第一数量阈值的商;

在步骤s23中,将所述待分析集合中的日志数据分配到各个样本中,其中,所述样本的数量为所述商的数值。

在一个实施例中,每间隔一个预设的执行时间周期,该执行时间周期用户可以自行指定,还可以根据日志数据高峰期设置较小的执行时间周期,在日志数据低谷期设置较大的执行时间周期。将预设的执行时间周期内接收到的全部的日志数据构成待分析集合,即为样本的母本。系统中预设的第一数量阈值为一个样本中包含的日志数据的数量,通过计算可得出该待分析结合中日志数据的数量与预设的第一数量阈值的商,该商的数值大小代表着样本的组数,如果存在余数则舍弃该余数。将待分析集合中的日志数据分配到各个样本中,各个样本中的日志数据的数量都是一致的,且都是预设的第一数量阈值的数值;样本的组数就是商的数值。

例如,一个预设的执行时间周期为5分钟,预设的第一数量的阈值为10000,在该预设的执行时间周期内获取到的日志数据为121911个日志数据(既待分析集合中的日志数据为121911个),计算出待分析集合中的日志数据的数量(121911)与预设的第一数量阈值(10000)的商,可计算出该商为12,余数为1911,舍弃该余数。可得到12个样本,每个样本中的日志数据量为10000。

在一个实施例中,如图3所示,步骤s12包括如下步骤s31-s33:

在步骤s31中,通过机器学习抽取出各个所述样本中的日志数据的关键字段,所述关键字段包括访问数量、权限更改和错误信息中的任一者或多者;

在步骤s32中,对各个所述样本的日志数据的关键字段进行分析统计;

在步骤s33中,根据分析统计的结果,生成各个所述样本的检测组。

在一个实施例中,通过机器学习(machinelearning,ml)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。本实施例中的机器学习可以不断的丰富对日志数据的分析能力,其中包括对日志数据中关键字段的分析能力,该关键字段包括访问数量、权限更改和错误信息中的任一者或多者。然后对各个样本中的日子数据的关键字段进行分析统计。根据分析统计的结果来生成各个样本的检测组。

在一个实施例中,如图4所示,步骤s13包括如下步骤s41-s43:

在步骤s41中,分别对各个所述样本的检测组进行非参数分布校验;

在步骤s42中,对非参数分布校验的检验结果进行组间对比;

在步骤s43中,通过组间对比,确认出数据异常的检测组。

在一个实施例中,分别对各个样本的检测组进行非参数分布校验,该非参数分布校验包括ks统计量检验(kolmogorov-smirnovtest,柯尔莫可洛夫-斯米洛夫检验)、w统计量检验(shapiro-wilktest)和l统计量统计(lillieforstest)。因为对于大数据的分布是具有一定的稳定性,对非参数分布校验的检验结果进行组间对比,其中,组的检验结果的期望值是一致的。通过组间对比,根据预设的检测对比规则,确认出数据异常的检测组。采用非参数分布校验和组间对比,无需根据历史数据进行校验,可避免传统的纵向检测过分依赖历史数据。其中,类型为发展过程中会发生较大变化的日志数据,若采用了纵向检测法,其历史数据将带来的负面影响。

在一个实施例中,如图5所示,还包括如下步骤s51:

在步骤s51中,根据所述警告信息,可直接跳转至所述数据异常的检测组的样本。

在一个实施例中,用户可通过客户端来直接点击发送来的警告信息,进行点击操作之后将直接跳转到数据异常的检测组的样本。从而方便用户查看样本内的具体的日志数据,从而有助于用户进行下一步的操作。

在一个实施例中,图6是根据一示例性实施例示出的一种智能分析日志数据的装置框图。如图6示,该装置包括划分模块61、生成模块62、分析模块63和警告模块64。

该划分模块61,用于将接收到日志数据划分为多个样本;

该生成模块62,用于生成各个所述样本的检测组;

该分析模块63,用于分析出各个所述样本的检测组中数据异常的检测组;

该警告模块64,用于实时发出警告信息到用户端,所述警告信息包括所述数据异常的检测组的相关信息。

如图7所示,该划分模块61包括构成子模块71、计算子模块72和分配子模块73。

该构成子模块71,用于每间隔一个预设的执行时间周期,将预设的执行时间周期内接收到的全部的日志数据构成待分析集合;

该计算子模块72,用于计算出所述待分析集合中的日志数据的数量与预设的第一数量阈值的商;

该分配子模块73,用于将所述待分析集合中的日志数据分配到各个样本中,其中,所述样本的数量为所述商的数值。

如图8所示,生成模块62包括抽取子模块81、统计子模块82和生成子模块83。

该抽取子模块81,用于通过机器学习抽取出各个所述样本中的日志数据的关键字段,所述关键字段包括访问数量、权限更改和错误信息中的任一者或多者;

该统计子模块82,用于对各个所述样本的日志数据的关键字段进行分析统计;

该生成子模块83,用于根据分析统计的结果,生成各个所述样本的检测组。

如图9所示,该分析模块63包括校验子模块91、对比子模块92和确认子模块93。

该校验子模块91,用于分别对各个所述样本的检测组进行非参数分布校验;

该对比子模块92,用于对非参数分布校验的检验结果进行组间对比;

该确认子模块93,用于通过组间对比,确认出数据异常的检测组。

如图10所示,还包括跳转模块101。

该跳转模块101,用于根据所述警告信息,可直接跳转至所述数据异常的检测组的样本。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1