CN117785539A - 日志数据分析方法、装置、计算机设备及存储介质 - Google Patents
日志数据分析方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN117785539A CN117785539A CN202311857266.3A CN202311857266A CN117785539A CN 117785539 A CN117785539 A CN 117785539A CN 202311857266 A CN202311857266 A CN 202311857266A CN 117785539 A CN117785539 A CN 117785539A
- Authority
- CN
- China
- Prior art keywords
- log
- log data
- target
- application service
- target application
- 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
- 238000000034 method Methods 0.000 title claims abstract description 78
- 238000007405 data analysis Methods 0.000 title claims abstract description 53
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 238000004458 analytical method Methods 0.000 claims abstract description 70
- 238000012216 screening Methods 0.000 claims abstract description 27
- 230000005856 abnormality Effects 0.000 claims abstract description 17
- 239000013598 vector Substances 0.000 claims description 110
- 230000011218 segmentation Effects 0.000 claims description 47
- 239000011159 matrix material Substances 0.000 claims description 30
- 230000002159 abnormal effect Effects 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 22
- 230000004044 response Effects 0.000 claims description 14
- 238000001914 filtration Methods 0.000 claims description 9
- 238000012544 monitoring process Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000009467 reduction Effects 0.000 claims description 6
- 239000003795 chemical substances by application Substances 0.000 claims description 4
- 238000004140 cleaning Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 23
- 238000004590 computer program Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 8
- 230000001960 triggered effect Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000000513 principal component analysis Methods 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种日志数据分析方法、装置、计算机设备及存储介质。该方法包括:响应触发针对目标应用服务的根因定位指令,获取关于目标应用服务产生的错误日志数据;对错误日志数据进行日志聚类,得到对应的多个日志聚类簇;基于各日志聚类簇中对应的两条候选日志数据之间的差异,从各日志聚类簇中筛选出目标日志数据;基于预设的大语言模型对目标日志数据进行根因定位分析,得到对应的根因定位分析结果;其中,该根因定位分析结果用于表征目标日志数据导致目标应用服务产生异常的根本因素。采用本方法能够有效提高对日志数据进行根因定位分析的效率和准确性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种日志数据分析方法、日志数据分析装置、计算机设备及计算机可读存储介质。
背景技术
日志记录着系统运行时在每个节点的状态信息,记录着系统中特定事件的活动信息,因此在很多关键节点,日志数据往往能够揭示功能服务方面的故障和系统性能方面的问题,是监控网络健康和故障根因定位的重要数据源之一,并且能够帮助技术人员对问题进行分析和处理。随着计算机系统复杂度的增加,产生的日志数量以及复杂度都在急剧增加,这给问题的分析和处理带来了很大的干扰。
目前,主要是通过人工或者简单的日志分析工具来选取和分析日志数据异常的原因,以对系统故障进行根因定位。在根因定位时,需要通过预设的检测规则和模式匹配方式,从海量的日志数据中筛选出异常日志数据并对其进行分析,在整个过程中需要耗费的人工和资源计算量十分的巨大,导致对日志数据进行异常分析的效率不高以及准确率较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高日志分析效率和准确性的日志数据分析方法、日志数据分析装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种日志数据分析方法。所述方法包括:
响应触发针对目标应用服务的根因定位指令,获取关于所述目标应用服务产生的错误日志数据;
对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇;
基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据;
基于预设的大语言模型对所述目标日志数据进行根因定位分析,得到对应的根因定位分析结果;所述根因定位分析结果用于表征所述目标日志数据导致所述目标应用服务产生异常的根本因素。
在其中一个实施例中,所述对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇,包括:
对所述错误日志数据进行过滤处理,以过滤所述错误日志数据中的噪声数据,得到过滤后的错误日志数据;
对所述过滤后的错误日志数据进行分词处理,得到对应的分词序列;
基于所述分词序列中各分词词汇的词频向量,对各所述过滤后的错误日志数据进行日志聚类,得到对应的多个日志聚类簇。
在其中一个实施例中,所述基于所述分词序列中各分词词汇的词频向量,对各所述过滤后的错误日志数据进行日志聚类,得到对应的多个日志聚类簇,包括:
基于所述分词序列中各分词词汇的词频向量,将各所述过滤后的错误日志数据所对应的分词序列转换为预设形式的权重矩阵;所述权重矩阵用于表征所述分词序列中各分词词汇的词频和逆文档频率;
对所述权重矩阵进行降维处理,以形成针对各所述过滤后的错误日志数据的日志特征向量;
对各所述过滤后的错误日志数据的日志特征向量进行相似聚类,得到对应的多个日志聚类簇。
在其中一个实施例中,所述基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据,包括:
基于各所述日志聚类簇中对应的两个候选特征向量之间的差异,确定对应的各所述日志聚类簇是否满足预设的聚类条件;
在所述日志聚类簇满足的聚类条件的情况下,将所述日志聚类簇中任一日志特征向量所对应的日志数据作为目标日志数据;
在所述日志聚类簇不满足的聚类条件的情况下,将两个所述候选特征向量所对应的两个日志数据均作为目标日志数据。
在其中一个实施例中,所述基于各所述日志聚类簇中对应的两个候选特征向量之间的差异,确定对应的各所述日志聚类簇是否满足预设的聚类条件,包括:
从各所述日志聚类簇中分别提取出对应向量长度最大的第一候选特征向量和向量长度最小的第二候选特征向量;
对所述第一候选特征向量和所述第二候选特征向量进行相似计算,确定所述第一候选特征向量和所述第二候选特征向量之间的相似程度;
基于所述相似程度和预设的参考程度之间的差异,确定对应的各所述日志聚类簇是否满足预设的聚类条件。
在其中一个实施例中,所述响应触发针对目标应用服务的根因定位指令,包括:
获取用户向客服坐席发送的对话语句;所述对话语句用于指示触发针对所述目标应用服务的根因定位服务,且在所述对话语句中携带有时间信息和关于所述目标应用服务的参数信息;
基于所述时间信息和所述参数信息,生成并触发针对所述目标应用服务的根因定位指令。
在其中一个实施例中,所述响应触发针对目标应用服务的根因定位指令,包括:
响应于监控到所述目标应用服务的性能指标异常,获取当前的时间信息和所述目标应用服务的参数信息;
基于所述时间信息和所述参数信息,生成并触发针对所述目标应用服务的根因定位指令。
在其中一个实施例中,所述获取关于所述目标应用服务产生的错误日志数据,包括:
基于所述时间信息和所述参数信息,确定关于所述目标应用服务的初始日志数据;
基于预设的目标字符,对各所述初始日志数据进行模糊匹配,以从各所述初始日志数据筛选出错误日志数据;所述目标字符为针对日志数据所预设的错误提示字符。
在其中一个实施例中,所述基于所述时间信息和所述参数信息,确定关于所述目标应用服务的初始日志数据,包括:
基于所述参数信息,确定针对所述目标应用服务的日志库别名;
基于所述时间信息和所述日志库别名,确定所述目标应用服务在执行异常事件时所对应的日志编号;
基于所述日志编号,从对应于所述日志库别名的日志库中提取出所述目标应用服务产生的原始日志数据;
基于所述原始日志数据的字段名,对所述原始日志数据进行数据清洗,得到针对所述目标应用服务的初始日志数据。
第二方面,本申请还提供了一种日志数据分析装置。所述装置包括:
指令触发单元,被配置为执行响应触发针对目标应用服务的根因定位指令,获取关于所述目标应用服务产生的错误日志数据;
日志聚类单元,被配置为执行对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇;
日志筛选单元,被配置为执行基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据;
根因定位单元,被配置为执行基于预设的大语言模型对所述目标日志数据进行根因定位分析,得到对应的根因定位分析结果;所述根因定位分析结果用于表征所述目标日志数据导致所述目标应用服务产生异常的根本因素。
第三方面,本申请还提供了一种计算机设备,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如上所述的日志数据分析方法。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质中包括程序数据,当所述程序数据被执行时,实现如上所述的日志数据分析方法。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品中包括程序指令,当所述程序指令被执行时,实现如上所述的日志数据分析方法。
上述的日志数据分析方法、日志数据分析装置、计算机设备、计算机可读存储介质和计算机程序产品,首先响应触发针对目标应用服务的根因定位指令,获取关于目标应用服务产生的错误日志数据;然后,再对错误日志数据进行日志聚类,得到对应的多个日志聚类簇;然后,再基于各日志聚类簇中对应的两条候选日志数据之间的差异,从各日志聚类簇中筛选出目标日志数据;最后,再基于预设的大语言模型对目标日志数据进行根因定位分析,得到对应的根因定位分析结果;其中,该根因定位分析结果用于表征目标日志数据导致目标应用服务产生异常的根本因素。这样,一方面,通过区别于现有技术的方式,本方案通过在触发针对目标应用服务的根因定位指令时,首先获取关于目标应用服务产生的错误日志数据,然后再依次对错误日志数据进行聚类和筛选,以得出用于根因定位分析的目标日志数据,从而优化了根因定位的流程,有效提高了对服务异常进行根因定位的效率,降低了人力和物力的消耗;另一方面,本方案通过在日志聚类簇中,通过对应的两条候选日志数据之间的差异,以筛选出目标日志数据,然后再通过大语言模型对目标日志数据进行根因定位分析,以得出导致目标应用服务产生异常的根本因素,从而优化了对日志数据进行根因定位的方式,有效提高了根因定位的合理性和准确性,有利于后续能够及时的进行应用排查和修复。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种日志数据分析方法的应用环境图。
图2是根据一示例性实施例示出的一种日志数据分析方法的流程图。
图3是根据一示例性实施例示出的一种展示根因定位分析结果的界面图。
图4是根据一示例性实施例示出的一种获取错误日志数据步骤的流程图。
图5是根据一示例性实施例示出的一种进行日志聚类步骤的流程图。
图6是根据一示例性实施例示出的一种筛选目标日志数据步骤的流程图。
图7是根据另一示例性实施例示出的一种日志数据分析方法的流程图。
图8是根据另一示例性实施例示出的一种日志数据分析方法的模块图。
图9是根据一示例性实施例示出的一种日志数据分析装置框图。
图10是根据一示例性实施例示出的一种用于日志数据分析的计算机设备的框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,尽管多次采用术语“第一”、“第二”等来描述各种操作(或各种阈值或各种应用或各种指令或各种元件)等,不过这些操作(或阈值或应用或指令或元件)不应受这些术语的限制。这些术语只是用于区分一个操作(或阈值或应用或指令或元件)和另一个操作(或阈值或应用或指令或元件)。
本申请实施例提供的日志数据分析方法,可以应用于如图1所示的应用环境中。其中,终端102通过通信网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。
在一些实施例中,参考图1,首先,服务器104响应触发针对目标应用服务的根因定位指令,获取关于目标应用服务产生的错误日志数据;然后,服务器104再对错误日志数据进行日志聚类,得到对应的多个日志聚类簇;然后,服务器104再基于各日志聚类簇中对应的两条候选日志数据之间的差异,从各日志聚类簇中筛选出目标日志数据;最后,服务器104基于预设的大语言模型对目标日志数据进行根因定位分析,得到对应的根因定位分析结果;其中,该根因定位分析结果用于表征目标日志数据导致目标应用服务产生异常的根本因素。
在一些实施例中,终端102(如移动终端、固定终端)可以以各种形式来实施。其中,终端102可为包括诸如移动电话、智能电话、笔记本电脑、便携式手持式设备、个人数字助理(PDA,Personal Digital Assistant)、平板电脑(PAD)等等的移动终端,终端102也可以是自动柜员机(Automated Teller Machine,ATM)、自动一体机、数字TV、台式计算机、固式计算机等等的固定终端。
下面,假设终端102是固定终端。然而,本领域技术人员将理解的是,若有特别用于移动目的的操作或者元件,根据本申请公开的实施方式的构造也能够应用于移动类型的终端102。
在一些实施例中,服务器104运行的数据处理组件可以加载正在被执行的可以包括各种附加服务器应用和/或中间层应用中的任何一种,如包括HTTP(超文本传输协议)、FTP(文件传输协议)、CGI(通用网关界面)、RDBMS(关系型数据库管理系统)等。
在一些实施例中,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。服务器104可以适于运行提供前述公开中描述的终端102的一个或多个应用服务或软件组件。
在一些实施例中,应用服务可以包括向用户提供日志数据分析的服务界面,以及对应程序服务等等。其中,软件组件可以包括执行日志数据分析功能的应用程序(SDK)或者客户端(APP)。
在一些实施例中,服务器104所提供的具有日志数据分析功能的应用程序或者客户端包括一个在前台向用户提供一对一应用服务的门户端口和多个位于后台进行数据处理的业务系统,以将日志数据分析功能应用扩展到APP或者客户端,从而用户能够在任何时间任何地点执行日志数据分析功能的使用和访问。
在一些实施例中,用户可以通过预设的输入装置或者自动控制程序向APP或者客户端输入相应的代码数据或者控制参数,以执行服务器104中的计算机程序的应用服务,以及显示用户界面中的应用服务。
在一些实施例中,APP或者客户端运行的操作系统可以包括各种版本的MicrosoftWindows®、Apple Macintosh®和/或Linux操作系统、各种商用或类UNIX®操作系统(包括但不限于各种GNU/Linux操作系统、Google Chrome®OS等)和/或移动操作系统,诸如iOS®、Windows®Phone、Android®OS、BlackBerry®OS、Palm®OS操作系统,以及其它在线操作系统或者离线操作系统,在这里不做具体的限制。
在一个实施例中,如图2所示,提供了一种日志数据分析方法,以该方法应用于图1中的服务器为例进行说明,具体包括以下步骤:
步骤S11:响应触发针对目标应用服务的根因定位指令,获取关于目标应用服务产生的错误日志数据。
在一实施例中,服务器可以基于预先配置的监控程序,当监控到运维系统中的目标应用服务出现故障异常时,服务器自动响应运维系统触发根因定位指令,以获取目标应用服务产生的错误日志数据,以开启对错误日志数据的分析任务。
在另一实施例中,服务器也可以在用户的人工操作下,人工触发根因定位指令,从而响应该根因定位指令,去获取目标应用服务产生的错误日志数据,以开启对错误日志数据的分析任务。
在一些实施例中,目标应用服务产生的该错误日志数据为针对目标应用服务产生的所有日志数据中包括有预设报错关键字的文本日志。其中,该报错关键字为针对日志数据所预设的错误提示字符,例如,其可以为“error”关键字。
步骤S12:对错误日志数据进行日志聚类,得到对应的多个日志聚类簇。
在一些实施例中,服务器可以基于预设聚类类型,将各条错误日志数据按照相应的特征进行聚类,从而得到对应的多个日志聚类簇。
在一种聚类类型中,服务器可以基于错误日志数据的密度进行聚类。具体地,服务器可以使用基于密度的聚类算法,如DBSCAN(基于密度的空间聚类应用)来识别错误日志数据中的密集区域,以将不同密度的错误日志数据聚类。
在另一种聚类类型中,服务器可以基于错误日志数据的文本特征进行聚类。具体地,服务器首先使用文本特征提取方法,如词袋模型(Bag of Words)、TF-IDF(词频-逆文档频率)等,提取出错误日志数据的文本特征;然后再应用传统的聚类算法,如K均值聚类、层次聚类等,按照不同的文本特征对错误日志数据聚类。
在另一种聚类类型中,服务器可以基于错误日志数据的主题进行聚类。具体地,服务器可以使用主题模型(如Latent Dirichlet Allocation,LDA)来识别各条错误日志数据中的主题,并根据主题对错误日志数据进行聚类。
步骤S13:基于各日志聚类簇中对应的两条候选日志数据之间的差异,从各日志聚类簇中筛选出目标日志数据。
在一实施例中,候选日志数据可以是日志聚类簇中按照预设规则选取出的两条日志数据。
在一些实施例中,该预设规则为运维工程师按照日志数据处理的实际情况设计得到。例如,一种预设规则可以为筛选日志聚类簇中对应的数据长度最大与数据长度最小的两条日志数据作为候选日志数据;或者另一种预设规则也可以为筛选日志聚类簇中对应的数据长度最接近平均长度的日志数据,以及数据长度最接近中位长度的日志数据作为候选日志数据。
在一实施例中,服务器根据两条候选日志数据之间的数据差异,以确定针对日志聚类簇的日志筛选模式,并基于对应的日志筛选模式从各日志聚类簇中筛选出目标日志数据。
其中,日志数据之间的数据差异可以为数据之间关于相似程度的差异、数据长度之间的差异、数据语义之间的差异等等,这里不做具体限定。
其中,日志筛选模式为一种日志筛选规则,其也同样是为运维工程师按照日志数据处理的实际情况设计得到。例如,一种日志筛选模式可以为:针对数据差异较小的日志聚类簇,从中任意筛选出一条日志数据作为目标日志数据;针对数据差异较大的日志聚类簇,从中筛选出具有代表性的至少两条日志数据作为目标日志数据。其中,该具有代表性的日志数据可以为日志聚类簇中对应的数据长度最大、数据长度最小、数据长度最接近平均长度或者数据长度最接近中位长度等的日志数据,具体这里不做限定。
步骤S14:基于预设的大语言模型对目标日志数据进行根因定位分析,得到对应的根因定位分析结果。
在一实施例中,服务器基于目标日志数据构建得到用于输入大语言模型中的对话语句;然后,再将对话语句输入大语言模型中以对对话语句进行分析和处理,以得到对应输出的针对目标日志数据的分析回复语句。
其中,构建的对话语句(其属于一种prompt)用于引导大语言模型生成相应的回复,这个对话语句可以是问题、指令、描述或者任何需要模型回应的信息。
其中,在构建对话语句的过程中,可以将各个不同的目标日志数据合并成为相应的字符串,以及在字符串中利用预设的分隔符对不同的目标日志数据进行分割,以便于大语言模型识别和解析对话语句中的各个目标日志数据。
在一实施例中,在服务器得到大语言模型输出的针对目标日志数据的根因定位分析结果之后,服务器还可以将根因定位分析结果展示于显示界面中,以供用户查看和分析异常。其中,根因定位分析结果用于表征目标日志数据导致目标应用服务产生异常的根本因素。
在一示例性实施例中,如图3所示,图3为本申请中展示根因定位分析结果一实施例的界面示意图。其中,该界面为服务器展示大语言模型输出的异常分析结果的展示界面。其中,该异常分析结果为以回复语句的形式进行表达,且在回复语句中包括针对每一条目标日志数据的异常分析结果(如图3中关于日志数据X1-日志数据X4,及其相应的异常原因),以及关于全部目标日志数据的总分析结果(如图3中关于总结部分的内容)。
上述的日志数据分析过程中,服务器首先响应触发针对目标应用服务的根因定位指令,获取关于目标应用服务产生的错误日志数据;然后,再对错误日志数据进行日志聚类,得到对应的多个日志聚类簇;然后,再基于各日志聚类簇中对应的两条候选日志数据之间的差异,从各日志聚类簇中筛选出目标日志数据;最后,再基于预设的大语言模型对目标日志数据进行根因定位分析,得到对应的根因定位分析结果;其中,该根因定位分析结果用于表征目标日志数据导致目标应用服务产生异常的根本因素。这样,一方面,通过区别于现有技术的方式,本方案通过在触发针对目标应用服务的根因定位指令时,首先获取关于目标应用服务产生的错误日志数据,然后再依次对错误日志数据进行聚类和筛选,以得出用于根因定位分析的目标日志数据,从而优化了根因定位的流程,有效提高了对服务异常进行根因定位的效率,降低了人力和物力的消耗;另一方面,本方案通过在日志聚类簇中,通过对应的两条候选日志数据之间的差异,以筛选出目标日志数据,然后再通过大语言模型对目标日志数据进行根因定位分析,以得出导致目标应用服务产生异常的根本因素,从而优化了对日志数据进行根因定位的方式,有效提高了根因定位的合理性和准确性,有利于后续能够及时的进行应用排查和修复。
本领域技术人员可以理解地,在具体实施方式的上述方法中,所揭露的方法可以通过更为具体的方式以实现。例如,以上所描述的服务器基于预设的大语言模型对目标日志数据进行根因定位分析,得到对应的根因定位分析结果的实施方式仅仅是示意性的。
在一些实施例中,在系统中触发针对目标应用服务的根因定位指令可以包括告警触发和主动触发两种方式。
在一种实施例中,针对于主动触发方式,在响应触发针对目标应用服务的根因定位指令的方面,服务器具体可以执行以下步骤:
步骤一:获取用户向客服坐席发送的对话语句。
其中,对话语句用于指示触发针对目标应用服务的根因定位服务,且在对话语句中携带有时间信息和关于目标应用服务的参数信息。
在一些实施例中,对话语句中的时间信息为用户定位的异常时间,即用户触发对在处于该异常时间内发生的服务事件进行根因定位。
在一些实施例中,参数信息包括关于目标应用服务的命名空间和应用名。
其中,命名空间(Namespace)用于标识日志数据的来源或类别,即它可以表示不同的模块、组件、服务或系统,使得日志数据可以被归类到相应的命名空间中。
其中,应用名(Application Name)是指产生日志数据的具体应用程序或软件的名称。它用于标识日志数据来自哪个应用程序或系统,有助于在日志数据中区分不同的应用程序或模块。
作为示例,一用户向客户坐席输入的对话语句为“请帮我进行日志分析,2023-11-23 14:30:00 namespace为appsvr workload为account”,其中,“2023-11-23 14:30:00”为用户定位的异常时间,“appsvr”目标应用服务的命名空间,“account”目标应用服务的应用名。
步骤二:基于时间信息和参数信息,生成并触发针对目标应用服务的根因定位指令。
具体地,服务器根据用于输入的异常时间、命名空间和应用名,生成并触发针对目标应用服务的根因定位指令。
在另一种实施例中,针对于告警触发方式,在响应触发针对目标应用服务的根因定位指令的方面,服务器具体可以执行以下步骤:
步骤一:响应于监控到目标应用服务的性能指标异常,获取当前的时间信息和目标应用服务的参数信息。
具体地,在系统中预先设置有一个监控程序,以实时监控目标应用服务的性能指标,并在当目标应用服务的性能指标出现异常时,服务器确定目标应用服务出现异常,以自动获取关于目标应用服务的时间信息和参数信息。
在一些实施例中,性能指标可以为目标应用服务的SLI(Service LevelIndicator)指标。其中,监控SLI指标包括需要计算目标应用服务的平均响应时间、错误率百分比、系统的可用性等。
在一些实施例中,服务器建立预设的监控程序来实时跟踪SLI指标,并设置报警规则,以便在SLI指标超出预期范围时及时发出警报,并自动获取关于目标应用服务的时间信息和参数信息。
步骤二:基于时间信息和参数信息,生成并触发针对目标应用服务的根因定位指令。
具体地,服务器根据自动获取的异常时间、命名空间和应用名,生成并触发针对目标应用服务的根因定位指令。
在一示例性实施例中,参阅图4,图4为本申请中获取错误日志数据一实施例的流程示意图。即在步骤S11中,服务器获取关于目标应用服务产生的错误日志数据的过程,具体可以通过执行以下方式实现:
步骤S111:基于时间信息和参数信息,确定关于目标应用服务的初始日志数据。
在一实施例中,在确定关于目标应用服务的初始日志数据的方面,服务器具体可以执行以下步骤:
步骤一:基于参数信息,确定针对目标应用服务的日志库别名。
具体地,服务器从数据库中,匹配到与目标应用服务的参数信息(包括命名空间和应用名)相关联的日志库别名。
在一些实施例中,该数据库可以为CMDB库,CMDB(Configuration ManagementDatabase)库是一种配置管理数据库。用于存储和管理IT系统中各种配置项信息的数据库。这些配置项可以包括硬件、软件、网络设备、服务、应用程序等等。
其中,日志库别名是用于记录日志的库或软件包的简称或缩写。例如,Python 中常用的日志库是logging,其别名通常为log。其他常见的日志库包括log4j(Java)、log4net(.NET)、winston(Node.js)等。这些别名通常是为了方便在代码中引用这些库而设定。
步骤二:基于时间信息和日志库别名,确定目标应用服务在执行异常事件时所对应的日志编号。
具体地,服务器基于目标应用服务的异常时间,确定目标应用服务在执行异常事件对应产生的日志数据的日志编号。
步骤三:基于日志编号,从对应于日志库别名的日志库中提取出目标应用服务产生的原始日志数据。
具体地,服务器基于日志库别名和日志编号,从对应的日志库中提取出针对异常事件的原始日志数据。
其中,针对异常事件的原始日志数据为关联于日志编号的多行日志数据。
步骤四:基于原始日志数据的字段名,对原始日志数据进行数据清洗,得到针对目标应用服务的初始日志数据。
具体地,服务器基于原始日志数据的字段名,对原始日志数据进行合并处理,得到初始日志数据。
步骤S112:基于预设的目标字符,对各初始日志数据进行模糊匹配,以从各初始日志数据筛选出错误日志数据。
其中,目标字符为针对日志数据所预设的错误提示字符。
具体地,服务器基于目标字符构建查询语句,并通过该查询语句从初始日志数据中模糊匹配出错误日志数据。
在一些实施例中,错误日志数据为针对目标应用服务的初始日志数据中包括有“error”关键字的文本日志。
在一示例性实施例中,参阅图5,图5为本申请中进行日志聚类一实施例的流程示意图。即在步骤S12中,服务器对错误日志数据进行日志聚类,得到对应的多个日志聚类簇的过程,具体可以通过执行以下方式实现:
步骤S121:对错误日志数据进行过滤处理,以过滤错误日志数据中的噪声数据,得到过滤后的错误日志数据。
具体地,服务器对错误日志数据进行停用词过滤,以过滤错误日志数据中的停用词,得到过滤的错误日志数据。
其中,在日志数据中,停用词包括一些常见的词语,如"的"、"是"、"在"、"和"等,这些词通常在分析和搜索过程中被忽略,因为它们在理解文本内容时并不提供太多有用的信息。过滤停用词的目的是减少文本数据的噪音,使得分析和搜索过程更加高效和准确。
步骤S122:对过滤后的错误日志数据进行分词处理,得到对应的分词序列。
在一些实施例中,服务器可以使用LAC(Lexical Analysis of Chinese)处理工具对过滤后的错误日志数据进行分词,以将连续的文本日志划分为有实际物理含义的分词序列。
步骤S123:基于分词序列中各分词词汇的词频向量,对各过滤后的错误日志数据进行日志聚类,得到对应的多个日志聚类簇。
在一实施例中,在关于对各过滤后的错误日志数据进行日志聚类的方面,服务器具体可以执行以下步骤:
步骤一:基于分词序列中各分词词汇的词频向量,将各过滤后的错误日志数据所对应的分词序列转换为预设形式的权重矩阵。
具体地,服务器首先将各分词序列中的分词词汇转换为对应的词频向量,以得到针对各分词序列的词频矩阵;然后,再计算对各词频矩阵中每一词频向量的权重值;最后,基于权重值将词频矩阵转换为权重矩阵。
其中,词频向量表征分词词汇所对应的特征向量和词频。
在一些实施例中,服务器可以使用Count Vectorizer(一种文本特征提取工具)对分词序列中的各个分词词汇进行词频向量化,以将各个分词词汇转换成词频向量。
在一些实施例中,权重矩阵用于表征分词序列中各分词词汇的词频和逆文档频率,即权重矩阵可以为TF-IDF权重矩阵。
其中,在将词频矩阵转换为权重矩阵的过程中,服务器将每个分词词汇的词频(TF)乘以一个逆文档频率(IDF)的权重,从而得到每个分词词汇的TF-IDF值,并将TF-IDF值作为权重值,从而构建得到针对各分词序列的TF-IDF权重矩阵。
其中,在将词频矩阵转换为权重矩阵的过程中,用于降低常见词汇的权重,提高罕见词汇的权重。
步骤二:对权重矩阵进行降维处理,以形成针对各过滤后的错误日志数据的日志特征向量。
在一些实施例中,服务器可以对各个权重矩阵分别进行PCA投影,以将权重矩阵降维为可视化的日志特征向量。
其中,在处理向量矩阵时,PCA(Principal Component Analysis,主成分分析)可以用于降维。在一些实施例中,PCA用于找到TF-IDF权重矩阵中最重要的特征(即主成分),并将数据投影到这些主成分上,从而实现降维。
步骤三:对各过滤后的错误日志数据的日志特征向量进行相似聚类,得到对应的多个日志聚类簇。
在一些实施例中,服务器可以基于DBSCAN算法,对各错误日志数据所对应的日志特征向量进行相似聚类,得到对应的多个日志聚类簇。
其中,DBSCAN(Density-Based Spatial Clustering of Applications withNoise)算法用于对文本数据的特征向量进行聚类,其是一种基于密度的聚类算法,适用于发现具有高密度的区域,并能够处理噪声数据。
在一示例性实施例中,参阅图6,图6为本申请中筛选目标日志数据一实施例的流程示意图。即在步骤S13中,服务器基于各日志聚类簇中对应的两条候选日志数据之间的差异,从各日志聚类簇中筛选出目标日志数据的过程,具体可以通过执行以下方式实现:
步骤S131:基于各日志聚类簇中对应的两个候选特征向量之间的差异,确定对应的各日志聚类簇是否满足预设的聚类条件。
在一实施例中,在关于确定对应的各日志聚类簇是否满足预设的聚类条件的方面,服务器具体可以执行以下步骤:
步骤一:从各日志聚类簇中分别提取出对应向量长度最大的第一候选特征向量和向量长度最小的第二候选特征向量。
其中,该第一候选特征向量和第二候选特征向量即为日志聚类簇中最不相似的两条日志特征向量。
步骤二:对第一候选特征向量和第二候选特征向量进行相似计算,确定第一候选特征向量和第二候选特征向量之间的相似程度。
其中,在进行相似计算时,需要选择适当的距离度量方法,常用的包括欧氏距离、余弦相似度等。这可以根据具体的应用场景和文本特征来选择合适的距离度量方法。
步骤三:基于相似程度和预设的参考程度之间的差异,确定对应的各日志聚类簇是否满足预设的聚类条件。
具体地,服务器对比相似程度和预设的参考程度之间的大小,以确定对应的各日志聚类簇是否满足预设的聚类条件。
其中,若相似程度大于或等于参考程度(如参考程度为0.8),则表明对应日志聚类簇满足预设的聚类条件;若相似程度小于参考程度,则表明对应日志聚类簇不满足预设的聚类条件。
步骤S132:在日志聚类簇满足的聚类条件的情况下,将日志聚类簇中任一日志特征向量所对应的日志数据作为目标日志数据。
其中,在日志聚类簇满足的聚类条件的情况下,表明日志聚类簇内聚类的各条日志特征向量之间的相似程度较为集中,从而其都能较好代表错误日志数据的特征,因此,可以将这类日志聚类簇中的任一日志特征向量所对应的日志数据作为目标日志数据。
步骤S133:在日志聚类簇不满足的聚类条件的情况下,将两个候选特征向量所对应的两个日志数据均作为目标日志数据。
其中,在日志聚类簇不满足的聚类条件的情况下,表明日志聚类簇内聚类的各条日志特征向量之间相似程度的集中程度比较一般,从而其对应的第一候选特征向量和第二候选特征向量之间的差异较大,因此,可以将这类日志聚类簇中的第一候选特征向量和第二候选特征向量所对应的两个日志数据均作为目标日志数据。
为了更清晰阐明本公开实施例提供的日志数据分析方法,以下以一个具体的实施例对该日志数据分析方法进行具体说明。在一示例性实施例中,参考图7和图8,图7为根据一示例性实施例示出的一种日志数据分析方法的流程图,图8为根据一示例性实施例示出的一种日志数据分析方法的模块图,该日志数据分析方法用于服务器中,具体包括如下内容:
步骤S21:响应触发针对目标服务程序的根因定位指令,开始启动对目标服务程序的根因定位执行程序。
其中,触发根因定位指令包括告警触发和主动触发两种方式。
其中,针对于告警触发方式,包括预先在系统中设置有一个监控程序,以监控目标服务程序的SLI指标(包括监控响应时间、错误率),当目标服务程序的SLI指标超出阈值时,服务器确定目标服务程序出现异常,以自动触发针对目标服务程序的日志根因定位流程。
其中,在服务器自动触发日志根因定位流程时,包括以下子步骤:(1)获取目标服务程序的命名空间、应用名、异常时间;(2)基于命名空间、应用名、异常时间,生成并触发根因定位指令。
其中,针对于主动触发方式,包括由用户人工向系统的智能客服输入用于触发日志根因定位流程的对话语句;然后智能客服获取并解析对话语句,以确定对话语句中包括的针对于目标服务程序的命名空间、应用名、异常时间;然后基于命名空间、应用名、异常时间,生成并触发根因定位指令。
步骤S22:基于根因定位指令,匹配针对目标服务程序的日志库别名。
具体地,服务器首先解析根因定位指令,以得出用于触发日志根因定位流程的命名空间、应用名、异常时间;然后,再从CMDB库中,匹配到与命名空间、应用名相关联的日志库别名。
其中,日志库别名是用于记录日志的库或软件包的简称或缩写。例如,Python 中常用的日志库是logging,其别名通常为log。其他常见的日志库包括log4j(Java)、log4net(.NET)、winston(Node.js)等。这些别名通常是为了方便在代码中引用这些库而设定。
步骤S23:基于目标服务程序的异常时间,从对应于日志库别名的日志库中提取出对应的原始文本日志。
具体地,服务器基于目标服务程序的异常时间,确定目标服务程序对应运行的目标事件,以及目标服务程序在运行目标事件时对应产生的日志数据的日志ID;然后,再基于日志库别名和日志ID,从对应的日志库中提取出针对目标事件的原始文本日志。
其中,针对目标事件的原始文本日志为关联于日志ID的多行日志数据。
步骤S24:基于原始文本日志的字段名,对原始文本日志进行合并处理,得到初始文本日志。
步骤S25:基于预设的查询语句,从初始文本日志中模糊匹配出错误文本日志。
其中,错误文本日志为针对目标服务程序的初始文本日志中包括有“error”关键字的文本日志。
步骤S26:对错误文本日志进行停用词过滤,得到过滤的错误文本日志。
其中,在日志数据中,停用词包括一些常见的词语,如"的"、"是"、"在"、"和"等,这些词通常在分析和搜索过程中被忽略,因为它们在理解文本内容时并不提供太多有用的信息。过滤停用词的目的是减少文本数据的噪音,使得分析和搜索过程更加高效和准确。
步骤S27:对每一条过滤的错误文本日志分别进行分词,以得到对应的多组文本单词序列。
具体地,服务器使用LAC(Lexical Analysis of Chinese)处理工具对错误文本日志进行分词,以将连续的文本日志划分为有实际物理含义的单词序列。
步骤S28:将各组文本单词序列中的各个单词转换为对应的词频向量,得到针对各文本单词序列的词频矩阵。
其中,词频向量表征单词所对应的特征向量和词频。
具体地,服务器使用Count Vectorizer(一种文本特征提取工具)对文本单词序列进行词频向量化,以将各个单词转换成词频向量。
步骤S29:对各组文本单词序列所对应的词频矩阵进行TF-IDF转换,得到对应的多个TF-IDF权重矩阵。
其中,TF-IDF转换会将每个单词的词频(TF)乘以一个逆文档频率(IDF)的权重,从而得到每个单词的TF-IDF值,以得针对各个单词的TF-IDF权重矩阵。
其中,TF-IDF权重矩阵表征单词向量和单词权重(即TF-IDF值)。
其中,TF-IDF转换用于降低常见单词的权重,提高罕见单词的权重。
步骤S30:对各个TF-IDF权重矩阵分别进行PCA投影,以将TF-IDF权重矩阵降维为可视化的日志向量。
步骤S31:基于DBSCAN算法,对各文本日志所对应的日志向量进行相似聚类,得到对应的多个聚类簇。
步骤S32:从每一个聚类簇中,提取出对应长度最大和长度最小的两条候选日志向量进行相似度计算,得到对应的日志相似度。
其中,该长度最大和长度最小的两条目标日志向量即表征聚类簇中最不相似的两条日志向量。
步骤S33:基于日志相似度与预设的相似度阈值之间的大小,从各个聚类簇中提取出目标日志向量。
其中,若日志相似度大于或等于相似度阈值(如相似度阈值为0.8),则表明对应聚类簇内聚类的日志向量的相似度满足聚类标准,从而将聚类簇内任一条日志向量提取出作为目标日志向量。
其中,若日志相似度小于相似度阈值,则表明对应聚类簇内聚类的日志向量的相似度不满足聚类标准,从而将该对应长度最大和长度最小的两条候选日志向量均提取出作为目标日志向量。
步骤S34:对提取出的各条目标日志向量进行合并处理,得到对应的合并字符串。
其中,在合并字符串中,基于预设的分隔符对各条不同的目标日志向量进行分割。
其中,分隔符为自定义的“\n###-&-&-###\n”,其用于在合并字符串中标识和分隔不同的目标日志向量。
步骤S35:基于合并字符串,生成用于输入大语言模型中的对话语句。
其中,对话语句(一种prompt)用于引导大语言模型生成相应的回复,这个对话语句可以是问题、指令、描述或者任何需要模型回应的信息。
其中,在对话语句中包括合并字符串,以及用户期望大语言模型执行的应用服务。
例如,一对话语句为“\n以上是某应用日志信息,其中存在有多条异常(error)日志。请帮我逐一列出error日志,并详细分析出导致应用异常(error)的可能原因。如果存在一条以上异常日志,请以"\n###-&-&-###\n"符号进行分隔。并请用中文回复给我,以及在回复的结尾出对以上分析进行一个简短的总结。”
步骤S36:将对话语句输入大语言模型中以对对话语句进行分析和处理,以得到对应输出的回复语句。
其中,在回复语句中包括针对每一条目标错误日志的异常分析结果,以及关于全部目标错误日志的总分析结果。
这样,一方面,通过区别于现有技术的方式,本方案通过在触发针对目标应用服务的根因定位指令时,首先获取关于所述目标应用服务产生的错误日志数据,然后再依次对错误日志数据进行聚类和筛选,以得出用于根因定位分析的目标日志数据,从而优化了根因定位的流程,有效提高了对服务异常进行根因定位的效率,降低了人力和物力的消耗;另一方面,本方案通过在日志聚类簇中,通过对应的两条候选日志数据之间的差异,以筛选出目标日志数据,然后再通过大语言模型对目标日志数据进行根因定位分析,以得出导致所述目标应用服务产生异常的根本因素,从而优化了对日志数据进行根因定位的方式,有效提高了根因定位的合理性和准确性,有利于后续能够及时的进行应用排查和修复。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的日志数据分析方法所对应的日志数据分析装置。该日志数据分析装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个装置实施例中的具体限定可以参见上文中方法的限定,在此不再赘述。
在一个实施例中,如图9所示,提供了一种日志数据分析装置10,包括:指令触发单元11、日志聚类单元12、日志筛选单元13和根因定位单元14,其中:
其中,该指令触发单元11,被配置为执行响应触发针对目标应用服务的根因定位指令,获取关于所述目标应用服务产生的错误日志数据;
其中,该日志聚类单元12,被配置为执行对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇;
其中,该日志筛选单元13,被配置为执行基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据;
其中,该根因定位单元14,被配置为执行基于预设的大语言模型对所述目标日志数据进行根因定位分析,得到对应的根因定位分析结果;所述根因定位分析结果用于表征所述目标日志数据导致所述目标应用服务产生异常的根本因素。
在一些实施例中,在对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇的方面,所述日志数据分析装置10还用于:
对所述错误日志数据进行过滤处理,以过滤所述错误日志数据中的噪声数据,得到过滤后的错误日志数据;
对所述过滤后的错误日志数据进行分词处理,得到对应的分词序列;
基于所述分词序列中各分词词汇的词频向量,对各所述过滤后的错误日志数据进行日志聚类,得到对应的多个日志聚类簇。
在一些实施例中,在基于所述分词序列中各分词词汇的词频向量,对各所述过滤后的错误日志数据进行日志聚类,得到对应的多个日志聚类簇的方面,所述日志数据分析装置10还用于:
基于所述分词序列中各分词词汇的词频向量,将各所述过滤后的错误日志数据所对应的分词序列转换为预设形式的权重矩阵;所述权重矩阵用于表征所述分词序列中各分词词汇的词频和逆文档频率;
对所述权重矩阵进行降维处理,以形成针对各所述过滤后的错误日志数据的日志特征向量;
对各所述过滤后的错误日志数据的日志特征向量进行相似聚类,得到对应的多个日志聚类簇。
在一些实施例中,在基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据的方面,所述日志数据分析装置10还用于:
基于各所述日志聚类簇中对应的两个候选特征向量之间的差异,确定对应的各所述日志聚类簇是否满足预设的聚类条件;
在所述日志聚类簇满足的聚类条件的情况下,将所述日志聚类簇中任一日志特征向量所对应的日志数据作为目标日志数据;
在所述日志聚类簇不满足的聚类条件的情况下,将两个所述候选特征向量所对应的两个日志数据均作为目标日志数据。
在一些实施例中,在基于各所述日志聚类簇中对应的两个候选特征向量之间的差异,确定对应的各所述日志聚类簇是否满足预设的聚类条件的方面,所述日志数据分析装置10还用于:
从各所述日志聚类簇中分别提取出对应向量长度最大的第一候选特征向量和向量长度最小的第二候选特征向量;
对所述第一候选特征向量和所述第二候选特征向量进行相似计算,确定所述第一候选特征向量和所述第二候选特征向量之间的相似程度;
基于所述相似程度和预设的参考程度之间的差异,确定对应的各所述日志聚类簇是否满足预设的聚类条件。
在一些实施例中,在响应触发针对目标应用服务的根因定位指令的方面,所述日志数据分析装置10还用于:
获取用户向客服坐席发送的对话语句;所述对话语句用于指示触发针对所述目标应用服务的根因定位服务,且在所述对话语句中携带有时间信息和关于所述目标应用服务的参数信息;
基于所述时间信息和所述参数信息,生成并触发针对所述目标应用服务的根因定位指令。
在一些实施例中,在响应触发针对目标应用服务的根因定位指令的方面,所述日志数据分析装置10还用于:
响应于监控到所述目标应用服务的性能指标异常,获取当前的时间信息和所述目标应用服务的参数信息;
基于所述时间信息和所述参数信息,生成并触发针对所述目标应用服务的根因定位指令。
在一些实施例中,在获取关于所述目标应用服务产生的错误日志数据的方面,所述日志数据分析装置10还用于:
基于所述时间信息和所述参数信息,确定关于所述目标应用服务的初始日志数据;
基于预设的目标字符,对各所述初始日志数据进行模糊匹配,以从各所述初始日志数据筛选出错误日志数据;所述目标字符为针对日志数据所预设的错误提示字符。
在一些实施例中,在基于所述时间信息和所述参数信息,确定关于所述目标应用服务的初始日志数据的方面,所述日志数据分析装置10还用于:
基于所述参数信息,确定针对所述目标应用服务的日志库别名;
基于所述时间信息和所述日志库别名,确定所述目标应用服务在执行异常事件时所对应的日志编号;
基于所述日志编号,从对应于所述日志库别名的日志库中提取出所述目标应用服务产生的原始日志数据;
基于所述原始日志数据的字段名,对所述原始日志数据进行数据清洗,得到针对所述目标应用服务的初始日志数据。
在一个实施例中,提供了一种计算机设备,该计算机设备根据所要应用的程序逻辑,具体可以是一种电子设备,也可以是一种服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。
其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。
其中,该计算机程序被执行时以实现一种日志数据分析方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备(包括服务器和电子设备)的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被执行时实现以下步骤:
响应触发针对目标应用服务的根因定位指令,获取关于所述目标应用服务产生的错误日志数据;
对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇;
基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据;
基于预设的大语言模型对所述目标日志数据进行根因定位分析,得到对应的根因定位分析结果;所述根因定位分析结果用于表征所述目标日志数据导致所述目标应用服务产生异常的根本因素。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
响应触发针对目标应用服务的根因定位指令,获取关于所述目标应用服务产生的错误日志数据;
对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇;
基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据;
基于预设的大语言模型对所述目标日志数据进行根因定位分析,得到对应的根因定位分析结果;所述根因定位分析结果用于表征所述目标日志数据导致所述目标应用服务产生异常的根本因素。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域内的技术人员应明白,本申请的实施例可提供有日志数据分析方法、日志数据分析装置、服务器、计算机设备、计算机可读存储介质或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机程序指令(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例中日志数据分析方法、日志数据分析装置、服务器、计算机设备、计算机可读存储介质或计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序产品实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序产品到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的程序指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序产品也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机程序产品中的程序指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的程序指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (12)
1.一种日志数据分析方法,其特征在于,所述方法包括:
响应触发针对目标应用服务的根因定位指令,获取关于所述目标应用服务产生的错误日志数据;
对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇;
基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据;
基于预设的大语言模型对所述目标日志数据进行根因定位分析,得到对应的根因定位分析结果;所述根因定位分析结果用于表征所述目标日志数据导致所述目标应用服务产生异常的根本因素。
2.根据权利要求1所述的方法,其特征在于,所述对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇,包括:
对所述错误日志数据进行过滤处理,以过滤所述错误日志数据中的噪声数据,得到过滤后的错误日志数据;
对所述过滤后的错误日志数据进行分词处理,得到对应的分词序列;
基于所述分词序列中各分词词汇的词频向量,对各所述过滤后的错误日志数据进行日志聚类,得到对应的多个日志聚类簇。
3.根据权利要求2所述的方法,其特征在于,所述基于所述分词序列中各分词词汇的词频向量,对各所述过滤后的错误日志数据进行日志聚类,得到对应的多个日志聚类簇,包括:
基于所述分词序列中各分词词汇的词频向量,将各所述过滤后的错误日志数据所对应的分词序列转换为预设形式的权重矩阵;所述权重矩阵用于表征所述分词序列中各分词词汇的词频和逆文档频率;
对所述权重矩阵进行降维处理,以形成针对各所述过滤后的错误日志数据的日志特征向量;
对各所述过滤后的错误日志数据的日志特征向量进行相似聚类,得到对应的多个日志聚类簇。
4.根据权利要求3所述的方法,其特征在于,所述基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据,包括:
基于各所述日志聚类簇中对应的两个候选特征向量之间的差异,确定对应的各所述日志聚类簇是否满足预设的聚类条件;
在所述日志聚类簇满足的聚类条件的情况下,将所述日志聚类簇中任一日志特征向量所对应的日志数据作为目标日志数据;
在所述日志聚类簇不满足的聚类条件的情况下,将两个所述候选特征向量所对应的两个日志数据均作为目标日志数据。
5.根据权利要求4所述的方法,其特征在于,所述基于各所述日志聚类簇中对应的两个候选特征向量之间的差异,确定对应的各所述日志聚类簇是否满足预设的聚类条件,包括:
从各所述日志聚类簇中分别提取出对应向量长度最大的第一候选特征向量和向量长度最小的第二候选特征向量;
对所述第一候选特征向量和所述第二候选特征向量进行相似计算,确定所述第一候选特征向量和所述第二候选特征向量之间的相似程度;
基于所述相似程度和预设的参考程度之间的差异,确定对应的各所述日志聚类簇是否满足预设的聚类条件。
6.根据权利要求1所述的方法,其特征在于,所述响应触发针对目标应用服务的根因定位指令,包括:
获取用户向客服坐席发送的对话语句;所述对话语句用于指示触发针对所述目标应用服务的根因定位服务,且在所述对话语句中携带有时间信息和关于所述目标应用服务的参数信息;
基于所述时间信息和所述参数信息,生成并触发针对所述目标应用服务的根因定位指令。
7.根据权利要求1所述的方法,其特征在于,所述响应触发针对目标应用服务的根因定位指令,包括:
响应于监控到所述目标应用服务的性能指标异常,获取当前的时间信息和所述目标应用服务的参数信息;
基于所述时间信息和所述参数信息,生成并触发针对所述目标应用服务的根因定位指令。
8.根据权利要求7所述的方法,其特征在于,所述获取关于所述目标应用服务产生的错误日志数据,包括:
基于所述时间信息和所述参数信息,确定关于所述目标应用服务的初始日志数据;
基于预设的目标字符,对各所述初始日志数据进行模糊匹配,以从各所述初始日志数据筛选出错误日志数据;所述目标字符为针对日志数据所预设的错误提示字符。
9.根据权利要求8所述的方法,其特征在于,所述基于所述时间信息和所述参数信息,确定关于所述目标应用服务的初始日志数据,包括:
基于所述参数信息,确定针对所述目标应用服务的日志库别名;
基于所述时间信息和所述日志库别名,确定所述目标应用服务在执行异常事件时所对应的日志编号;
基于所述日志编号,从对应于所述日志库别名的日志库中提取出所述目标应用服务产生的原始日志数据;
基于所述原始日志数据的字段名,对所述原始日志数据进行数据清洗,得到针对所述目标应用服务的初始日志数据。
10.一种日志数据分析装置,其特征在于,包括:
指令触发单元,被配置为执行响应触发针对目标应用服务的根因定位指令,获取关于所述目标应用服务产生的错误日志数据;
日志聚类单元,被配置为执行对所述错误日志数据进行日志聚类,得到对应的多个日志聚类簇;
日志筛选单元,被配置为执行基于各所述日志聚类簇中对应的两条候选日志数据之间的差异,从各所述日志聚类簇中筛选出目标日志数据;
根因定位单元,被配置为执行基于预设的大语言模型对所述目标日志数据进行根因定位分析,得到对应的根因定位分析结果;所述根因定位分析结果用于表征所述目标日志数据导致所述目标应用服务产生异常的根本因素。
11.一种计算机设备,其特征在于,包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令,以实现如权利要求1至9中任一项所述的日志数据分析方法。
12.一种计算机可读存储介质,所述计算机可读存储介质中包括程序数据,其特征在于,当所述程序数据由计算机设备的处理器执行时,使得所述计算机设备能够执行如权利要求1至9中任一项所述的日志数据分析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311857266.3A CN117785539A (zh) | 2023-12-29 | 2023-12-29 | 日志数据分析方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311857266.3A CN117785539A (zh) | 2023-12-29 | 2023-12-29 | 日志数据分析方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117785539A true CN117785539A (zh) | 2024-03-29 |
Family
ID=90392483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311857266.3A Pending CN117785539A (zh) | 2023-12-29 | 2023-12-29 | 日志数据分析方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117785539A (zh) |
-
2023
- 2023-12-29 CN CN202311857266.3A patent/CN117785539A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11586972B2 (en) | Tool-specific alerting rules based on abnormal and normal patterns obtained from history logs | |
US10884891B2 (en) | Interactive detection of system anomalies | |
US10600002B2 (en) | Machine learning techniques for providing enriched root causes based on machine-generated data | |
US11595415B2 (en) | Root cause analysis in multivariate unsupervised anomaly detection | |
US20170109657A1 (en) | Machine Learning-Based Model for Identifying Executions of a Business Process | |
US8533193B2 (en) | Managing log entries | |
US20170109676A1 (en) | Generation of Candidate Sequences Using Links Between Nonconsecutively Performed Steps of a Business Process | |
US20180075235A1 (en) | Abnormality Detection System and Abnormality Detection Method | |
US20170109668A1 (en) | Model for Linking Between Nonconsecutively Performed Steps in a Business Process | |
US20150033077A1 (en) | Leveraging user-to-tool interactions to automatically analyze defects in it services delivery | |
US20190325323A1 (en) | Knowledge management | |
US20170109667A1 (en) | Automaton-Based Identification of Executions of a Business Process | |
US20170109636A1 (en) | Crowd-Based Model for Identifying Executions of a Business Process | |
US20180046956A1 (en) | Warning About Steps That Lead to an Unsuccessful Execution of a Business Process | |
US20170109639A1 (en) | General Model for Linking Between Nonconsecutively Performed Steps in Business Processes | |
US10915602B2 (en) | Automatic detection of outliers in multivariate data | |
WO2016093837A1 (en) | Determining term scores based on a modified inverse domain frequency | |
US20170109638A1 (en) | Ensemble-Based Identification of Executions of a Business Process | |
CN116882978B (zh) | 一种基于产品信息框架的深海潜水器运维保障系统 | |
US9489379B1 (en) | Predicting data unavailability and data loss events in large database systems | |
US11055631B2 (en) | Automated meta parameter search for invariant based anomaly detectors in log analytics | |
US20230078134A1 (en) | Classification of erroneous cell data | |
CN111046082B (zh) | 一种基于语义分析的报表数据源推荐方法与装置 | |
CN112070559A (zh) | 状态获取方法和装置、电子设备和存储介质 | |
US11568344B2 (en) | Systems and methods for automated pattern detection in service tickets |
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 |