CN110262942A - 一种日志分析方法及装置 - Google Patents
一种日志分析方法及装置 Download PDFInfo
- Publication number
- CN110262942A CN110262942A CN201910509655.4A CN201910509655A CN110262942A CN 110262942 A CN110262942 A CN 110262942A CN 201910509655 A CN201910509655 A CN 201910509655A CN 110262942 A CN110262942 A CN 110262942A
- Authority
- CN
- China
- Prior art keywords
- log
- segment
- exploitation
- application program
- preset
- 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.)
- Pending
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 137
- 238000000034 method Methods 0.000 claims abstract description 48
- 238000011161 development Methods 0.000 claims abstract description 37
- 238000012545 processing Methods 0.000 claims abstract description 37
- 238000003860 storage Methods 0.000 claims description 25
- 238000012549 training Methods 0.000 claims description 19
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 230000010365 information processing Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 230000007547 defect Effects 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开了一种日志分析方法及装置,应用于信息处理技术领域。在本实施例的方法中,日志分析装置会按照时间间隔,将获取的开发日志划分为多个日志片段,然后再根据预置的日志分析策略,对各个日志片段对应的应用程序的问题进行分类,最后再根据得到的多个问题分类结果,确定在应用程序开发的相应时间段内基于应用程序的处理信息。这样通过对开发日志包括的多个日志片段进行分析,而每个日志片段对应一个时间间隔,从而可以准确地定位应用程序在开发过程中,哪些开发过程会出现问题,进而进行相应的处理,提高了应用程序的开发效率。
Description
技术领域
本发明涉及信息处理技术领域,特别涉及一种日志分析方法及装置。
背景技术
现有的日志分析方法主要是通过对终端设备运行应用程序过程中的运行日志进行分析,从而得到哪些终端设备运行应用程序的故障,或者是,应用程序在实际应用过程中的漏洞等。
具体地,现有的一种基于互联网日志数据的软件缺陷故障识别方法,主要是针对互联网源***日志数据和用户***源日志数据,将互联网源***日志数据作为训练集并从中提取特征,通过机器学习或相似度匹配生成软件缺陷故障日志识别预测模型;针对用户***源日志数据,分析识别得到其中表征软件缺陷故障的日志片段,从而得到针对用户***日志的软件缺陷故障类型。但是,如果用户***源日志数据较多时,采用现有的基于互联网日志数据的软件缺陷故障识别方法进行故障定位时,花费的时间较大。
发明内容
本发明实施例提供一种日志分析方法及装置,实现了通过对开发日志的日志片段,确定在应用程序的相应时间段内基于应用程序的处理信息。
本发明实施例第一方面提供一种日志分析方法,包括:
获取应用程序的开发日志;
按照时间间隔,将所述开发日志划分为多个日志片段;
根据预置的日志分析策略,分别对各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果;
根据所述多个问题分类结果,确定在应用程序开发的相应时间段内基于所述应用程序的处理信息。
本发明实施例第一方面提供的一种体制分析方法的一种具体实现中,所述按照时间间隔,将所述开发日志划分为多个日志片段,具体包括:
按照时间间隔,将开发日志划分为多组日志分段,每组日志分段中包括多个日志片段。
本发明实施例第二方面提供一种日志分析方法,包括:
日志获取单元,用于获取应用程序的开发日志;
划分单元,用于按照时间间隔,将所述开发日志划分为多个日志片段;
分类单元,用于根据预置的日志分析策略,分别对各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果;
处理确定单元,用于根据所述多个问题分类结果,确定在应用程序开发的相应时间段内基于所述应用程序的处理信息。
本发明实施例第三方面提供一种存储介质,所述存储介质储存多条指令,所述指令适于由处理器加载并执行如本发明实施例第一方面所述的日志分析方法。
本发明实施例第四方面提供一种服务器,包括:包括处理器和存储介质,所述处理器,用于实现各个指令;所述存储介质用于储存多条指令,所述指令用于由处理器加载并执行如本发明实施例第一方面所述的日志分析方法。
可见,在本实施例的方法中,日志分析装置会按照时间间隔,将获取的开发日志划分为多个日志片段,然后再根据预置的日志分析策略,对各个日志片段对应的应用程序的问题进行分类,最后再根据得到的多个问题分类结果,确定在应用程序开发的相应时间段内基于应用程序的处理信息。这样通过对开发日志包括的多个日志片段进行分析,而每个日志片段对应一个时间间隔,从而可以准确地定位应用程序在开发过程中,哪些开发过程会出现问题,进而进行相应的处理,提高了应用程序的开发效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种日志分析方法所应用于的***的结构示意图;
图2是本发明一个实施例提供的一种日志分析方法的流程图;
图3a是本发明一个实施例中一种划分开发日志的示意图;
图3b是本发明一个实施例中另一种划分开发日志的示意图;
图4是本发明一个实施例中训练日志分析模型的方法流程图;
图5是本发明应用实施例提供的一种日志分析方法的示意图;
图6是本发明应用实施例中对开发日志进行预处理的示意图;
图7是本发明实施例提供的一种日志分析装置的结构示意图;
图8是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排它的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供一种日志分析方法,主要可以应用于如图1所示的***中,在该***中包括:日志分析装置,主要用于获取应用程序的开发日志,并对获取的开发日志进行分析,从而确定基于应用程序的处理信息。
具体地,在该***中还可以包括日志终端,其中,日志终端是指产生应用程序的开发日志的终端,主要是应用程序的开发用户在开发应用程序的过程中使用的终端,比如,开发用户编辑应用程序的代码的终端,调试代码的终端,和打印信息的终端等。这些日志终端在应用程序的开发过程中,会记录日志终端在各个时间点所执行的操作,各个时间点的日志信息。
进一步地,***中还可以包括:处理信息接收终端,主要用于接收日志分析装置分发的基于应用程序的处理信息,具体可以是任意接收信息的终端,比如邮件应用终端,或是应用程序的开发用户的终端(比如上述的日志终端等)。
在本实施例中,日志分析装置可以通过如下步骤来进行日志分析:
获取应用程序的开发日志;按照时间间隔,将所述开发日志划分为多个日志片段(图中以n个日志片段为例);根据预置的日志分析策略,分别对各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果;根据所述多个问题分类结果,确定在应用程序开发的相应时间段内基于所述应用程序的处理信息。
这样通过对开发日志包括的多个日志片段进行分析,而每个日志片段对应一个时间间隔,从而可以准确地定位应用程序在开发过程中,哪些开发过程会出现问题,进而进行相应的处理,提高了应用程序的开发效率。
本发明一个实施例提供一种日志分析方法,主要是上述的日志分析装置所执行的方法,流程图如图2所示,包括:
步骤101,获取应用程序的开发日志。
可以理解,日志分析装置可以按照一定的周期,直接发起本实施例的流程,这样,在一种情况下,日志分析装置在发起本实施例的流程时,可以从日志终端获取到上一个流程发起周期到当前周期之间的应用程序的开发日志,具体包括:这个时间段内各个时间点的日志信息。
在另一种情况下,日志终端在产生了开发日志后,会主动上报给日志分析装置进行储存,当日志分析装置在发起本实施例的流程时,可以直接从本地存储中提取到上一个流程发起周期到当前周期之间的开发日志。
本实施例中的开发日志是指应用程序的开发用户通过日志终端开发应用程序的过程中,日志终端所产生的日志信息,比如,日志终端编辑应用程序的代码的日志,调试代码的日志,和打印信息的日志等。
步骤102,按照时间间隔,将开发日志划分为多个日志片段。
具体地,日志分析装置可以按照但不限于如下两种方式对开发日志进行划分其中:
(1)将预置的最大时间间隔作为开发日志的时间窗;当时间窗沿着开发日志移动时,将时间窗内的日志信息作为一个日志片段,其中,时间窗沿着开发日志移动的步长与预置的最小时间间隔一致。通常情况下,基于应用程序的一个问题的发生往往是在某个瞬间,而相关的日志信息则在该时刻之后的短时间内被打印,因此,对开发日志进行划分的时间间隔可以是问题日志的最小时间,或是问题日志的最大时间等。
例如图3a所示,将预置的最大时间间隔Tmax作为开发日志的时间窗,该时间窗会沿着开发日志移动,移动的步长为预置的最小时间间隔Tmin,箭头指示时间窗沿着开发日志移动的方向。当时间窗在开发日志的某个位置时,该时间窗内的日志信息为日志片段1;当时间窗沿着开发日志移动最小时间间隔Tmin后,该时间窗内的日志信息为日志片段2,以此类推,直到时间窗移动到开发日志的最后片段,将最后片段作为另一日志片段。
(2)日志分析装置可以按照时间间隔对开发日志进行多轮划分,而每轮划分可以得到一组日志分段,这样,日志分析装置会按照时间间隔,将开发日志划分为多组日志分段,每组日志分段中包括多个日志片段。
在一种具体的实施例中,日志分析装置可以先按照预置的最大时间间隔,将开发日志划分为一组日志分段;然后删除开发日志中预置的最小时间间隔内的日志信息,并按照预置的最大时间间隔,将删除后的开发日志划分为另一组日志分段。进一步地,日志分析装置还可以将删除后的开发日志中预置的最小时间间隔内的日志信息删除,并按照预置的最大时间间隔,将删除后的开发日志划分为另一组日志分段;然后针对删除后的开发日志循环执行删除并划分的步骤。其中,预置的最大时间间隔可以是问题日志的最大时间,而预置的最小时间间隔可以是问题日志的最小时间。其中,每组日志分段中各个日志片段的时间间隔等于或小于预置的最大时间间隔
例如图3b所示开发日志包括T个时刻对应的日志信息,预置的最小时间间隔可以是Tmin,最大时间间隔可以是Tmax。
在首次划分时,将T个时刻的日志信息分别划分为3个时间间隔为Tmax的日志片段,及时间间隔为T1的日志片段,其中,T1小于Tmax;再次划分时,从开发日志的开始,删除时间间隔为Tmin的日志信息,并将T-Tmin个时刻的日志信息分别划分为3个时间间隔为Tmax的日志片段,及时间间隔为T2的日志片段,其中,T2小于Tmax;再次划分时,从T-Tmin个时刻的日志信息的开始,删除时间间隔为Tmin的日志信息,并将T-2Tmin个时刻的日志信息分别划分为2个时间间隔为Tmax的日志片段,及时间间隔为T3的日志片段,其中,T3小于Tmax。这样,可以形成3组日志分段,日志分段组1和日志分段组2分别包括4个日志片段,而日志分段组3包括3个日志片段。
步骤103,根据预置的日志分析策略,分别对各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果。
具体地,日志分析装置可以先分别获取各个日志片段的关键标签;然后再根据各个日志片段的关键标签,及预置的日志分析策略,分别对各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果,每个问题分类结果对应一个日志片段。
其中,由于开发日志的日志片段是一种混合数据格式的数据,有结构化数据和非结构化数据,因此,如果某一个日志片段中包括结构化数据,则该日志片段的关键标签包括结构化数据内包含的标签,例如,***标签、日志级别(错误、警告、调试等)、或定义标签等;如果某一日志片段中包括非结构化数据,则该日志片段的关键标签主要是通过关键词提取得到,具体地,可以先对非结构化数据进行分词后,得到多个分词,然后再确定多个分词中的某些分词作为关键标签。
上述任一日志片段对应的问题分类结果可以包括:日志片段对应的应用程序的问题类型,可以是故障类型或漏洞(BUG)类型等,也可以是未出现故障或漏洞的其它类型。
上述预置的日志分析策略可以为日志分析模型的运行逻辑,这样,日志分析模型可以直接通过日志片段的关键标签输出问题分类结果;上述预置的日志分析策略也可以为相似度计算的策略,这样,日志分析装置可以计算日志片段分别与预置的各种问题类型的日志信息之间的相似度,当日志片段与某一种问题类型的日志信息之间的相似度大于某一阈值,则确定该日志片段的问题分类结果中包括该问题类型。
步骤104,根据多个问题分类结果,确定在应用程序开的相应时间段内基于应用程序的处理信息。
由于一个问题分类结果对应一个日志片段,而一个日志片段对应一个时间间隔,这样,一个问题分类结果可以表示应用程序在开发的某一时间段内出现的故障或漏洞等,则在执行步骤104时,日志分析装置可以针对各个问题分类结果,给出在应用程序开发的相应时间段内的解决方案,即基于应用程序的处理信息。
具体地,在日志分析装置中会预置问题类型与基于应用程序的处理信息的对应关系,这样,在确定处理信息时,会将上述步骤103得到的问题分类结果与预置的对应关系进行匹配,从而可以得到最终的基于应用程序的处理信息。其中,对于故障类型或漏洞类型的问题分类结果,对应的处理信息可以为故障解决方案或漏洞解决方案;对于非故障或漏洞类型的问题分类结果,对应的处理信息可以为:发送通知给应用程序的开发用户的终端等。
需要说明的是,如果上述步骤102中划分得到多组日志分段,每组日志分段中包括多个日志片段,这样,日志分析装置在执行步骤103时,会获取到各组日志分段中各个日志片段对应的问题分类结果。进而,日志分析装置在执行本步骤104时,可以结合多组日志分段中日志片段对应的问题分类结果,确定在应用程序开发的相应时间段内的处理信息。
例如,针对上述图3b所示的3组日志分段中的各个日志片段,可以分别得到一个问题分类结果,比如日志分段组1中第一个日志片段Tmax1与第二日志片段Tmax2分别对应的问题分类结果为:无故障和问题类型1,但是日志分段组2中第一个日志片段Tmax1对应的问题分类结果为:问题类型1,则日志分析装置可以确定在日志分段组2中第一个日志片段Tmax1对应的时间段内,应用程序的开发出现问题类型1的问题,需要给出相应的解决方案,即处理信息。
进一步地,日志分析装置还可以将基于应用程序的处理信息发送给相应处理信息接收终端。
可见,在本实施例的方法中,日志分析装置会按照时间间隔,将获取的开发日志划分为多个日志片段,然后再根据预置的日志分析策略,对各个日志片段对应的应用程序的问题进行分类,最后再根据得到的多个问题分类结果,确定在应用程序开发的相应时间段内基于应用程序的处理信息。这样通过对开发日志包括的多个日志片段进行分析,而每个日志片段对应一个时间间隔,从而可以准确地定位应用程序在开发过程中,哪些开发过程会出现问题,进而进行相应的处理,提高了应用程序的开发效率。
需要说明的是,如果上述的日志分析策略包括日志分析模型的运行逻辑。在一个具体的实施例中,日志分析装置可以按照如下步骤来训练日志分析模型,流程图如图4所示,包括:
步骤201,确定日志分析初始模型。
可以理解,日志分析装置在确定日志分析初始模型时,会确定日志分析初始模型所包括的多层结构和各层机构中固定参数的初始值,具体包括上述特征提取模块和日志分类模块,其中,特征提取模块用于提取任一日志样本的特征信息,具体地,可以先获取日志样本的关键标签,然后再根据日志样本的关键标签得到日志样本的特征向量;日志分类模块用于根据特征提取模块提取的特征信息,得到日志样本对应的应用程序的问题类型。具体地,日志分析初始模型中的多层结构可以是如下任一种算法结构:卷积神经网络(Convolutional Neural Network,CNN)、支持向量机(Support Vector Machines,SVM)等等。
其中,固定参数是指日志分析初始模型中各层结构在计算过程中所用到的固定的,不需要随时赋值的参数,比如权重,角度等参数。
步骤202,确定训练样本,训练样本中包括多个日志样本和各个日志样本对应的问题类型。
步骤203,通过日志分析初始模型分别确定各个日志样本对应的应用程序的问题进行分类,得到问题分类初始结果。
具体地,通过日志分析初始模型中的特征提取模块获取日志样本的关键标签,然后再根据日志样本的关键标签得到日志样本的特征向量;日志分类模块用于根据特征提取模块提取的特征信息,得到日志样本对应的应用程序的问题类型。
步骤204,根据上述步骤203中日志分析初始模型确定的问题分类初始结果,及训练样本中的问题类型,调整日志分析初始模型中的固定参数值,以得到最终的日志分析模型。
具体地,日志分析置会先根据上述步骤203中日志分析初始模型确定的问题分类初始结果,及训练样本中的问题类型,计算与日志分析初始模型相关的损失函数,该损失函数用于指示日志分析初始模型对各个日志样本对应的应用程序的问题进行分类的误差。
这里,损失函数包括:用于表示根据日志分析初始模型确定的各日志样本对应的问题分类初始结果,与训练样本中各个日志样本实际的问题类型之间的差别。这些误差的数学表现形式通常使用交叉熵损失函数来建立损失函数,而日志分析初始模型的训练过程就是需要尽量减少上述误差的值,该训练过程是通过反向传播求导以及梯度下降等一系列数学优化手段不断的优化上述步骤201中确定的日志分析初始模型中固定参数的参数值,并使得上述损失函数的计算值降至最低。
因此,在计算得到损失函数后,日志分析装置需要根据计算的损失函数调整日志分析初始模型中的固定参数值,以得到最终的日志分析模型。具体地,当计算的损失函数的函数值较大时,比如大于预置的值,则需要改变固定参数值,比如将某个权重的权重值减小等,使得按照调整后的固定参数值计算的损失函数的函数值减小。
需要说明的是,上述步骤203到204是通过日志分析初始模型计算得到问题分类初始结果,根据问题分类初始结果对日志分析初始模型中的固定参数值的一次调整,而在实际应用中,需要通过不断地循环执行上述步骤203到204,直到对固定参数值的调整满足一定的停止条件为止。
因此,日志分析装置在执行了上述实施例步骤201到204之后,还需要判断当前对固定参数值的调整是否满足预置的停止条件,当满足时,则结束流程;当不满足时,则针对调整固定参数值后的日志分析初始模型,返回执行上述步骤203到204。
其中,预置的停止条件包括但不限于如下条件中的任何一个:当前调整的固定参数值与上一次调整的固定参数值的差值小于一阈值,即调整的固定参数值达到收敛;及对固定参数值的调整次数等于预置的次数等。
以下以一个具体的应用实例来说明本发明中的日志分类方法,本实施例的方法可以应用于如上图1所示的***中,且本实施例中预置的日志分析策略具体为日志分析模型的运行逻辑,日志分析模型可以通过上述实施例中的方法训练得到。
如图5所示,本实施例的方法包括如下步骤:
步骤301,应用程序的开发用户通过日志终端开发应用程序的过程中,比如编辑应用程序的代码,调试代码且打印信息的过程中,日志终端会记录各个时刻该日志终端的操作信息,即开发日志。
步骤302,日志分析装置会按照一定的周期发起日志分析流程,这样日志分析装置会向日志终端获取上一次发起周期到当前周期之间的日志信息,即开发日志。
步骤303,日志分析装置先对获取的开发日志进行预处理,具体地,日志分析装置会去除开发日志中的异常数据,比如,格式错误的开发日志等。
具体地,如图6所示,日志分析装置在对开发日志进行预处理的过程中,可以通过源数据模块和预处理模型,各个模块会分别创建一个数据流块,并通过输入(Put)模块和输出(Take)模块来实现预处理,其中:
源数据模块中的输入模块用于持续地向创建的数据流块中添加开发日志中的数据,如果数据流块中的数据满,则等待;源数据模块中的输出模块,用于输出指定大小或者指定长度的数据,当数据流块为空,则等待。
预处理模块中的输入模块用于持续地向创建的数据流块中添加源数据模块输出的数据,如果数据流块中的数据满,则等待;预处理模块中的输出模块,用于对数据流块中的数据进行预处理,并输出预处理后的开发日志,如果数据流块为空,则等待。
步骤304,日志分析装置对预处理后的开发日志进行划分,具体地,预处理后的开发日志是以字符串的形式存在,具有连续性和时间序列的特性,可以将预处理后的开发日志按照时间间隔,划分为多组日志分段,每组日志分段中包括多个日志片段。
步骤305,日志分析装置根据预置的日志分析模型对每组日志分段中各个日志片段对应的应用程序的问题进行分类,得到多组问题分类结果,每组问题分类结果中包括各个日志片段对应的问题类型。
具体地,通过日志分析模型可以先获取到每个日志片段的关键标签,然后再根据关键标签直接输出各个日志片段的问题类型。其中对日志片段的关键标签的获取见上述实施例中所述,在此不进行赘述。
步骤306,日志分析装置根据每组日志分段中各个日志片段对应的问题分类结果,确定在应用程序开发的相应时间段内基于应用程序的处理信息。
步骤307,日志分析装置将各个时间段内的处理信息通知给相应的开发用户的终端,即处理信息接收终端。
可见,本发明实施例中,以应用程序的开发日志作为分析对象,并通过日志分析模型实现快速的问题分类和定位,进而给出解决方案即上述的处理信息,提高了应用程序的开发效率。其中采用的开发日志具有更丰富的信息,可用性更强,进而提升问题的分类和定位,另外,本实施例中实现了确定的处理信息会通知给开发用户的终端,减少问题流转的人工干涉,进一步提升应用程序的开发效率。
本发明实施例还提供一种日志分析装置,其结构示意图如图7所示,具体可以包括:
日志获取单元10,用于获取应用程序的开发日志;
划分单元11,用于按照时间间隔,将所述日志获取单元10获取的开发日志划分为多个日志片段。
具体地,一种情况下,划分单元11,具体用于将预置的最大时间间隔作为开发日志的时间窗;当所述时间窗沿着开发日志移动时,将所述时间窗内的日志信息作为一个日志片段,其中,所述时间窗沿着开发日志移动的步长与预置的最小时间间隔一致。
另一种情况下,划分单元11,具体用于用于按照时间间隔,将开发日志划分为多组日志分段,每组日志分段中包括多个日志片段。其中,划分单元11在将开发日志划分为多组日志分段时,按照预置的最大时间间隔,将所述开发日志划分为一组日志分段;删除所述开发日志中预置的最小时间间隔内的日志信息,按照预置的最大时间间隔,将所述删除后的开发日志划分为另一组日志分段,所述每组日志分段中各个日志片段的时间间隔等于或小于预置的最大时间间隔。
分类单元12,用于根据预置的日志分析策略,分别对所述划分单元11得到的各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果。
具体地,该分类单元12,用于分别获取所述各个日志片段的关键标签;根据所述各个日志片段的关键标签,及所述预置的日志分析策略,分别对所述各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果。
其中,在获取某一个日志片段的关键标签时,该分类单元12具体用于当所述某一日志片段中包括结构化数据,确定所述结构化数据内包含的标签作为所述某一日志片段的关键标签;当所述某一日志片段中包括非结构化数据,确定所述非结构化数据中的至少一个分词作为所述某一日志片段的关键标签。
处理确定单元13,用于根据所述分类单元12得到的多个问题分类结果,确定在应用程序开发的相应时间段内基于所述应用程序的处理信息。
进一步地,如果日志分析策略包括日志分析模型的运行逻辑,则本实施例的日志分析装置还可以包括:训练单元14,用于确定日志分析初始模型;确定训练样本,所述训练样本中包括多个日志样本及各个日志样本对应的问题类型;通过所述日志分析初始模型分别对各个日志样本对应的应用程序的问题进行分类,得到问题分类初始结果;根据所述日志分析初始模型确定的问题分类初始结果,及所述训练样本中的问题类型,调整所述日志分析初始模型中的固定参数值,以得到最终的日志分析模型。这样,上述分类单元12会根据训练单元14训练得到的日志分析模型,对各个日志片段对应的应用程序的问题进行分类。
该训练单元14,还用于当对所述固定参数值的调整次数等于预置的次数时,或当当前调整的固定参数值与上一次调整的固定参数值的差值小于一阈值时,则停止对所述固定参数值的调整。
可见,在本实施例的日志分析装置中,划分单元11会按照时间间隔,将获取的开发日志划分为多个日志片段,然后分类单元12再根据预置的日志分析策略,对各个日志片段对应的应用程序的问题进行分类,最后处理确定单元13再根据得到的多个问题分类结果,确定在应用程序开发的相应时间段内基于应用程序的处理信息。这样通过对开发日志包括的多个日志片段进行分析,而每个日志片段对应一个时间间隔,从而可以准确地定位应用程序在开发过程中,哪些开发过程会出现问题,进而进行相应的处理,提高了应用程序的开发效率。
本发明实施例还提供一种服务器,其结构示意图如图8所示,该服务器可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(centralprocessing units,CPU)20(例如,一个或一个以上处理器)和存储器21,一个或一个以上存储应用程序221或数据222的存储介质22(例如一个或一个以上海量存储设备)。其中,存储器21和存储介质22可以是短暂存储或持久存储。存储在存储介质22的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器20可以设置为与存储介质22通信,在服务器上执行存储介质22中的一系列指令操作。
具体地,在存储介质22中储存的应用程序221包括日志分析的应用程序,且该程序可以包括上述日志分析装置中的日志获取单元10,划分单元11,分类单元12,处理确定单元13和训练单元14,在此不进行赘述。更进一步地,中央处理器20可以设置为与存储介质22通信,在服务器上执行存储介质22中储存的日志分析的应用程序对应的一系列操作。
服务器还可以包括一个或一个以上电源23,一个或一个以上有线或无线网络接口24,和/或,一个或一个以上操作***223,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述方法实施例中所述的由日志分析装置所执行的步骤可以基于该图8所示的服务器的结构。
本发明实施例还提供一种存储介质,所述存储介质储存多条指令,所述指令适于由处理器加载并执行如上述日志分析装置所执行的日志分析方法。
本发明实施例还提供另一种服务器,包括处理器和存储介质,所述处理器,用于实现各个指令;所述存储介质用于储存多条指令,所述指令用于由处理器加载并执行如上述日志分析装置所执行的日志分析方法。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM)、随机存取存储器RAM)、磁盘或光盘等。
以上对本发明实施例所提供的日志分析方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种日志分析方法,其特征在于,包括:
获取应用程序的开发日志;
按照时间间隔,将所述开发日志划分为多个日志片段;
根据预置的日志分析策略,分别对各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果;
根据所述多个问题分类结果,确定在应用程序开发的相应时间段内基于所述应用程序的处理信息。
2.如权利要求1所述的方法,其特征在于,所述按照时间间隔,将所述开发日志划分为多个日志片段,具体包括:
将预置的最大时间间隔作为开发日志的时间窗;
当所述时间窗沿着开发日志移动时,将所述时间窗内的日志信息作为一个日志片段,其中,所述时间窗沿着开发日志移动的步长与预置的最小时间间隔一致。
3.如权利要求1所述的方法,其特征在于,所述按照时间间隔,将所述开发日志划分为多个日志片段,具体包括:
按照预置的最大时间间隔,将所述开发日志划分为一组日志分段;
删除所述开发日志中预置的最小时间间隔内的日志信息,按照预置的最大时间间隔,将所述删除后的开发日志划分为另一组日志分段;
每组日志分段中包括多个日志片段,且各个日志片段的时间间隔等于或小于预置的最大时间间隔。
4.如权利要求1至3任一项所述的方法,其特征在于,所述根据预置的日志分析策略,分别对各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果,具体包括:
分别获取所述各个日志片段的关键标签;
根据所述各个日志片段的关键标签,及所述预置的日志分析策略,分别对所述各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果。
5.如权利要求4所述的方法,其特征在于,获取某一日志片段的关键标签,具体包括:
当所述某一日志片段中包括结构化数据,确定所述结构化数据内包含的标签作为所述某一日志片段的关键标签;
当所述某一日志片段中包括非结构化数据,确定所述非结构化数据中的至少一个分词作为所述某一日志片段的关键标签。
6.如权利要求1至3任一项所述的方法,其特征在于,所述预置的日志分析策略包括日志分析模型的运行逻辑,所述方法还包括:
确定日志分析初始模型;
确定训练样本,所述训练样本中包括多个日志样本及各个日志样本对应的问题类型;
通过所述日志分析初始模型分别对各个日志样本对应的应用程序的问题进行分类,得到问题分类初始结果;
根据所述日志分析初始模型确定的问题分类初始结果,及所述训练样本中的问题类型,调整所述日志分析初始模型中的固定参数值,以得到最终的日志分析模型。
7.如权利要求6所述的方法,其特征在于,当对所述固定参数值的调整次数等于预置的次数时,或当当前调整的固定参数值与上一次调整的固定参数值的差值小于一阈值时,则停止对所述固定参数值的调整。
8.一种日志分析装置,其特征在于,包括:
日志获取单元,用于获取应用程序的开发日志;
划分单元,用于按照时间间隔,将所述开发日志划分为多个日志片段;
分类单元,用于根据预置的日志分析策略,分别对各个日志片段对应的应用程序的问题进行分类,得到多个问题分类结果;
处理确定单元,用于根据所述多个问题分类结果,确定在应用程序开发的相应时间段内基于所述应用程序的处理信息。
9.一种存储介质,其特征在于,所述存储介质储存多条指令,所述指令适于由处理器加载并执行如权利要求1至7任一项所述的日志分析方法。
10.一种服务器,其特征在于,包括处理器和存储介质,所述处理器,用于实现各个指令;
所述存储介质用于储存多条指令,所述指令用于由处理器加载并执行如权利要求1至7任一项所述的日志分析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910509655.4A CN110262942A (zh) | 2019-06-13 | 2019-06-13 | 一种日志分析方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910509655.4A CN110262942A (zh) | 2019-06-13 | 2019-06-13 | 一种日志分析方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110262942A true CN110262942A (zh) | 2019-09-20 |
Family
ID=67917965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910509655.4A Pending CN110262942A (zh) | 2019-06-13 | 2019-06-13 | 一种日志分析方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110262942A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111198817A (zh) * | 2019-12-30 | 2020-05-26 | 武汉大学 | 一种基于卷积神经网络的SaaS软件故障诊断方法及装置 |
CN111414343A (zh) * | 2020-02-24 | 2020-07-14 | 北京云途腾科技有限责任公司 | 日志写入方法、装置、电子设备和介质 |
CN111680016A (zh) * | 2020-05-28 | 2020-09-18 | 中国人民银行清算总中心 | 分布式服务器集群日志数据处理方法、装置及*** |
CN111782621A (zh) * | 2020-06-30 | 2020-10-16 | 中国民航信息网络股份有限公司 | 一种业务应用日志处理方法及装置 |
CN112364163A (zh) * | 2020-11-10 | 2021-02-12 | 平安普惠企业管理有限公司 | 日志的缓存方法、装置以及计算机设备 |
CN112749079A (zh) * | 2019-10-31 | 2021-05-04 | ***通信集团浙江有限公司 | 软件测试的缺陷分类方法、装置及计算设备 |
CN113515625A (zh) * | 2021-05-18 | 2021-10-19 | 中国工商银行股份有限公司 | 测试结果分类模型训练方法、分类方法及装置 |
-
2019
- 2019-06-13 CN CN201910509655.4A patent/CN110262942A/zh active Pending
Non-Patent Citations (1)
Title |
---|
张光宇: "基于挖掘稀有类型日志的***故障诊断方法", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 12, 15 December 2018 (2018-12-15), pages 140 - 949 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112749079A (zh) * | 2019-10-31 | 2021-05-04 | ***通信集团浙江有限公司 | 软件测试的缺陷分类方法、装置及计算设备 |
CN112749079B (zh) * | 2019-10-31 | 2023-12-26 | ***通信集团浙江有限公司 | 软件测试的缺陷分类方法、装置及计算设备 |
CN111198817A (zh) * | 2019-12-30 | 2020-05-26 | 武汉大学 | 一种基于卷积神经网络的SaaS软件故障诊断方法及装置 |
CN111198817B (zh) * | 2019-12-30 | 2021-06-04 | 武汉大学 | 一种基于卷积神经网络的SaaS软件故障诊断方法及装置 |
CN111414343A (zh) * | 2020-02-24 | 2020-07-14 | 北京云途腾科技有限责任公司 | 日志写入方法、装置、电子设备和介质 |
CN111414343B (zh) * | 2020-02-24 | 2023-08-04 | 北京百度云途腾科技有限责任公司 | 日志写入方法、装置、电子设备和介质 |
CN111680016A (zh) * | 2020-05-28 | 2020-09-18 | 中国人民银行清算总中心 | 分布式服务器集群日志数据处理方法、装置及*** |
CN111782621A (zh) * | 2020-06-30 | 2020-10-16 | 中国民航信息网络股份有限公司 | 一种业务应用日志处理方法及装置 |
CN111782621B (zh) * | 2020-06-30 | 2023-12-22 | 中国民航信息网络股份有限公司 | 一种业务应用日志处理方法及装置 |
CN112364163A (zh) * | 2020-11-10 | 2021-02-12 | 平安普惠企业管理有限公司 | 日志的缓存方法、装置以及计算机设备 |
CN112364163B (zh) * | 2020-11-10 | 2024-06-14 | 山东浪潮创新创业科技有限公司 | 日志的缓存方法、装置以及计算机设备 |
CN113515625A (zh) * | 2021-05-18 | 2021-10-19 | 中国工商银行股份有限公司 | 测试结果分类模型训练方法、分类方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110262942A (zh) | 一种日志分析方法及装置 | |
CN111914644B (zh) | 一种基于双模态协同的弱监督时序动作定位方法及*** | |
CN109120462B (zh) | 机会网络链路的预测方法、装置及可读存储介质 | |
CN110609524B (zh) | 一种工业设备剩余寿命预测模型及其构建方法和应用 | |
CN112711953A (zh) | 一种基于注意力机制和gcn的文本多标签分类方法和*** | |
CN110688288A (zh) | 基于人工智能的自动化测试方法、装置、设备及存储介质 | |
CN107045503A (zh) | 一种特征集确定的方法及装置 | |
CN113435998B (zh) | 贷款逾期预测方法、装置、电子设备及存储介质 | |
CN110162628A (zh) | 一种内容识别方法及装置 | |
CN108416032A (zh) | 一种文本分类方法、装置及存储介质 | |
CN110288605A (zh) | 细胞图像分割方法和装置 | |
CN110969015B (zh) | 一种基于运维脚本的标签自动化识别方法和设备 | |
CN116127899B (zh) | 芯片设计***、方法、电子设备和存储介质 | |
CN108763096A (zh) | 基于深度信念网络算法支持向量机的软件缺陷预测方法 | |
CN113706151A (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN107392311A (zh) | 序列切分的方法和装置 | |
CN112990222A (zh) | 一种基于图像边界知识迁移的引导语义分割方法 | |
CN112765468A (zh) | 一种个性化用户服务定制方法和装置 | |
CN112035345A (zh) | 一种基于代码片段分析的混合深度缺陷预测方法 | |
CN110070131A (zh) | 一种面向数据驱动建模的主动学习方法 | |
CN112685374B (zh) | 日志分类方法、装置及电子设备 | |
CN111738017A (zh) | 一种意图识别方法、装置、设备及存储介质 | |
CN117744759A (zh) | 文本信息的识别方法、装置、存储介质及电子设备 | |
CN113824580A (zh) | 一种网络指标预警方法及*** | |
CN108710912B (zh) | 基于二分类机器学习的时序逻辑近似模型检测方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |