[go: up one dir, main page]

CN113986643A - 分析日志文件的方法、电子设备和计算机程序产品 - Google Patents

分析日志文件的方法、电子设备和计算机程序产品 Download PDF

Info

Publication number
CN113986643A
CN113986643A CN202010730016.3A CN202010730016A CN113986643A CN 113986643 A CN113986643 A CN 113986643A CN 202010730016 A CN202010730016 A CN 202010730016A CN 113986643 A CN113986643 A CN 113986643A
Authority
CN
China
Prior art keywords
log
identifier
analyzed
templates
identification
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.)
Granted
Application number
CN202010730016.3A
Other languages
English (en)
Other versions
CN113986643B (zh
Inventor
龚旻
王笑钢
陈春曦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EMC Corp
Original Assignee
EMC IP Holding Co LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by EMC IP Holding Co LLC filed Critical EMC IP Holding Co LLC
Priority to CN202010730016.3A priority Critical patent/CN113986643B/zh
Priority to US17/002,333 priority patent/US11301355B2/en
Publication of CN113986643A publication Critical patent/CN113986643A/zh
Application granted granted Critical
Publication of CN113986643B publication Critical patent/CN113986643B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Evolutionary Biology (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开的实施例涉及一种用于分析日志文件的方法、电子设备和计算机程序产品。该方法可以包括:基于多个参考模板,确定日志文件中的多条日志记录的相应模板。该方法还可以包括:将多条日志记录分别确定为与相应模板对应的多个日志标识。该方法进一步包括:从多个日志标识中确定与预定事件对应的待分析日志标识。此外,该方法还可以包括:从与多个参考模板对应的多个参考日志标识中选择目标参考日志标识,目标参考日志标识与待分析日志标识的第一相似度高于第一阈值相似度。本公开的实施例能够准确且高效地监控日志记录,从而能够及时发现系统需求,节省人力成本。

Description

分析日志文件的方法、电子设备和计算机程序产品
技术领域
本公开总体上涉及计算机领域,更具体地,涉及分析日志文件的方法、电子设备和计算机程序产品。
背景技术
目前,大型IT系统中的日志记录机制用于记录对系统或其他软件进行操作时发生的事件,并生成由若干条日志记录组成的日志文件。进而,分析日志文件中的日志记录的过程就是分析日志文件的过程。日志文件的分析过程是系统监控和故障排除过程中的重要手段。例如,在系统监控过程中,当出现关键日志(例如线程崩溃和关键服务故障)时,就可以发送警报和通知。通常,对关键日志的检测都是基于规则的匹配过程,即,监控系统扫描日志记录并在出现符合特定规则的日志记录是发出通知。然而,基于规则的匹配过程不能穷尽所有可能性,仍然需要耗费大量的人力成本。
发明内容
本公开的实施例提供了分析日志文件的方法、设备和相应的计算机程序产品。
在本公开的第一方面,提供了一种用于分析日志文件的方法。该方法可以包括:基于多个参考模板,确定日志文件中的多条日志记录的相应模板。该方法还可以包括:将多条日志记录分别确定为与相应模板对应的多个日志标识。该方法进一步包括:从多个日志标识中确定与预定事件对应的待分析日志标识。此外,该方法还可以包括:从与多个参考模板对应的多个参考日志标识中选择目标参考日志标识,目标参考日志标识与待分析日志标识的第一相似度高于第一阈值相似度。
在某些实施例中,该方法还可以包括:基于所述目标参考日志标识的针对所述预定事件的预定诊断策略,来处理与所述待分析日志标识对应的日志记录。
在某些实施例中,选择所述目标参考日志标识可以包括:获取与所述待分析日志标识相关联的上下文日志标识以及与所述目标参考日志标识相关联的参考上下文日志标识;确定所述上下文日志标识与所述参考上下文日志标识的第二相似度;基于所述第一相似度和所述第二相似度确定综合相似度;根据确定所述综合相似度高于第二阈值相似度,基于所述目标参考日志标识的针对所述预定事件的预定诊断策略,来处理与所述待分析日志标识对应的日志记录。
在某些实施例中,所述上下文日志标识与所述待分析日志标识相距的时间间隔小于阈值时间间隔,所述参考上下文日志标识与所述目标参考日志标识相距的时间间隔小于所述阈值时间间隔。
在某些实施例中,确定所述多条日志记录的相应模板可以包括:从参考模板数据库中获取所述多个参考模板;以及响应于所述多条日志记录中的第一日志记录与所述多个参考模板中的第一参考模板相匹配,将所述第一参考模板确定为所述第一日志记录的模板。
在某些实施例中,将所述多条日志记录分别确定为所述多个日志标识包括:从所述参考模板数据库中获取所述多个参考模板与所述多个参考日志标识的映射关系;基于所述映射关系获取与所述第一参考模板对应的参考日志标识;以及将与所述第一参考模板对应的参考日志标识确定为第一日志记录的日志标识。
在某些实施例中,确定与所述预定事件对应的所述待分析日志标识包括:基于所述日志文件的时间戳信息,确定发生所述预定事件时的所述待分析日志标识。
在某些实施例中,所述预定事件包括以下各项中的至少一个:线程崩溃事件;用户报告事件;以及系统指标异常事件。
在本公开的第二方面,提供了一种电子设备。该设备可以包括:至少一个处理单元;以及至少一个存储器,其耦合至至少一个处理单元并且存储有机器可执行指令,当指令由至少一个处理单元执行时,使得设备执行动作,该动作可以包括:基于多个参考模板,确定日志文件中的多条日志记录的相应模板。该方法还可以包括:将多条日志记录分别确定为与相应模板对应的多个日志标识。该方法进一步包括:从多个日志标识中确定与预定事件对应的待分析日志标识。此外,该方法还可以包括:从与多个参考模板对应的多个参考日志标识中选择目标参考日志标识,目标参考日志标识与待分析日志标识的第一相似度高于第一阈值相似度。
在本公开的第三方面,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,机器可执行指令在被执行时使机器执行根据第一方面的方法的步骤。
提供发明内容部分是为了以简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的关键特征或主要特征,也无意限制本公开的范围。
附图说明
通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目标、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常代表相同部件。
图1示出了本公开的多个实施例能够在其中实现的示例环境的示意图;
图2示出了本公开的多个实施例能够在其中实现的详细示例环境的示意图;
图3示出了根据本公开的实施例的用于分析日志文件的过程的流程图;
图4是根据本公开的实施例的日志记录、模板、日志标识之间的对应关系的示例图表;
图5示出了根据本公开的实施例的用于分析日志文件的过程的流程图;以及
图6示出了能够实施本公开的多个实施例的计算设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其它明确的和隐含的定义。
为了对系统进行监控,通常会建立基于规则的日志文件分析机制。虽然传统的基于规则的日志文件分析机制可以对符合管理员预先设定的规则的日志记录进行很完善的监控,但基于规则的日志文件分析机制无法穷举所有日志记录,对于管理员未预先设定规则的不同类型的日志记录而言,该分析机制还不够灵活。因此,新出现的不符合预定规则的日志记录可能会被系统监控所遗漏。此外,为了设定更为完善的规则,管理员还会对新出现的日志记录进行研究并对规则进行更新,这也增加了规则的构建和维护成本。
此外,尽管自然语言处理(NLP)技术已经应用于对日志记录的语义进行识别以便执行对日志文件的分析,但是,由于大多数日志记录是由特定的代码库逐行生成的,即,日志记录的表达方式与人类语言的表达方式不同,故基于自然语言处理技术对日志文件的分析结果可能会不可用。
为了至少部分地解决上述以及其他潜在的问题和缺陷,本公开的实施例提出了一种对日志文件中的各个日志记录进行分析的方案。在该方案中,首先确定日志记录所对应的模板(pattern,也称为“模式”),再基于预先设置的模板与日志标识的映射关系,将该日志记录转换为相应的日志标识。之后,通过选择对应于预定事件的待分析日志标识及其周围的上下文日志标识来从日志文件中提取出日志记录的至少一个集合,并分别将待分析日志标识和上下文日志标识与数据库中存储的目标参考日志标识和参考上下文日志标识进行比较,从而选择与该集合相似度最高或较高的表示集合,以便为后续针对预定事件的操作提供参照。因此,本方案能够准确且高效地监控日志记录,从而能够及时发现系统需求,节省人力成本。以下首先结合图1讨论本公开的基本构思。
图1示出了本公开的多个实施例能够在其中实现的示例环境100的示意图。如图1所示,示例环境100中包含计算设备110、日志文件120和比较结果130。此外,计算设备110中还包含比较模型140。日志文件120可以包含用于显示IT系统的操作过程的日志记录的集合,例如,日志记录150-1、日志记录150-2、…、日志记录150-N(下文中统称为日志记录150)。计算设备110可以接收日志文件120并将其中的日志记录150转换为日志标识,并通过计算设备110中的比较模型140来确定比较结果130。比较结果130可以确定数据库中与由日志记录150转换的多个日志标识中的一个或多个日志标识相似度最高或较高的目标参考日志标识。可以基于该目标参考日志标识的针对预定事件的诊断策略来确定相应日志记录的处理策略。
在图1中,基于日志文件120生成比较结果130的关键在于两点。其一,比较模型140可以确定与预定事件对应的待分析日志标识以及上下文日志标识,并且分别将待分析日志标识、上下文日志标识与数据库中的目标参考日志标识和参考上下文日志标识进行比较,从而可以确定综合的比较结果130。其二,计算设备110中的比较模型140是基于已知算法的模型,例如,可以基于汉明(Hamming)距离算法或哈希(Hashing)算法等来确定日志记录的相应模板,可以基于莱文斯坦(Levenshtein)距离算法等来确定待分析日志标识序列与数据库中的相应参考日志标识序列之间的相似度比较结果。优选地,比较模型140还可以是预先训练构建的机器学习或深度学习模型,例如BERT(Bidirectional EncoderRepresentations from Transformers)等。下文将通过图2对比较模型140的构建和使用进行描述。
图2示出了本公开的多个实施例能够在其中实现的详细示例环境200的示意图。与图1类似地,示例环境200可以包含计算设备110、日志文件120和比较结果130。区别在于,示例环境200总体上可以包括模型训练系统260和模型应用系统270。作为示例,模型训练系统260和/或模型应用系统270可以由如图1或图2所示的计算设备110实现。应当理解,仅出于示例性的目的描述示例环境200的结构和功能并不旨在限制本文所描述主题的范围。本文所描述主题可以在不同的结构和/或功能中实施。
如前所述,根据本公开的用于比较日志标识的方案可以分为两个阶段:模型训练阶段和模型应用阶段。在模型训练阶段中,模型训练系统260可以利用日志数据集250来训练用于比较日志标识的比较模型140。在模型应用阶段中,模型应用系统270可以接收经训练的比较模型140和日志文件120,从而生成比较结果130。在某些实施例中,日志数据集250可以是经标注的海量日志记录或者相应日志标识。
应理解,比较模型140还可以被构建为用于比较日志标识的深度学习网络。这样的深度学习网络也可以被称为深度学习模型。在一些实施例中,用于比较日志标识的深度学习网络可以包括多个网络,其中每个网络可以是一个多层神经网络,其可以由大量的神经元组成。通过训练过程,每个网络中的神经元的相应参数能够被确定。
上文描述的技术方案仅用于示例,而非限制本发明。为了更清楚地解释上述方案的原理,下文将参考图3来更详细描述分析日志文件的过程。
图3示出了根据本公开的实施例的用于分析日志文件的过程或方法300的流程图。在某些实施例中,方法300可以在图6示出的设备中实现。作为示例,方法300可以在图1、图2所示的计算设备110中实现。现参照图1描述图3示出的根据本公开实施例的用于分析日志文件的过程或方法300。为了便于理解,在下文描述中提及的具体数据均是示例性的,并不用于限定本公开的保护范围。
在310,计算设备110可以基于存储在数据库中的多个参考模板来确定日志文件120中的多条日志记录150的相应模板。在某些实施例中,计算设备110可以从参考模板数据库中获取多个参考模板,并且在多条日志记录150中的第一日志记录(例如,日志记录150-2)与上述多个参考模板中的第一参考模板相匹配时,将第一参考模板确定为第一日志记录的模板。
图4是根据本公开的实施例的日志记录、模板、日志标识之间的对应关系的示例图表400。如图4所示,“日志记录”栏430中示出了多个日志记录,其中的部分日志记录具有特定规则,可以用通配符的方式来确定具有相同特定规则的日志记录的模板,即,“模板”栏420中的包含通配符的片段。因此,若干条日志记录可以与一个模板相匹配。“日志标识”栏410中示出了多个由数字和字母组成的字符串,其可以用于唯一地指示相应模板的身份信息(ID)。
在320,计算设备110可以将所述多条日志记录分别确定为与所述相应模板对应的多个日志标识。如图4所示,一个模板可以对应于一个日志标识。应理解,尽管图4中示出了日志记录、模板、日志标识之间的对应关系,但为了节约存储资源,数据库中可以仅存储模板与日志标识之间的对应关系。
在某些实施例中,计算设备110可以从参考模板数据库中获取如图4所示的多个参考模板与多个参考日志标识的映射关系。基于该映射关系,计算设备110可以获取与上述实施例中的第一参考模板对应的参考日志标识。进而,计算设备110可以将上述实施例中的第一日志记录(例如,日志记录150-2)转换为与第一参考模板对应的参考日志标识。作为示例,当计算设备接收到日志文件120时,可以对接收到的日志文件进行扫描,并将其中的每条日志记录与数据库中存储的日志或其模板进行比较,最终返回与匹配的模板相对应的日志标识。如果某个日志记录不与任何模板匹配,则可以生成一个新模板,并更新参考模板与参考日志标识的映射关系。此外,为了简化处理过程,可以将数据库中的某些参考日志标识预先标注为与预定事件相对应的“关键日志标识”,从而可以在后续操作中更为快速的确定与预定事件对应的待分析日志标识。
在330,计算设备110可以从上述多个日志标识中确定与预定事件对应的待分析日志标识。在某些实施例中,计算设备110可以基于日志文件的时间戳信息,确定发生预定事件时的待分析日志标识。作为示例,当发生诸如用户报告(用户发现可能存在系统问题而发起的报告)的预定事件时,可以找到该时刻生成的日志记录,进而确定其日志标识作为待分析日志标识。应理解,用户报告仅为预定事件的一个示例。预定事件还可以包括线程崩溃事件、系统指标异常事件等。以此方式,可以将不容易被诸如NLP模型准确识别的日志记录转换为可以被准确识别的日志标识或日志标识序列。
此外,在其他实施例中,如上文实施例所述,由于数据库中的某些参考日志标识被预先标注为“关键日志标识”,因此只要发现多个日志标识中存在与“关键日志标识”匹配的日志标识,就可以将其确定为待分析日志标识。
在340,计算设备110可以从与多个参考模板对应的多个参考日志标识中选择目标参考日志标识,该目标参考日志标识与待分析日志标识的第一相似度高于第一阈值相似度。优选地,计算设备110可以将与待分析日志标识最为相似或相同的参考日志标识确定为目标参考日志标识。
当确定了目标参考日志标识之后,计算设备110可以基于目标参考日志标识的针对预定事件的预定诊断策略,来处理与待分析日志标识对应的日志记录。计算设备110可以参照预定诊断策略来自动处理相应的日志记录,从而提升了系统性能,节约了人力成本。
应理解,在大多数情况下,待分析日志标识仅为一个日志标识,且仅用于表示一条日志记录。在这种情况下,仅需比较一对日志标识即可确定第一相似度。然而,还可能存在待分析日志标识包含多个日志标识且用于表示多条日志记录的情况,例如,利用Backtrace函数生成的故障报告,该报告中包含多条日志记录,即包含多个经转换的日志标识。此时,可以利用诸如莱文斯坦(Levenshtein)距离算法来对待分析日志标识中包含的多个日志标识以及数据库中的相应参考日志标识进行比较。当然,还可以利用机器学习或深度学习模型来进行比较。
还应理解,上文参照图3的描述仅是针对与预定事件对应的一个或一组待分析日志标识的操作。该一个或一组待分析日志标识可以被看做是部分日志文件的“内核”。然而,除了“内核”之外,其上下文日志标识,即,与该“内核”距离预定时间段或预定条目的其他日志标识也同样具有参考价值。下文将参照图5详细描述综合上下文日志标识的具体实施例。
图5示出了根据本公开的实施例的用于分析日志文件的过程或方法500的流程图。在某些实施例中,方法500可以在图6示出的设备中实现。作为示例,方法500可以在图1、图2所示的计算设备110中实现。现参照图1描述图5示出的根据本公开实施例的用于分析日志文件的过程或方法500。为了便于理解,在下文描述中提及的具体数据均是示例性的,并不用于限定本公开的保护范围。
在510,计算设备110可以获取与上述待分析日志标识相关联的上下文日志标识以及与上述目标参考日志标识相关联的参考上下文日志标识。在某些实施例中,上下文日志标识与待分析日志标识相距的时间间隔小于阈值时间间隔。例如,上下文日志标识包含在待分析日志标识之前半小时的所有日志标识以及在待分析日志标识之后半小时的所有日志标识。对应的,参考上下文日志标识与目标参考日志标识相距的时间间隔小于上述阈值时间间隔。例如,参考上下文日志标识包含数据库中的在目标参考日志标识之前半小时的所有参考日志标识以及在目标参考日志标识之后半小时的所有参考日志标识。
还应理解,待分析日志标识附近的日志标识中可能存在空闲时间间隔,即,确定的上下文日志标识可能存在缺省的条目。在这种情况下,上下文日志标识的参考价值可能会被降低。因此,还可以按照日志标识的条目的数目来确定与待分析日志标识相距预定条目数目的上下文日志标识。
在520,计算设备110可以确定上下文日志标识与参考上下文日志标识之间的第二相似度。如前所述,上下文日志标识是待分析日志标识附近的日志标识。由于上下文日志记录已经通过查找数据库中的日志标识与模板的映射关系而转换为上下文日志标识序列,故这种序列与文章中的单词序列相似。因此,可以使用NLP技术来对上下文日志标识序列进行处理。NLP技术可以包括“单词袋”、TF-IDF、BERT等。作为示例,可以首先从提取上下文日志标识,之后使用例如TF-IDF算法计算每个日志标识的加权频率,以得到TF-IDF向量。最后,可以通过比较TF-IDF向量来计算上下文日志标识与参考上下文日志标识的相似度。应理解,还可以使用机器学习或深度学习模型来进行比较。
在530,计算设备110可以基于上述第一相似度和上述第二相似度确定综合相似度。例如,可以通过对第一相似度和第二相似度执行加权平均来确定综合相似度。此外,为了使比较结果更侧重于第一相似度(即,侧重于待分析日志标识),可以限定仅当第一相似度大于预定阈值时将综合相似度确定为第一相似度和第二相似度的加权平均,在其他情况下则仅考虑第一相似度。
进而,在540,计算设备110可以判断综合相似度是否高于第二阈值相似度。如果综合相似度高于第二阈值相似度,则行进至550。在550,计算设备110可以基于目标参考日志标识的针对预定事件的预定诊断策略,来处理与待分析日志标识对应的日志记录。在某些实施例中,综合相似度代表了待分析日志文件中与预定事件相关的日志片段和多个参考日志记录中的参考日志片段的相似度。该日志片段的日志标识集合包含了待分析日志标识与上下文日志标识,并且该参考日志片段的日志标识集合对应于目标参考日志标识信息与参考上下文日志标识信息。
请注意,以上操作提供了对待分析的日志标识及其上下文日志标识与数据库中的日志标识集合进行比较的技术方案。该比较可用作进一步的日志分析。该日志分析可以用于确定相似的系统问题、确定相关联的知识库、从而解决相似的服务请求。
通过实施上述过程,可以通过将日志文件中的日志记录转换为与模板对应的日志标识而简化了与数据库中的参考日志记录的比较过程。此外,上述过程可以通过将与预定事件最为相关的一个或一组待分析日志标识与数据库中的日志标识进行比较来找到与之最为相关的目标参考日志标识,由此就可以基于该目标参考日志标识对应的解决方案来确定针对待分析日志标识的处理方式。并且,为了更为确定更为精确的比较结果,还可以综合上下文的比较结果。由于上下文日志记录已经被转换为上下文日志标识,故可利用NLP技术来对其进行处理,从而避免了传统的利用NLP技术所导致的日志记录的误识别。
图6示出了可以用来实施本公开内容的实施例的示例设备600的示意性框图。如图所示,设备600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的计算机程序指令或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序指令,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个过程和处理,例如方法300和/或500,可由处理单元601执行。例如,在一些实施例中,方法300和/或500可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序被加载到RAM 603并由CPU 601执行时,可以执行上文描述的方法300和/或500的一个或多个动作。
本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (17)

1.一种用于分析日志文件的方法,包括:
基于多个参考模板,确定日志文件中的多条日志记录的相应模板;
将所述多条日志记录分别确定为与所述相应模板对应的多个日志标识;
从所述多个日志标识中确定与预定事件对应的待分析日志标识;以及
从与所述多个参考模板对应的多个参考日志标识中选择目标参考日志标识,所述目标参考日志标识与所述待分析日志标识的第一相似度高于第一阈值相似度。
2.根据权利要求1所述的方法,还包括:
基于所述目标参考日志标识的针对所述预定事件的预定诊断策略,来处理与所述待分析日志标识对应的日志记录。
3.根据权利要求1所述的方法,其中选择所述目标参考日志标识包括:
获取与所述待分析日志标识相关联的上下文日志标识以及与所述目标参考日志标识相关联的参考上下文日志标识;
确定所述上下文日志标识与所述参考上下文日志标识的第二相似度;
基于所述第一相似度和所述第二相似度确定综合相似度;
根据确定所述综合相似度高于第二阈值相似度,基于所述目标参考日志标识的针对所述预定事件的预定诊断策略,来处理与所述待分析日志标识对应的日志记录。
4.根据权利要求3所述的方法,其中所述上下文日志标识与所述待分析日志标识相距的时间间隔小于阈值时间间隔,所述参考上下文日志标识与所述目标参考日志标识相距的时间间隔小于所述阈值时间间隔。
5.根据权利要求1所述的方法,其中确定所述多条日志记录的相应模板包括:
从参考模板数据库中获取所述多个参考模板;以及
响应于所述多条日志记录中的第一日志记录与所述多个参考模板中的第一参考模板相匹配,将所述第一参考模板确定为所述第一日志记录的模板。
6.根据权利要求5所述的方法,其中将所述多条日志记录分别确定为所述多个日志标识包括:
从所述参考模板数据库中获取所述多个参考模板与所述多个参考日志标识的映射关系;
基于所述映射关系获取与所述第一参考模板对应的参考日志标识;以及
将与所述第一参考模板对应的参考日志标识确定为第一日志记录的日志标识。
7.根据权利要求1所述的方法,其中确定与所述预定事件对应的所述待分析日志标识包括:
基于所述日志文件的时间戳信息,确定发生所述预定事件时的所述待分析日志标识。
8.根据权利要求1所述的方法,其中所述预定事件包括以下各项中的至少一个:
线程崩溃事件;
用户报告事件;以及
系统指标异常事件。
9.一种电子设备,包括:
至少一个处理单元;以及
至少一个存储器,其耦合至所述至少一个处理单元并且存储有机器可执行指令,当所述指令由所述至少一个处理单元执行时,使得所述设备执行动作,所述动作包括:
基于多个参考模板,确定日志文件中的多条日志记录的相应模板;
将所述多条日志记录分别确定为与所述相应模板对应的多个日志标识;
从所述多个日志标识中确定与预定事件对应的待分析日志标识;以及
从与所述多个参考模板对应的多个参考日志标识中选择目标参考日志标识,所述目标参考日志标识与所述待分析日志标识的第一相似度高于第一阈值相似度。
10.根据权利要求9所述的设备,所述动作还包括:
基于所述目标参考日志标识的针对所述预定事件的预定诊断策略,来处理与所述待分析日志标识对应的日志记录。
11.根据权利要求9所述的设备,其中选择所述目标参考日志标识包括:
获取与所述待分析日志标识相关联的上下文日志标识以及与所述目标参考日志标识相关联的参考上下文日志标识;
确定所述上下文日志标识与所述参考上下文日志标识的第二相似度;
基于所述第一相似度和所述第二相似度确定综合相似度;
根据确定所述综合相似度高于第二阈值相似度,
基于所述目标参考日志标识的针对所述预定事件的预定诊断策略,来处理与所述待分析日志标识对应的日志记录。
12.根据权利要求11所述的设备,其中所述上下文日志标识与所述待分析日志标识相距的时间间隔小于阈值时间间隔,所述参考上下文日志标识与所述目标参考日志标识相距的时间间隔小于所述阈值时间间隔。
13.根据权利要求9所述的设备,其中确定所述多条日志记录的相应模板包括:
从参考模板数据库中获取所述多个参考模板;以及
响应于所述多条日志记录中的第一日志记录与所述多个参考模板中的第一参考模板相匹配,将所述第一参考模板确定为所述第一日志记录的模板。
14.根据权利要求13所述的设备,其中将所述多条日志记录分别确定为所述多个日志标识包括:
从所述参考模板数据库中获取所述多个参考模板与所述多个参考日志标识的映射关系;
基于所述映射关系获取与所述第一参考模板对应的参考日志标识;以及
将与所述第一参考模板对应的参考日志标识确定为第一日志记录的日志标识。
15.根据权利要求9所述的设备,其中确定与所述预定事件对应的所述待分析日志标识包括:
基于所述日志文件的时间戳信息,确定发生所述预定事件时的所述待分析日志标识。
16.根据权利要求9所述的设备,其中所述预定事件包括以下各项中的至少一个:
线程崩溃事件;
用户报告事件;以及
系统指标异常事件。
17.一种计算机程序产品,所述计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,所述机器可执行指令在被执行时使机器执行根据权利要求1至8中任一项所述的方法的步骤。
CN202010730016.3A 2020-07-27 2020-07-27 分析日志文件的方法、电子设备和计算机程序产品 Active CN113986643B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010730016.3A CN113986643B (zh) 2020-07-27 2020-07-27 分析日志文件的方法、电子设备和计算机程序产品
US17/002,333 US11301355B2 (en) 2020-07-27 2020-08-25 Method, electronic device, and computer program product for analyzing log file

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010730016.3A CN113986643B (zh) 2020-07-27 2020-07-27 分析日志文件的方法、电子设备和计算机程序产品

Publications (2)

Publication Number Publication Date
CN113986643A true CN113986643A (zh) 2022-01-28
CN113986643B CN113986643B (zh) 2025-12-16

Family

ID=79731402

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010730016.3A Active CN113986643B (zh) 2020-07-27 2020-07-27 分析日志文件的方法、电子设备和计算机程序产品

Country Status (2)

Country Link
US (1) US11301355B2 (zh)
CN (1) CN113986643B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115858325A (zh) * 2023-01-17 2023-03-28 北京优特捷信息技术有限公司 一种项目日志的调整方法、装置、设备和存储介质
CN116992325A (zh) * 2022-04-22 2023-11-03 戴尔产品有限公司 用于收集训练数据的方法、电子设备和计算机程序产品
US20250219894A1 (en) * 2023-12-29 2025-07-03 Juniper Networks, Inc. Determining critical logs for network applications

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115495424A (zh) * 2021-06-18 2022-12-20 伊姆西Ip控股有限责任公司 数据处理的方法、电子设备和计算机程序产品
US11907333B2 (en) 2022-07-06 2024-02-20 Dell Products L.P. Systems and methods of grouping system logs using unsupervised machine learning
CN118113232B (zh) * 2024-04-30 2024-10-15 浙江大华技术股份有限公司 资源加载方法、系统、电子设备以及存储介质
US20250370852A1 (en) * 2024-05-29 2025-12-04 Dell Products L.P. Automated system crash analysis and remediation

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100205660A1 (en) * 2009-02-12 2010-08-12 International Business Machines Corporation System, method and program product for recording creation of a cancelable biometric reference template in a biometric event journal record
CN106575254A (zh) * 2014-08-25 2017-04-19 日本电信电话株式会社 日志分析装置、日志分析系统、日志分析方法以及计算机程序
US20190370347A1 (en) * 2018-06-05 2019-12-05 LogsHero Ltd. Clustering of log messages
US20200019484A1 (en) * 2018-07-16 2020-01-16 Red Hat Israel, Ltd. Log record analysis based on reverse engineering of log record formats
CN111160021A (zh) * 2019-10-12 2020-05-15 华为技术有限公司 日志模板提取方法及装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5463768A (en) * 1994-03-17 1995-10-31 General Electric Company Method and system for analyzing error logs for diagnostics
JP3778652B2 (ja) * 1997-04-18 2006-05-24 株式会社日立製作所 ログデータ収集管理方法及びその装置
US7194445B2 (en) * 2002-09-20 2007-03-20 Lenovo (Singapore) Pte. Ltd. Adaptive problem determination and recovery in a computer system
US7895167B2 (en) * 2005-02-16 2011-02-22 Xpolog Ltd. System and method for analysis and management of logs and events
JP4720213B2 (ja) * 2005-02-28 2011-07-13 富士通株式会社 解析支援プログラム、装置及び方法
US8452761B2 (en) * 2007-10-24 2013-05-28 International Business Machines Corporation Apparatus for and method of implementing system log message ranking via system behavior analysis
CN104461842B (zh) * 2013-09-23 2018-02-16 伊姆西公司 基于日志相似性来处理故障的方法和装置
US20160253229A1 (en) * 2013-10-30 2016-09-01 Hewlett Packard Enterprise Development Lp Event log analysis
US9454412B2 (en) * 2014-10-03 2016-09-27 Benefitfocus.Com, Inc. Systems and methods for classifying and analyzing runtime events
JP6669156B2 (ja) * 2015-02-17 2020-03-18 日本電気株式会社 アプリケーション自動制御システム、アプリケーション自動制御方法およびプログラム
US9519535B1 (en) * 2015-07-17 2016-12-13 International Business Machines Corporation Two stage log normalization
US10127125B2 (en) * 2016-10-21 2018-11-13 Accenture Global Solutions Limited Application monitoring and failure prediction
WO2018103035A1 (en) * 2016-12-08 2018-06-14 Zhejiang Dahua Technology Co., Ltd. Methods and systems for processing log data
US10579459B2 (en) * 2017-04-21 2020-03-03 Hewlett Packard Enterprise Development Lp Log events for root cause error diagnosis
US11194692B2 (en) * 2017-09-22 2021-12-07 Nec Corporation Log-based system maintenance and management
US10698756B1 (en) * 2017-12-15 2020-06-30 Palantir Technologies Inc. Linking related events for various devices and services in computer log files on a centralized server
US11086919B2 (en) * 2018-02-19 2021-08-10 Harness Inc. Service regression detection using real-time anomaly detection of log data
US10719384B2 (en) * 2018-02-22 2020-07-21 Red Hat, Inc. Determining relationships between components in a computing environment to facilitate root-cause analysis
TWI666560B (zh) * 2018-04-16 2019-07-21 緯創資通股份有限公司 記錄事件的電子裝置及其方法
US10721256B2 (en) * 2018-05-21 2020-07-21 Oracle International Corporation Anomaly detection based on events composed through unsupervised clustering of log messages
US10922163B2 (en) * 2018-11-13 2021-02-16 Verizon Patent And Licensing Inc. Determining server error types
US11307959B2 (en) * 2019-05-20 2022-04-19 International Business Machines Corporation Correlating logs from multiple sources based on log content
US11366713B2 (en) * 2020-04-20 2022-06-21 Accenture Global Solutions Limited System and method for automatically identifying and resolving computing errors

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100205660A1 (en) * 2009-02-12 2010-08-12 International Business Machines Corporation System, method and program product for recording creation of a cancelable biometric reference template in a biometric event journal record
CN106575254A (zh) * 2014-08-25 2017-04-19 日本电信电话株式会社 日志分析装置、日志分析系统、日志分析方法以及计算机程序
US20190370347A1 (en) * 2018-06-05 2019-12-05 LogsHero Ltd. Clustering of log messages
US20200019484A1 (en) * 2018-07-16 2020-01-16 Red Hat Israel, Ltd. Log record analysis based on reverse engineering of log record formats
CN111160021A (zh) * 2019-10-12 2020-05-15 华为技术有限公司 日志模板提取方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116992325A (zh) * 2022-04-22 2023-11-03 戴尔产品有限公司 用于收集训练数据的方法、电子设备和计算机程序产品
CN115858325A (zh) * 2023-01-17 2023-03-28 北京优特捷信息技术有限公司 一种项目日志的调整方法、装置、设备和存储介质
CN115858325B (zh) * 2023-01-17 2023-08-11 北京优特捷信息技术有限公司 一种项目日志的调整方法、装置、设备和存储介质
US20250219894A1 (en) * 2023-12-29 2025-07-03 Juniper Networks, Inc. Determining critical logs for network applications

Also Published As

Publication number Publication date
US11301355B2 (en) 2022-04-12
CN113986643B (zh) 2025-12-16
US20220027253A1 (en) 2022-01-27

Similar Documents

Publication Publication Date Title
CN113986643B (zh) 分析日志文件的方法、电子设备和计算机程序产品
US11132248B2 (en) Automated information technology system failure recommendation and mitigation
US10387899B2 (en) Systems and methods for monitoring and analyzing computer and network activity
CN110716868B (zh) 异常程序行为检测方法、装置
CN111767382B (zh) 生成反馈信息的方法、装置及终端设备
US20150347923A1 (en) Error classification in a computing system
US11336507B2 (en) Anomaly detection and filtering based on system logs
JP2018500640A (ja) 特徴的なサブトレースマイニングを使用する、経時的グラフにおける挙動クエリ構築のための方法及びシステム
US12056038B2 (en) Log analyzer for fault detection
US11743133B2 (en) Automatic anomaly detection
CN110704390B (zh) 获取服务器维护脚本的方法、装置、电子设备及介质
US9836382B2 (en) Cognitive platform for troubleshooting system events
CN114742051B (zh) 日志处理方法、装置、计算机系统及可读存储介质
US10635521B2 (en) Conversational problem determination based on bipartite graph
CN118394605B (zh) 基于人工智能模型辅助服务器bmc运维方法及装置
US20200233587A1 (en) Method, device and computer product for predicting disk failure
CN115062144A (zh) 一种基于知识库和集成学习的日志异常检测方法与系统
CN114706856A (zh) 故障处理方法及装置、电子设备和计算机可读存储介质
CN111309585A (zh) 日志数据测试方法及装置、系统、电子设备、存储介质
CN118869482A (zh) 多网络设备的风险评估方法、装置、电子设备和存储介质
US20240127082A1 (en) Automated positive train control event data extraction and analysis engine for performing root cause analysis of unstructured data
CN110716843B (zh) 系统故障分析处理方法、装置、存储介质及电子设备
Tao et al. Da-parser: A pre-trained domain-aware parsing framework for heterogeneous log analysis
US20230216853A1 (en) Device attribute determination based on protocol string conventions
CN115544202A (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
GR01 Patent grant