CN105183912B - 异常日志确定方法和装置 - Google Patents
异常日志确定方法和装置 Download PDFInfo
- Publication number
- CN105183912B CN105183912B CN201510657417.XA CN201510657417A CN105183912B CN 105183912 B CN105183912 B CN 105183912B CN 201510657417 A CN201510657417 A CN 201510657417A CN 105183912 B CN105183912 B CN 105183912B
- Authority
- CN
- China
- Prior art keywords
- log
- class
- distance
- participle
- similarity
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了异常日志确定方法和装置。所述方法的一具体实施方式包括:对每个日志进行分词处理,生成与各日志对应的权重向量,其中,权重向量包括与之对应的日志中的分词,以及与各分词对应的权重;基于与各日志对应的权重向量确定各日志之间的相似度;基于各日志之间的相似度对各日志聚类形成日志类;以及若日志类中包含的异常日志比例超过预定比例,则日志类为异常日志类,否则日志类为正常日志类。该实施方式实现了异常日志的迅速定位。
Description
技术领域
本申请涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及异常日志确定方法和装置。
背景技术
目前的很多互联网和软件产品,每天会产生大量的日志,这些日志记录了系统的变化情况、人为的操作记录等信息,方便管理员追踪问题和数据恢复,以及后续对这些日志进行挖掘处理。在这些日志中,可能会存在小部分异常的日志,如网站遭到黑客攻击时,可能通过SQL(Structured Query Language,结构化查询语言)注入的方式获取网站数据库系统的信息导致信息泄露。但由于这部分日志比正常的日志的量要小,很难引起管理员的重视,比较难以发现,影响产品的正常运行。
目前实现发现异常日志的方法有两种:第一种是通过模式匹配,基于某种固定模式去日志中查找符合这种格式的日志,比如查找日志中查找包含“select”的日志;第二种是基于各个维度统计的方法,比如某个网站的访问日志,统计各个时间段内的访问量,如果凌晨的访问量高于上网高峰期的访问量,则可以判定为有明显异常,再去日志中去发现这些存在异常的日志。
针对以上所述的第一种方法,其发现异常日志的前提是需要知道这种异常日志的固定模式是什么,而不能发现新模式的异常日志。如果新模式的异常日志出现,必须通过其他方式去发现这种异常日志的存在,再总结模式,最后将新模式应用到系统中,时效性差。
针对以上所述的第二种方法,由于其基于大量数据的统计,这种方法不能发现少量的异常日志。此外,该方法容易受到其他因素的影响。例如,电商促销期间,其网站的访问量可能与平时的访问量的规律不符,采用该方法时,可能会出现异常日志的误报。此外,该方法时效性低,不能及时发现异常日志。此外,该方法也不能及时发现新模式且占比少的异常日志。
发明内容
本申请的目的在于提出一种改进的异常日志确定方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请提供了一种异常日志确定方法,包括:对每个日志进行分词处理,生成与各日志对应的权重向量,其中,权重向量包括与之对应的日志中的分词,以及与各分词对应的权重;基于与各日志对应的权重向量确定各日志之间的相似度;基于各日志之间的相似度对各日志聚类形成日志类;以及若日志类中包含的异常日志比例超过预定比例,则日志类为异常日志类,否则日志类为正常日志类。
在一些实施例中,对每个日志进行分词处理,生成与各日志对应的权重向量中,基于以下任意一者确定与各分词对应的权重:基于分词在日志中的出现次数,确定该日志中与该分词对应的权重;以及基于分词在日志中的出现次数和分词的逆向文档频率的乘积,确定该日志中与该分词对应的权重。
在一些实施例中,基于与各日志对应的权重向量确定各日志之间的相似度进一步包括:基于各权重向量之间的距离确定各日志之间的相似度。
在一些实施例中,基于各权重向量之间的距离确定各日志之间的相似度包括以下任意一者:基于各权重向量之间的余弦距离确定各日志之间的相似度;以及基于各权重向量之间的欧氏距离确定各日志之间的相似度。
在一些实施例中,基于各日志之间的相似度对各日志聚类形成日志类进一步包括:确定第一核心点,第一核心点为与其他日志之间的距离小于或等于预定距离的数量大于第一预定数量的日志;确定第二核心点,第二核心点为与其他日志之间的距离小于或等于预定距离的数量大于第二预定数量的日志,且第二核心点与第一核心点之间的距离小于或等于预定距离;以及将与第一核心点或第二核心点之间距离小于或等于预定距离的日志作为一个日志类。
在一些实施例中,基于日志类中包含的异常日志比例超过预定比例,确定日志类为异常日志类,否则日志类为正常日志类还包括:基于日志与数据库中存储的异常特征的匹配将日志标记为异常日志。
在一些实施例中,异常日志确定方法还包括:基于日志与所有的正常日志类中的第一核心点和第二核心点之间的距离均大于预定距离,确定日志为候选异常日志。
第二方面,本申请还提供了一种异常日志确定装置,包括:分词模块,配置用于对每个日志进行分词处理,生成与各日志对应的权重向量,其中,权重向量包括与之对应的日志中的分词,以及与各分词对应的权重;相似度确定模块,配置用于基于与各日志对应的权重向量确定各日志之间的相似度;聚类模块,配置用于基于各日志之间的相似度对各日志聚类形成日志类;以及判断模块,配置用于判断日志类中包含的异常日志比例是否超过预定比例,若是,则日志类为异常日志类,否则日志类为正常日志类。
在一些实施例中,分词模块进一步配置用于基于以下任意一者确定与各分词对应的权重:基于分词在日志中的出现次数,确定该日志中与该分词对应的权重;以及基于分词在日志中的出现次数和分词的逆向文档频率的乘积,确定该日志中与该分词对应的权重。
在一些实施例中,相似度确定模块进一步配置用于:基于各权重向量之间的距离确定各日志之间的相似度。
在一些实施例中,相似度确定模块进一步配置用于基于各权重向量之间的余弦距离或各权重向量之间的欧氏距离确定各日志之间的相似度。
在一些实施例中,聚类模块进一步配置用于:确定第一核心点,第一核心点为与其他日志之间的距离小于或等于预定距离的数量大于第一预定数量的日志;确定第二核心点,第二核心点为与其他日志之间的距离小于或等于预定距离的数量大于第二预定数量的日志,且第二核心点与第一核心点之间的距离小于或等于预定距离;以及将与第一核心点或第二核心点之间距离小于或等于预定距离的日志作为一个日志类。
在一些实施例中,判断模块还配置用于:基于日志与数据库中存储的异常特征的匹配将日志标记为异常日志。
在一些实施例中,异常日志确定装置还包括:候选异常日志确定模块,配置用于基于日志与所有的正常日志类中的第一核心点和第二核心点之间的距离均大于预定距离,确定日志为候选异常日志。
本申请提供的异常日志确定方法和装置,通过对各日志进行聚类,形成多个日志类,当某日志类中的异常日志占该日志类中的日志总量的比例超过预定比例时,确定该日志类为异常日志类,从而可以快速找出异常日志。
此外,在本申请的一些实施例中,当出现新的日志时,可以基于该新的日志与任意正常日志类之间的距离大于预定距离,确定该新的日志为候选异常日志。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构图;
图2是本申请一个实施例的异常日志确定方法的示意性流程图;
图3是图2中的基于各日志之间的相似度对各日志聚类形成日志类的一种实现方式的示意性流程图;
图4是本申请实施例的异常日志确定方法中第一核心点、第二核心点、日志类和离群点的示意图;
图5是本申请一个实施例的异常日志确定装置的示意性结构图;
图6是适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的网页生成方法或网页生成装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是能够与服务器进行各种类型的数据交互的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving PictureExperts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(MovingPicture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的网页提供支持的后台网页服务器。后台网页服务器可以接收终端设备101、102、103的网页浏览请求,并对接收到的网页浏览请求等数据进行分析等处理,从而获取终端设备101、102、103的身份信息(例如IP地址等)。
需要说明的是,本申请实施例所提供的异常日志确定方法一般由服务器105执行,相应地,异常日志确定装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
参见图2所示,为本申请的异常日志确定方法的一个实施例的示意性流程图200。
具体而言,在步骤210中,对每个日志进行分词处理,生成与各日志对应的权重向量。在这里,权重向量例如可以包括与之对应的日志中的分词,以及与各分词对应的权重。
在本实施例中,异常日志确定方法运行于其上的电子设备(例如图1所示的服务器)可以基于通过有线连接方式或者无线连接方式从用户利用其进行互联网数据交互的终端与该电子设备的数据交互来生成日志。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
一般而言,日志中可以包含时间信息和描述信息。在这里,时间信息例如可以包括操作开始的时间和/或操作完成(例如,被响应)的时间。描述信息例如可以包括操作主体(例如用户所使用的终端)的身份信息等。例如,在“13081315:30:55InnoDB:Completedinitialization of buffer pool”这一日志中,“13081315:30:55”代表了该日志的时间信息,而“InnoDB:Completed initialization of buffer pool”代表了该日志的描述信息。
在一些应用场景中,本实施例的异常日志确定方法运行于其上的电子设备例如可以是某一网站的服务器,该服务器可基于用户的请求,例如,用户在其使用的终端上安装的浏览器的地址栏中输入的URL(Unicode Resource Locator,统一资源定位符),来向用户所使用的终端设备发送与请求对应的网页。该服务器可以在接收到用户的请求之后,生成与该请求对应的日志。日志中例如可以包括用户所使用的终端设备的IP地址、请求的时间、用户所使用的终端设备的操作系统、用户所使用的终端设备发出请求时所使用的浏览器、用户所使用的终端设备中显示器的分辨率、请求对应的页面、是否访问成功等。
在一些可选的实现方式中,例如可以采用现有的分词方法来对日志进行分词处理。
在一些应用场景中,若日志所使用的文字为英文(或其它的拉丁语系的语言文字),可以通过日志中所包含的空格来对日志进行分词处理。
同样以“13081315:30:55InnoDB:Completed initialization of buffer pool”这一日志为例,该日志所使用的语言为英文,因此,在一些可选的实现方式中,可以通过日志中所包含的空格来对日志进行分词处理。对该日志进行分词处理之后,该日志所包含的各个分词可以为:130813、15:30:55、InnoDB:、Completed、initialization、of、buffer、pool。
在另一些应用场景中,若日志所使用的文字为中文(或者与中文类似的日文、韩文等),可以采用现有的分词算法(例如,基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法等)来进行分词处理。
在一些可选的实现方式中,权重向量可以包括日志的身份信息、该日志所包含的所有分词以及各分词对应的权重。
同样以“13081315:30:55InnoDB:Completed initialization of buffer pool”这一日志为例,其权重向量例如可以表示为(k;130813,a1;15:30:55,a2;InnoDB:,a3;Completed,a4;initialization a5;of,a6;buffer,a7;pool,a8)。其中,k为该日志的身份信息,其表现形式可以是与该条日志一一对应的数字或字符或数字与字符的组合等。a1~a8为各分词对应的权重,其表现形式例如可以是正实数,从而可以通过比较的方式来确定各个分词的权重的大小关系。
接着,在步骤220中,基于与各日志对应的权重向量确定各日志之间的相似度。
在这里,“相似度”可以表征各个日志之间的共同之处的多少。
在一些可选的实现方式中,例如,若两个日志中存在的相同的分词的数量较多,那么,可以认为该两个日志的相似度较高。相反,若两个日志中存在的相同的分词的数量较少,那么,可以认为该两个日志的相似度较低。
接着,在步骤230中,基于各日志之间的相似度对各日志聚类形成日志类。
聚类,可以指将物理或抽象对象的集合分成由类似的对象组成的多个类的过程。由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他簇中的对象相异。相应地,由聚类生成的一个日志类中的多个日志彼此相似,而该日志类中的任意一个日志与其它日志类中的任意一个日志彼此不同(或者可以认为相似度很低)。
接着,在步骤240中,判断日志类中包含的异常日志的比例是否超过预定比例。
尽管同一个日志类中的各个日志彼此相似,但同一个日志类中的各个日志也可能存在着区别。正是由于这些区别的存在,使得同一个日志类可能既存在一部分的正常日志也存在一部分的异常日志。
在这里,日志类中包含的异常日志的比例可以通过q/N×100%来计算,其中,q为非负整数,代表该日志类中包含的异常日志的数量,N为正整数,代表该日志类中包含的全部日志的数量。
接着,在步骤250中,若日志类中包含的异常日志比例超过预定比例,则日志类为异常日志类。或者,在步骤260中,若日志类中包含的异常日志比例未超过预定比例,则该日志类为正常日志类。
在这里,预定比例的取值范围为0~100%,其具体数值可以根据实际情况来进行设置,本申请对此不做限制。
在一些可选的实现方式中,本申请实施例的异常日志确定方法中,步骤210的对每个日志进行分词处理,生成与各日志对应的权重向量可以基于以下任意一种方式来实现:基于分词在日志中的出现次数确定该日志中与该分词对应的权重,或者,基于分词在日志中的出现次数和分词的逆向文档频率的乘积,确定该日志中与该分词对应的权重。
在这些可选的实现方式中,若基于分词在日志中的出现次数确定该日志中与该分词对应的权重,那么,若某一分词a在该日志中出现的次数高于另一分词b在同一日志中出现的次数,可以设置分词a的权重k1大于分词b的权重k2。
此外,在这些可选的实现方式中,若基于分词在日志中的出现次数和分词的逆向文档频率(Inverse Document Frequency,IDF)的乘积,确定该日志中与该分词对应的权重,那么,可以采用如下的公式来计算该词的IDF:
f=lg(m/P);
其中,m为非负整数,代表全部日志中包含该分词的日志的数量;P为正整数,代表全部日志的数量。这样一来,该词的权重则可以与该词在该日志中出现的次数及其IDF值的乘积正相关(例如,成正比)。
在这里,需要说明的是,由于随着时间的推移,日志的数量逐步递增,因此,在计算分词的IDF时,P的数值也在实时变化。然而,若实时更新每个分词的IDF,无疑将耗费巨大的计算资源。为解决这一问题,在一些可选的实现方式中,可以间隔某一预定时间更新一次P的数值,并相应地更新各分词的IDF值;或者,在另一些可选的实现方式中,可以选择全部日志中的一部分作为样本,用该样本中所包含的日志的数量来作为P的数值。
在一些可选的实现方式中,步骤220中的基于与各日志对应的权重向量确定各日志之间的相似度可以进一步包括:基于各权重向量之间的距离确定各日志之间的相似度。在这些可选的实现方式中,例如可以基于各权重向量之间的余弦距离确定各日志之间的相似度,或者,还可以基于各权重向量之间的欧氏距离确定各日志之间的相似度。
在这些可选的实现方式中,距离可用作衡量各日志相似度的量化表达。
假设日志1的权重向量为(a,k1;b,k2),日志2的权重向量是(a,k3;c,k4)。其中,a、b为日志1所包含的分词,k1为分词a在日志1中的权重,k2为分词b在日志1中的权重。类似地,a、c为日志2所包含的分词,k3为分词a在日志2中的权重,k4为分词c在日志2中的权重。
那么,当采用欧氏距离来确定日志1和日志2之间的相似度时,日志1和日志2之间的距离可具体采用如下的公式来计算:
可以看出,当采用欧氏距离来衡量日志1和日志2之间的相似度时,S值越小,代表日志1和日志2之间的相似度越高。
当采用余弦距离来确定日志1和日志2之间的相似度时,日志1和日志2之间的距离可具体采用如下的公式来计算:
可以看出,当采用余弦距离来衡量日志1和日志2之间的相似度时,S值越接近1,代表日志1和日志2之间的相似度越高。
在一些可选的实现方式中,为了使得计算出的距离与日志之间的相似度均为正相关,例如可以将计算得出的余弦距离的倒数作为作衡量各日志相似度的量化表达。
在一些可选的实现方式中,步骤230的基于各日志之间的相似度对各日志聚类形成日志类可以通过如图3所示的流程图300来实现。
具体而言,在步骤310中,确定第一核心点。在这里,第一核心点可以为与其他日志之间的距离小于或等于预定距离的数量大于第一预定数量的日志。
例如,在一些可选的实现方式中,假定预定距离为ε。若距离某一日志的距离不超过ε的日志的数量超过了第一预定数量,则可确定该日志为第一核心点。
接着,在步骤320中,确定第二核心点,第二核心点为与其他日志之间的距离小于或等于预定距离的数量大于第二预定数量的日志,且第二核心点与第一核心点之间的距离小于或等于预定距离。
在这里,第一预定数量和第二预定数量的数值可以相同或者不同。
同样假设预定距离为ε。若某一日志与第一核心点之间的距离小于ε,且距离该日志的距离不超过ε的日志的数量超过了第二预定数量,则可确定该日志为第二核心点。
接着,在步骤330中,将与第一核心点或第二核心点之间距离小于或等于预定距离的日志作为一个日志类。
下面,结合图4,来说明如何确定日志类中的第一核心点、第二核心点,以及如何基于第一核心点和第二核心点确定该日志类的范畴。
首先确定第一核心点。
同样假设预定距离为ε。假设第一预定数量为3,第二预定数量为1,则图4中,与A点距离小于或等于ε的点共有4个,即B点、C点、D点和E点。与B点距离小于或等于ε的点共有2个,即A点和b1点。与C点距离小于或等于ε的点共有3个,即A点、c1点和c2点;与D点距离小于或等于ε的点共有三个,即A点、d1点和d2点;与E点距离小于或等于ε的点共有三个,即A点、e1点和e2点。
因此,图4中,可作为第一核心点的仅有A点。
接着,确定第二核心点。
由于与A点距离小于或等于ε的点B点、C点、D点和E点中,与B点距离小于或等于ε的点有2个,与C点距离小于或等于ε的点有3个,与D点距离小于或等于ε的点有3个,与E点距离小于或等于ε的点有3个,因此,B、C、D、E四个点可作为第二核心点。
接着,确定基于第一核心点和第二核心点确定的日志类中包含的日志。
由于b1点与B点的距离小于ε,c1点和c2点与C点的距离小于或等于ε,d1点和d2点与D点的距离小于ε,e1点和e2点与E点的距离小于ε,因此,b1、c1、c2、d1、d2、e1和e2均属于基于第一核心点A和第二核心点B、C、D、E确定的日志类中。
此外,图4中还示出了一点N。由于N点与A、B、C、D、E各点之间的距离均超过了ε,因此,N点不属于基于第一核心点A和第二核心点B、C、D、E确定的日志类中,也即是说,N点相对于该日志类是一个离群点。
在一些可选的实现方式中,图2中步骤240~260中,还可以基于日志与数据库中存储的异常特征的匹配将日志标记为异常日志。也即是说,假设某一日志类中,包含了预先存储于数据库中的一个或者几个异常特征的日志在该日志类中全部日志中所占的比例超过了预定的比例,则可判断该日志类为异常日志类。
在这里,各异常日志所包含的异常特征可以相同或不同,或者部分相同。也即是说,例如,日志1包含的特征A为异常特征,日志2包含的特征B也为异常特征,日志3包含的特征A和C均为异常特征,那么日志1、日志2和日志3均为异常日志。
此外,“特征”一词在这里可以指从日志中提取出来的,可代表该日志特点的字符、数字或其它。在某些可选的实现方式中,日志中的各分词,可以作为该日志的特征。
在一些可选的实现方式中,本申请实施例的异常日志确定方法还可以包括:基于日志与所有的正常日志类中的第一核心点和第二核心点之间的距离均大于预定距离,确定日志为候选异常日志。
如上所述,图4中,N点相对于基于第一核心点A和第二核心点B、C、D、E确定的日志类为离群点。若该日志类为正常日志类,且若N点相对于其它所有的正常日志类均为一个离群点(可以认为,N点与其它任意正常日志均不相似),那么,N点所代表的日志可以确定为一候选异常日志。
这样一来,即便是只有一个N点这样的离群点,采用本申请实施例的异常日志确定方法,也可以将其作为一候选异常日志,以便后续进一步地判断其是否为真正的异常日志。
如图5所示,为本申请实施例的异常日志确定装置的示意性结构图500。
如图5所示,异常日志确定装置可包括分词模块510、相似度确定模块520、聚类模块530和判断模块540。
其中,分词模块510可配置用于对每个日志进行分词处理,生成与各日志对应的权重向量。在这里,权重向量可包括与之对应的日志中的分词,以及与各分词对应的权重。
相似度确定模块520可配置用于基于与各日志对应的权重向量确定各日志之间的相似度。
聚类模块530可配置用于基于各日志之间的相似度对各日志聚类形成日志类。
判断模块540可配置用于判断日志类中包含的异常日志比例是否超过预定比例,若是,则日志类为异常日志类,否则日志类为正常日志类。
在一些可选的实现方式中,分词模块510可进一步配置用于基于以下任意一者确定与各分词对应的权重:基于分词在日志中的出现次数,确定该日志中与该分词对应的权重;以及基于分词在日志中的出现次数和分词的逆向文档频率的乘积,确定该日志中与该分词对应的权重。
在一些可选的实现方式中,相似度确定模块520可进一步配置用于基于各权重向量之间的距离确定各日志之间的相似度。
在一些可选的实现方式中,相似度确定模块520还可进一步配置用于基于各权重向量之间的余弦距离或各权重向量之间的欧氏距离确定各日志之间的相似度。
在一些可选的实现方式中,聚类模块530可进一步配置用于:
确定第一核心点,在这里,第一核心点为与其他日志之间的距离小于或等于预定距离的数量大于第一预定数量的日志。确定第二核心点,在这里,第二核心点为与其他日志之间的距离小于或等于预定距离的数量大于第二预定数量的日志,且第二核心点与第一核心点之间的距离小于或等于预定距离。以及将与第一核心点或第二核心点之间距离小于或等于预定距离的日志作为一个日志类。
在一些可选的实现方式中,判断模块540还可配置用于基于日志与数据库中存储的异常特征的匹配将日志标记为异常日志。
在一些可选的实现方式中,本申请实施例的异常日志确定装置还可以包括候选异常日志确定模块(图中未示出),可配置用于基于日志与所有的正常日志类之间的距离大于预定距离,确定日志为候选异常日志。
本领域技术人员可以理解,上述异常日志确定装置500还包括一些其他公知结构,例如处理器、存储器等,为了不必要地模糊本公开的实施例,这些公知的结构在图5中未示出。
下面参考图6,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统600的结构示意图。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括分词模块、相似度确定模块、聚类模块和判断模块。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,分词模块还可以被描述为“对每个日志进行分词处理,生成与各所述日志对应的权重向量的模块”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:对每个日志进行分词处理,生成与各日志对应的权重向量,其中,权重向量包括与之对应的日志中的分词,以及与各分词对应的权重;基于与各日志对应的权重向量确定各日志之间的相似度;基于各日志之间的相似度对各日志聚类形成日志类;以及若日志类中包含的异常日志比例超过预定比例,则日志类为异常日志类,否则日志类为正常日志类。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (14)
1.一种异常日志确定方法,其特征在于,包括:
对每个日志进行分词处理,生成与各所述日志对应的权重向量,其中,所述权重向量包括与之对应的所述日志中的分词,以及与各所述分词对应的权重;
基于与各所述日志对应的所述权重向量确定各所述日志之间的相似度;
基于各所述日志之间的相似度对各所述日志聚类形成日志类;以及
若所述日志类中包含的异常日志比例超过预定比例,则所述日志类为异常日志类,否则所述日志类为正常日志类。
2.根据权利要求1所述的方法,其特征在于,所述对每个日志进行分词处理,生成与各所述日志对应的权重向量中,基于以下任意一者确定与各所述分词对应的权重:
基于所述分词在所述日志中的出现次数,确定该日志中与该分词对应的权重;以及
基于所述分词在所述日志中的出现次数和所述分词的逆向文档频率的乘积,确定该日志中与该分词对应的权重。
3.根据权利要求1所述方法,其特征在于,所述基于与各所述日志对应所述权重向量确定各所述日志之间的相似度进一步包括:
基于各所述权重向量之间的距离确定各所述日志之间的相似度。
4.根据权利要求3所述的方法,其特征在于,所述基于各所述权重向量之间的距离确定各所述日志之间的相似度包括以下任意一者:
基于各所述权重向量之间的余弦距离确定各所述日志之间的相似度;以及
基于各所述权重向量之间的欧氏距离确定各所述日志之间的相似度。
5.根据权利要求3或4所述的方法,其特征在于,所述基于各所述日志之间的相似度对各所述日志聚类形成日志类进一步包括:
确定第一核心点,所述第一核心点为与其他日志之间的距离小于或等于预定距离的数量大于第一预定数量的日志;
确定第二核心点,所述第二核心点为与其他日志之间的距离小于或等于预定距离的数量大于第二预定数量的日志,且所述第二核心点与所述第一核心点之间的距离小于或等于所述预定距离;以及
将与所述第一核心点或所述第二核心点之间距离小于或等于所述预定距离的日志作为一个日志类。
6.根据权利要求1-4任意一项所述的方法,其特征在于,所述基于所述日志类中包含的异常日志比例超过预定比例,确定所述日志类为异常日志类,否则所述日志类为正常日志类还包括:
基于所述日志与数据库中存储的异常特征的匹配将所述日志标记为异常日志。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
基于所述日志与所有的所述正常日志类中的所述第一核心点和所述第二核心点之间的距离均大于所述预定距离,确定所述日志为候选异常日志。
8.一种异常日志确定装置,其特征在于,包括:
分词模块,配置用于对每个日志进行分词处理,生成与各所述日志对应的权重向量,其中,所述权重向量包括与之对应的所述日志中的分词,以及与各所述分词对应的权重;
相似度确定模块,配置用于基于与各所述日志对应的所述权重向量确定各所述日志之间的相似度;
聚类模块,配置用于基于各所述日志之间的相似度对各所述日志聚类形成日志类;以及
判断模块,配置用于判断所述日志类中包含的异常日志比例是否超过预定比例,若是,则所述日志类为异常日志类,否则所述日志类为正常日志类。
9.根据权利要求8所述的装置,其特征在于,所述分词模块进一步配置用于基于以下任意一者确定与各所述分词对应的权重:
基于所述分词在所述日志中的出现次数,确定该日志中与该分词对应的权重;以及
基于所述分词在所述日志中的出现次数和所述分词的逆向文档频率的乘积,确定该日志中与该分词对应的权重。
10.根据权利要求8所述装置,其特征在于,所述相似度确定模块进一步配置用于:
基于各所述权重向量之间的距离确定各所述日志之间的相似度。
11.根据权利要求10所述的装置,其特征在于,所述相似度确定模块进一步配置用于基于各所述权重向量之间的余弦距离或各所述权重向量之间的欧氏距离确定各所述日志之间的相似度。
12.根据权利要求10或11所述的装置,其特征在于,所述聚类模块进一步配置用于:
确定第一核心点,所述第一核心点为与其他日志之间的距离小于或等于预定距离的数量大于第一预定数量的日志;
确定第二核心点,所述第二核心点为与其他日志之间的距离小于或等于预定距离的数量大于第二预定数量的日志,且所述第二核心点与所述第一核心点之间的距离小于或等于所述预定距离;以及
将与所述第一核心点或所述第二核心点之间距离小于或等于所述预定距离的日志作为一个日志类。
13.根据权利要求8-11任意一项所述的装置,其特征在于,所述判断模块还配置用于:
基于所述日志与数据库中存储的异常特征的匹配将所述日志标记为异常日志。
14.根据权利要求12所述的装置,其特征在于,所述装置还包括:
候选异常日志确定模块,配置用于基于所述日志与所有的所述正常日志类中的所述第一核心点和所述第二核心点之间的距离均大于所述预定距离,确定所述日志为候选异常日志。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510657417.XA CN105183912B (zh) | 2015-10-12 | 2015-10-12 | 异常日志确定方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510657417.XA CN105183912B (zh) | 2015-10-12 | 2015-10-12 | 异常日志确定方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105183912A CN105183912A (zh) | 2015-12-23 |
CN105183912B true CN105183912B (zh) | 2019-03-01 |
Family
ID=54905993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510657417.XA Active CN105183912B (zh) | 2015-10-12 | 2015-10-12 | 异常日志确定方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105183912B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326086B (zh) * | 2016-08-18 | 2019-01-11 | 杭州华为数字技术有限公司 | 关键运行日志提取方法及装置 |
CN106446076B (zh) * | 2016-09-07 | 2019-10-18 | 南京理工大学 | 基于层次聚类的日志审计方法 |
CN107391727B (zh) * | 2017-08-01 | 2020-03-06 | 北京航空航天大学 | 设备故障序列模式的挖掘方法及装置 |
CN107402886B (zh) * | 2017-08-09 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 堆栈分析方法及相关装置 |
CN107707545B (zh) * | 2017-09-29 | 2021-06-04 | 深信服科技股份有限公司 | 一种异常网页访问片段检测方法、装置、设备及存储介质 |
CN109947713B (zh) * | 2017-10-31 | 2021-08-10 | 北京国双科技有限公司 | 一种日志的监控方法及装置 |
CN109040110B (zh) * | 2018-08-31 | 2021-10-22 | 新华三信息安全技术有限公司 | 一种外发行为检测方法及装置 |
CN109992476B (zh) * | 2019-03-20 | 2023-08-18 | 网宿科技股份有限公司 | 一种日志的分析方法、服务器及存储介质 |
CN110750412B (zh) * | 2019-09-02 | 2022-10-21 | 北京云集智造科技有限公司 | 日志异常检测方法 |
CN111240942A (zh) * | 2019-12-02 | 2020-06-05 | 华为技术有限公司 | 日志异常检测方法及装置 |
CN111274125B (zh) * | 2020-01-14 | 2023-04-18 | 中国银联股份有限公司 | 一种日志分析方法及装置 |
CN111651595A (zh) * | 2020-05-25 | 2020-09-11 | 泰康保险集团股份有限公司 | 一种异常日志处理方法及装置 |
CN113778818A (zh) * | 2020-09-25 | 2021-12-10 | 北京沃东天骏信息技术有限公司 | 优化系统的方法、装置、设备和计算机可读介质 |
CN111985192A (zh) * | 2020-09-28 | 2020-11-24 | 杭州安恒信息安全技术有限公司 | 一种Web攻击报告生成方法、装置、设备及计算机介质 |
CN113407656B (zh) * | 2021-06-24 | 2023-03-07 | 上海上讯信息技术股份有限公司 | 一种快速在线日志聚类的方法及设备 |
CN115658441B (zh) * | 2022-12-13 | 2023-03-10 | 济南丽阳神州智能科技有限公司 | 一种基于日志的家政业务系统异常监控方法、设备及介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104361115A (zh) * | 2014-12-01 | 2015-02-18 | 北京奇虎科技有限公司 | 一种基于共同点击的词条权重确定方法及装置 |
CN104951555A (zh) * | 2015-06-30 | 2015-09-30 | 浪潮(北京)电子信息产业有限公司 | 一种日志信息管理方法及日志信息管理终端 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7089536B2 (en) * | 2000-05-31 | 2006-08-08 | Kabushiki Kaisha Toshiba | Computer system and method for aiding log base debugging |
CN104461842B (zh) * | 2013-09-23 | 2018-02-16 | 伊姆西公司 | 基于日志相似性来处理故障的方法和装置 |
CN104268064B (zh) * | 2014-09-11 | 2018-03-27 | 北京音之邦文化科技有限公司 | 产品日志的异常诊断方法和装置 |
-
2015
- 2015-10-12 CN CN201510657417.XA patent/CN105183912B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104361115A (zh) * | 2014-12-01 | 2015-02-18 | 北京奇虎科技有限公司 | 一种基于共同点击的词条权重确定方法及装置 |
CN104951555A (zh) * | 2015-06-30 | 2015-09-30 | 浪潮(北京)电子信息产业有限公司 | 一种日志信息管理方法及日志信息管理终端 |
Also Published As
Publication number | Publication date |
---|---|
CN105183912A (zh) | 2015-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105183912B (zh) | 异常日志确定方法和装置 | |
CN110019350B (zh) | 基于配置信息的数据查询方法和装置 | |
CN110019211A (zh) | 关联索引的方法、装置和系统 | |
CN108572990B (zh) | 信息推送方法和装置 | |
CN109683998A (zh) | 国际化实现方法、装置和系统 | |
CN108090351B (zh) | 用于处理请求消息的方法和装置 | |
CN105426508B (zh) | 网页生成方法和装置 | |
US20210357461A1 (en) | Method, apparatus and storage medium for searching blockchain data | |
US8725762B2 (en) | Preventing leakage of information over a network | |
CN105718533A (zh) | 信息推送方法和装置 | |
CN111552704A (zh) | 一种数据报表生成方法、装置、计算机设备及存储介质 | |
CN107480205A (zh) | 一种进行数据分区的方法和装置 | |
CN107609192A (zh) | 一种搜索引擎的补充搜索方法和装置 | |
CN103365876B (zh) | 基于关系图谱生成网络操作辅助信息的方法与设备 | |
CN105653724B (zh) | 一种页面曝光量的监控方法和装置 | |
CN111339743B (zh) | 一种账号生成的方法和装置 | |
CN107357794A (zh) | 优化键值数据库的数据存储结构的方法和装置 | |
CN109086414B (zh) | 用于搜索区块链数据的方法、装置及存储介质 | |
CN114064925A (zh) | 知识图谱的构建方法、数据查询方法、装置、设备和介质 | |
US20230153357A1 (en) | Method of processing an observation information, electronic device and storage medium | |
US20220414095A1 (en) | Method of processing event data, electronic device, and medium | |
CN108268488A (zh) | 网页主图识别方法和装置 | |
CN116541578A (zh) | 资产数字化多维度管理方法及系统 | |
US20150073902A1 (en) | Financial Transaction Analytics | |
CN111865576B (zh) | 一种同步url分类数据的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |