CN117555981A - 一种日志信息抽取方法及计算设备 - Google Patents
一种日志信息抽取方法及计算设备 Download PDFInfo
- Publication number
- CN117555981A CN117555981A CN202210924500.9A CN202210924500A CN117555981A CN 117555981 A CN117555981 A CN 117555981A CN 202210924500 A CN202210924500 A CN 202210924500A CN 117555981 A CN117555981 A CN 117555981A
- Authority
- CN
- China
- Prior art keywords
- log
- extraction
- data
- data format
- template
- 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
- 238000000605 extraction Methods 0.000 title claims abstract description 250
- 238000000034 method Methods 0.000 claims abstract description 50
- 238000004458 analytical method Methods 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000012015 optical character recognition Methods 0.000 description 4
- 108010028984 3-isopropylmalate dehydratase Proteins 0.000 description 3
- 238000013499 data model Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2315—Optimistic concurrency control
- G06F16/2322—Optimistic concurrency control using timestamps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种日志信息抽取方法及计算设备。该方法包括:对于待处理的日志,从多个抽取模板中匹配日志的第一抽取模板,在第一抽取模板中不包括日志中的第一字段的情况下,根据第一字段更新第一抽取模板,得到第二抽取模板,其中,第二抽取模板中包括所述第一抽取模板和所述第一字段。该方法在匹配到日志的抽取模板后,根据日志中的字段对抽取模板进行增量处理,使得在按照抽取模板抽取日志中的信息时可以获得日志中所有字段的信息。
Description
技术领域
本申请涉及计算机技术领域和人工智能(artificial intelligence,AI)技术领域,尤其涉及一种日志信息抽取方法及计算设备。
背景技术
随着计算机技术领域的发展,服务器的功能不断增强。服务器日志的数量和种类越来越多,并且,每个日志中记录的信息也越来越多、越来越复杂。
本领域中,通常是对日志进行解析后,从解析获得的内容中获得日志信息。但是,使用该方法从数量多且繁杂的日志中抽取日志信息时效率较低。
发明内容
本申请提供了一种日志信息抽取方法及计算设备,使用预先获得的抽取模板从日志中抽取每个日志的日志信息,可以提高抽取日志信息的效率。
第一方面,本申请提供了一种日志信息抽取方法。
该方法包括:获取待处理的日志;从多个抽取模板中匹配所述日志的第一抽取模板;在所述第一抽取模板中不包括所述日志中的第一字段的情况下,根据所述第一字段更新所述第一抽取模板,得到第二抽取模板,其中,所述第二抽取模板中包括所述第一抽取模板和所述第一字段;根据所述第二抽取模板,抽取所述日志中的日志信息。
上述实施方式,使用抽取模板从日志中自动抽取日志信息,可以提高抽取日志信息的效率。此外,根据日志中的字段,增量处理从多个抽取模板中匹配的抽取模板,可以使其覆盖日志中的所有字段,使得在抽取日志信息时可以获得日志中所有字段的信息。
在一种可能的实施方式中,所述从多个抽取模板中匹配所述日志的第一抽取模板包括:确定所述日志的数据格式,并根据所述数据格式确定所述多个抽取模板
上述实施方式,根据日志的数据格式确定多个抽取模板,可以减少匹配抽取模板的次数,提高匹配抽取模板的效率。
在一种可能的实施方式中,所述确定所述日志的数据格式包括:根据所述日志与多个数据格式对应的数据模板的文本相似度确定所述日志的数据格式,其中,所述多个数据格式包括结构化数据、半结构化数据和非结构化数据。
上述实施方式,通过日志与多个数据格式的数据模板之间的文本相似度,可以对日志进行分类处理,从而确定该日志的数据格式,可以提高确定日志数据格式的准确度。
在一种可能的实施方式中,所述多个数据格式的数据模板通过下述步骤获得:根据所述多个数据格式中各个数据格式对应的历史日志中的公共字段,确定所述各个数据格式对应的数据模板。
上述实施方式,基于各个数据格式对应的历史日志中的公共字段生成各个数据格式对应的数据模板,使得可以通过数据模板确定日志的数据格式。其中,上述实施方式,由于历史日志在不断地更新,使得数据模板也可以随之更新,从而提高识别待处理日志的数据格式的准确度。
在一种可能的实施方式中,所述确定所述日志的数据格式包括:利用数据格式识别模型确定所述日志的数据格式,其中,所述多个数据格式包括结构化数据、半结构化数据和非结构化数据,所述数据格式识别模型根据历史日志及其对应的数据格式标签训练获得。
上述实施方式,通过数据格式识别模型识别日志的数据格式,可以提高数据格式识别的效率。
在一种可能的实施方式中,所述多个抽取模板通过下述步骤确定:对所述数据格式对应的多个历史日志进行聚类,获得多个类别;根据所述各个类别中的历史日志的公共字段确定所述多个抽取模板,所述一个类别对应一个抽取模板。
上述实施方式,根据数据格式的一个类别的历史日志中的公共字段生成一个抽取模板,从而确保该类别的历史日志中的公共字段的信息在信息抽取时不会被丢失。
在一种可能的实施方式中,当所述数据格式为结构化数据时,通过对比各个类别中的历史日志中的字段确定各个类别中的历史日志的公共字段。
上述实施方式,结构化数据的日志中有明显的键值对结构,因此可以通过对比各个日志之间的字段的方式确定结构化数据的历史日志中的公共字段。
在一种可能的实施方式中,当所述数据格式为半结构化数据或非结构化数据时,所述各个类别中的历史日志的公共字段通过下述步骤确定:根据所述各个类别中的历史日志,利用所述数据格式对应的分析模型确定所述各个类别中的历史日志的公共字段。
上述实施方式,由于半结构化数据的日志中往往没有明显的键值对结构,无法通过对比日志之间的字段的方式确定历史日志中的公共字段,因此,可以通过预先训练分析模型确定半结构化数据的历史日志中的公共字段。
在一种可能的实施方式中,所述根据所述第二抽取模板,抽取所述日志的日志信息包括:从所述日志中获取所述第二抽取模板中各个字段的值,并根据所述各个字段和所述各个字段的值确定所述日志信息。
上述实施方式,按照第二抽取模板抽取日志中的日志信息,可以提高日志信息抽取的效率和准确度。
在一种可能的实施方式中,所述日志信息中包括时间信息,所述方法还包括:根据多个日志的日志信息中的时间信息,对所述多个日志的日志信息进行排序,得到日志信息集合。
上述实施方式,按照多个日志的时间信息对多个日志的日志信息进行排序,可以使用户更方便的浏览多个日志的日志信息。
第二方面,本申请提供一种抽取设备。该抽取设备包括:获取模块、确定模块、增量模块、和抽取模块。
其中,获取模块用于获取待处理的日志。
其中,确定模块用于从多个抽取模板中匹配所述日志的第一抽取模板。
其中,增量模块用于在确定所述第一抽取模板中不包括所述日志中的第一字段的情况下,根据所述第一字段更新所述第一抽取模板,得到第二抽取模板,其中,所述第二抽取模板中包括所述第一抽取模板和所述第一字段。
其中,抽取模块用于根据所述第二抽取模板,抽取所述日志中的日志信息。
在一种可能的实施方式中,所述确定模块还用于:确定所述日志的数据格式,并根据所述数据格式确定所述多个抽取模板。
在一种可能的实施方式中,所述确定模块具体用于:根据所述日志与多个数据格式对应的数据模板的文本相似度确定所述日志的数据格式,其中,所述多个数据格式包括结构化数据、半结构化数据和非结构化数据。
在一种可能的实施方式中,所述确定模块可以通过下述步骤获得所述多个数据格式的数据模板:根据所述多个数据格式中各个数据格式对应的历史日志中的公共字段,确定所述各个数据格式对应的数据模板。
在一种可能的实施方式中,所述确定模块还可以具体用于:利用数据格式识别模型确定所述日志的数据格式,其中,所述多个数据格式包括结构化数据、半结构化数据和非结构化数据,所述数据格式识别模型根据历史日志及其对应的数据格式标签训练获得。
在一种可能的实施方式中,所述多个抽取模板通过下述步骤确定:对所述数据格式对应的多个历史日志进行聚类,获得多个类别;根据所述各个类别中的历史日志的公共字段确定所述多个抽取模板,所述一个类别对应一个抽取模板。
在一种可能的实施方式中,当所述数据格式为结构化数据时,所述各个类别中的历史日志的公共字段通过对比各个类别中的历史日志中的字段确定各个类别中的历史日志的公共字段。
在一种可能的实施方式中,当所述数据格式为半结构化数据或非结构化数据时,所述各个类别中的历史日志的公共字段通过下述步骤确定:根据所述各个类别中的历史日志,利用所述数据格式对应的分析模型确定所述各个类别中的历史日志的公共字段。
在一种可能的实施方式中,所述抽取模块具体用于:从所述日志中获取所述第二抽取模板中各个字段的值,并根据所述各个字段和所述各个字段的值确定所述日志信息。
在一种可能的实施方式中,所述日志信息中包括时间信息,所述抽取模块还用于:根据多个日志的日志信息中的时间信息,对所述多个日志的日志信息进行排序,得到日志信息集合。
第三方面,本申请提供一种日志信息抽取系统。所述日志信息抽取系统中包括终端设备和抽取设备,所述终端设备用于向所述抽取设备发送待处理的日志,所述抽取设备用于前述第一方面及其可选实施方式中的任一方法获得所述日志的日志信息。
第四方面,本申请提供一种计算设备。所述计算设备中包括处理器和存储器,所述处理器用于执行存储于所述存储器内的计算机程序以实现第一方面及其可选实施方式中的任一方法。
第五方面,本申请提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得所述计算机执行如实现第一方面及其可选实施方式中的任一方法。
第六方面,本申请提供一种计算机程序产品,包括程序代码,当计算机运行所述计算机程序产品时,使得所述计算机执行如第一方面及其可选实施方式中任一所述的方法。
上述提供的任一种装置或系统或计算设备或计算机存储介质或计算机程序产品,均用于执行上文所提供的方法,因此,其所能达到的有益效果可参考上文提供的对应方法中的对应方案的有益效果,此处不再赘述。
附图说明
图1是本申请实施例提供的一种日志信息抽取的场景示意图;
图2是本申请实施例提供的另一种日志信息抽取的场景示意图;
图3是本申请实施例提供的一种日志信息抽取方法的流程图;
图4是本申请实施例提供的一种确定日志数据格式的示意图;
图5是本申请实施例提供的结构化数据的两个BMC历史日志的示意图;
图6是本申请实施例提供的结构化数据的一个抽取模板的示意图;
图7是本申请实施例提供的半结构化数据的两个BMC历史日志的示意图;
图8是本申请实施例提供的半结构化数据的一个抽取模板的示意图;
图9是本申请实施例提供的非结构化数据的两个BMC历史日志的示意图;
图10是本申请实施例提供的非结构化数据的一个抽取模板的示意图;
图11是本申请实施例提供的一种抽取设备的结构示意图;
图12是本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图,对本申请实施例中的技术方案进行描述。
在本申请实施例的描述中,“示例性的”、“例如”或者“举例来说”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”、“例如”或者“举例来说”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”、“例如”或者“举例来说”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,单独存在B,同时存在A和B这三种情况。另外,除非另有说明,术语“多个”的含义是指两个或两个以上。例如,多个系统是指两个或两个以上的系统,多个屏幕终端是指两个或两个以上的屏幕终端。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
在介绍本申请实施例之前,下面先对本申请中出现的名词进行解释。
智能平台管理接口(intelligent platform management interface,IPMI),是一套为计算机(通常是服务器)子系统定义的计算机接口规范,用于提供独立于主机系统的处理器、固件和操作系统等软硬件的管理和检视功能。例如,服务器物理健康状态检测、服务器软硬件信息和运行状态查询、远程安装操作系统等。其中,固件例如是基本输入输出系统(basic input output system,BIOS)或统一可扩展固件接口(unified extensiblefirmware interface,UEFI)。
基板管理控制器(baseboard management controller,BMC),提供IPMI架构中的智能特性。它是嵌入在计算机(通常是服务器)主板上的专用微控制器,BMC负责管理系统软件和硬件之间的接口。
服务器日志,可以包括BMC日志和操作系统日志。其中,BMC日志是服务器中的BMC记录的文件,BMC日志中可以包括服务器中的各个部件和/服务器的附属设备发生的故障事件和告警信息等内容。其中,部件可以包括但不限于BMC和供电单元(power supply unit,PSU)。操作系统日志是服务器的操作系统记录的文件,其中可以包括操作系统中发生故障事件和告警信息等内容。其中,服务器包括但不限于网页(Web)服务器、文件传输协议(filetransfer protocol,FTP)服务器、动态主机配置协议(dynamic host configurationprotocol,DHCP)服务器或域名服务器(domain name server,DNS)等,本申请实施例对服务器的具体类型不作特殊限制。
Logmine,是一种日志分析方法,其可以用于计算两个文本之间的相似度。具体地,LogMine方法中,可以通过逐个比较两个文本中的单词,从而确定两个文本中相同单词的数量M,然后计算M与两个文本中的最大单词数量L的比值,将该比值转换为百分数,获得的百分数即可作为两个文本之间的相似度。
文字识别(optical character recognition,OCR),是指电子设备(例如扫描仪或数码相机)扫描文本中的字符,然后用字符识别方法将采集到的字符的形状翻译成计算机文字的过程。即对文本进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程。
结构化数据:是指按照预定义的数据模型进行结构化或以预定义的方式组织的数据,是一种标准化的数据格式。它可以使用关系型数据库表示和存储,表现为二维形式的数据。
半结构化数据,是结构化的数据,但它的结构并不符合按照关系型数据库或者其他数据模型的结构,其结构变化很大。
非结构化数据,是指既没有按照预定义的数据模型进行结构化,也没有按照预定义的方式组织的数据。这种类型的数据可以包括所有格式的文本、图片等具有一定内部结构的数据。
键值对是一种抽象数据类型,包括一组键标识符和一组关联值,每个键key后面对应着相应的值value。键值对在查找表、哈希表、配置文件中常被使用,是一种常用的数据存储方式。
日志信息抽取,是指从日志中获取某个字段的值的过程。日志信息包括日志中的字段和字段的值。
在计算机领域中,日志的数量和种类越来越多,每个日志中记录的内容也越来越繁杂。从如此繁杂的日志中得到需要的日志信息变得愈发困难,抽取效率和准确率较低。
下面以服务器的BMC日志为例,结合具体的应用场景介绍本申请实施例提供的日志信息抽取方法。可以理解的,本申请实施例并不限于处理服务器的BMC日志,还可以用于处理其他类型的日志,例如,服务器的操作系统日志等。
图1是本申请实施例提供的一种日志信息抽取场景示意图。
如图1所示,该场景中包括服务器(包括服务器1~服务器3)和抽取设备。服务器可以定时或实时地向抽取设备发送BMC日志。抽取设备也可以实时或定时地向服务器发送BMC日志收集指令,服务器接收到BMC日志收集指令后,向抽取设备发送BMC日志。抽取设备用于对服务器发送的BMC日志进行日志信息抽取。
此外,图1所示场景中服务器和抽取设备的数量仅仅是示例性的。在其他应用场景中还可以包括其他数量的服务器和抽取设备。例如,可以设置多个抽取设备,每个抽取设备面向多个服务器提供日志信息抽取服务,并且每个抽取设备服务的服务器不相同。
图2是本申请实施例提供的另一种日志信息抽取场景示意图。
与图1所示场景不同的是,图2所示场景中的服务器和抽取设备之间通过终端设备连接。服务器(包括服务器1~服务器3)可以向实时或定时地向终端设备发送BMC日志,还可以在接收到终端设备发送的日志收集指令后向终端设备发送BMC日志。终端设备的用户在确认终端设备接收到BMC日志后,可以在终端设备上操作,将BMC发送给抽取设备以抽取日志信息。
在一个实施例中,抽取设备可以向终端设备提供日志信息抽取服务的应用程序接口,通过该应用程序接口接收需要抽取日志信息的BMC日志。
在一个实施例中,抽取设备可以根据通过应用程序接口接收到的BMC日志的数量和/或每个BMC日志的文件大小确定抽取任务信息,并向终端设备发送该抽取任务信息。其中,该抽取任务信息可以包括:抽取设备抽取日志信息需要花费的时间和/或用户需要支付的费用。
上述图1和图2所示场景中的抽取设备可以包括位于云端的服务器,还可以包括位于本地的计算设备(例如笔记本电脑)。
上述图2所示场景中的终端设备可以搭载iOS、Android、Microsoft等操作系统或者其它操作系统。终端设备具体可以包括可以是手机、平板电脑、台式电脑、笔记本电脑、桌面型计算机、膝上型计算机、手持计算机、超级移动个人计算机(ultra-mobile personalcomputer,UMPC)、掌上电脑(personal digital assistant,PDA)、增强现实(augmentedreality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificialintelligence,AI)设备、可穿戴式设备、车载设备、智能家居设备和/或智慧城市设备等,本申请实施例对终端设备的具体类型不作特殊限制。
在对日志信息抽取场景进行介绍后,下面介绍本申请实施例提供的日志信息抽取方法,该方法由图1或图2所示的抽取设备执行。
在一个实施例中,图1或图2所示的抽取设备在接收到BMC日志后,执行预先设置的抽取脚本,从BMC日志中获得日志信息。其中,抽取脚本中包括目标字段的抽取指令,目标字段为已知的字段。该实施例中,抽取设备通过抽取脚本抽取日志信息,虽然可以提高日志信息抽取的效率,但是需要提前预先知道需要BMC日志中包含哪些字段才能使用相应字段的抽取指令进行抽取。也就是说,使用该方案抽取日志信息会丢失日志中未知字段的信息。
在一个实施例中,图1或图2所示的抽取设备在接收到BMC日志后,利用预先设置的固定的抽取模板从该BMC日志中抽取日志信息抽取。
该实施例中,由于服务器的BMC日志存在多种数据格式,如结构化数据、半结构化数据、非结构化数据,抽取设备无法通过固定的抽取模板对该不同的数据格式的BMC日志进行日志信息抽取。并且,该实施例中,当抽取模板中的字段无法覆盖BMC日志中的字段时,该方法抽取的日志信息的准确度也较低。
本申请实施例提供一种日志信息抽取方法,可以解决上述存在的技术问题。
图3是本申请实施例提供的一种日志信息抽取方法的流程图。该方法可以应用于抽取设备。具体地,抽取设备在对BMC日志进行日志信息抽取时,首先确定待处理的BMC日志的数据格式,然后从该BMC的数据格式对应的多个抽取模板中确定该BMC的第一抽取模板。其中,抽取设备还在确定第一抽取模板中不包括BMC日志中的第一字段的情况下,根据该第一字段增量处理第一抽取模板得到第二抽取模板,最后按照第二抽取模板从BMC日志中抽取日志信息。
本申请实施例的方法,在确定匹配到的抽取模板未完全覆盖日志中的所有字段时,根据未覆盖的字段对匹配到的抽取模板进行增量处理,可以确保抽取日志信息时不丢失日志中的任何一个字段的信息。
如图3所示,该方法包括如下的步骤S301-步骤S305。
在步骤S301中,抽取设备获取待处理的BMC日志。
在一个实施例中,如图1所示的日志信息抽取场景,服务器可以实时或者定时地向抽取设备发送BMC日志,服务器还可以在接收到抽取设备的日志收集指令后向抽取设备发送BMC日志。
在一个实施例中,如图2所示的日志信息抽取场景,服务器可以实时或者定时地向用户的终端设备发送BMC日志,服务器还可以在接收到终端设备的日志收集指令后向终端设备发送BMC日志,并且终端设备的用户在确定终端设备接收到BMC日志后,通过终端设备中的抽取设备提供的应用程序接口向抽取设备发送该BMC日志。
在步骤S302中,抽取设备确定该BMC日志的数据格式。
抽取设备在获取到BMC日志后,识别该BMC日志的数据格式。本申请实施例中,BMC日志的数据格式可以包括前述的结构化数据、半结构化数据和非结构化数据中的一种。可以理解的,在其他实施例中,BMC日志的数据格式还可以是其他类型的数据格式。
在一个实施例中,抽取设备可以利用预先训练好的数据格式识别模型确定该BMC日志的数据格式。具体地,抽取设备将BMC日志输入数据格式识别模型,获得该数据格式识别模型输出的各个数据格式对应的概率,并从中选择最大概率对应的数据格式作为BMC日志的数据格式。其中,数据格式识别模型可以根据多个历史BMC日志及其对应的数据格式标签训练获得。每个BMC历史日志对应的数据格式可以通过人工标注的方式确定。
在一个实施例中,抽取设备还可以采用SIF方法计算BMC日志与预先获得的各个数据格式的数据模板之间的文本相似度,然后选取文本相似度最大的数据模板对应的数据格式作为该BMC日志的数据格式。
例如,如图4所示,BMC日志与前述三个数据格式的数据模板之间的文本相似度分别95%、60%和10%时,BMC日志与结构化数据的数据模板之间的文本相似度(95%)大于与其他两个的文本相似度(60%和10%)时,BMC日志的数据格式即为结构化数据。其中,一个数据格式的数据模板中可以包括一个数据格式对应的多个BMC历史日志中的所有字段。在一个实施例中,非结构化数据可以包括图片数据。抽取设备在计算日志与数据模板之间的文本相似度之前,可以根据日志的文件后缀名确定该日志是否为图片数据,在确定该日志为图片数据的情况下,使用OCR技术将该日志转换为文本数据,然后再计算该日志的文件数据与数据模板之间的文本相似度。例如,当日志的文件后缀名为JPG、JPEG、PNG、GIF等中的一个时,抽取设备可以确定该日志为图片数据。
在一个实施例中,抽取设备可以从服务器中获得一个日志压缩包,该日志压缩包中包括下述表1所示的多个BMC日志,抽取设备可以使用SIF方法计算获得表1中各个BMC日志与多个数据格式的数据模板之间的文本相似度。
表1多个BMC日志
当多个数据格式分别为结构化数据、半结构化数据和非结构化数据时,抽取设备可以根据表1中的日志与结构化数据、半结构化数据和非结构化数据的数据模板之间的文本相似度,确定表1中各个日志的数据格式。下述的表2示出了表1中各个日志对应的文本相似度,以及各个日志的数据格式。
表2多个BMC日志对应的文本相似度
日志文件名 | 结构化数据 | 半结构化数据 | 非结构化数据 | 数据格式 |
eo_sel | 95% | 60% | 10% | 结构化数据 |
systemcom.dat | 10% | 40% | 60% | 非结构化数据 |
fdm_log | 20% | 70% | 80% | 非结构化数据 |
fdm_output | 10% | 50% | 70% | 非结构化数据 |
maintenance_log | 10% | 50% | 60% | 非结构化数据 |
diagnose_log | 20% | 30% | 50% | 非结构化数据 |
operate_log | 20% | 50% | 80% | 非结构化数据 |
LSI_RAID_Controller_Log | 40% | 70% | 60% | 半结构化数据 |
options0.ini | 50% | 80% | 10% | 半结构化数据 |
app_revision.txt | 10% | 20% | 90% | 非结构化数据 |
在步骤S303中,抽取设备从BMC日志的数据格式对应的多个抽取模板中匹配第一抽取模板。
抽取设备根据BMC日志的数据格式,确定与该数据格式对应的多个抽取模板,然后从该多个抽取模板中匹配第一抽取模板。具体地,抽取设备可以计算BMC日志与各个抽取模板之间的文本相似度,选择相似度最大的抽取模板作为第一抽取模板。其中,日志与各个抽取模板之间的文本相似度的计算过程与前述日志与数据模板之间文本相似度的计算方法相同,此处不再赘述。
在一个实施例中,抽取设备可以预先根据各个数据格式对应的多个BMC历史日志,确定各个数据格式对应的多个抽取模板,每个数据格式均对应多个抽取模板。
具体地,抽取设备可以对每个数据格式对应的多个BMC历史日志进行聚类,得到多个类别,然后根据多个类别对应的公共字段得到该数据格式对应的多个抽取模板,一个类别对应一个抽取模板。其中,一个类别对应的公共字段是指属于该类别的BMC历史日志中均包括的字段。例如,两个BMC历史日志(历史日志1和历史日志2)被划分为同一个类别,如果历史日志1中包括:身份标识号(identity document,ID)字段和事件类型(Event Type)字段,历史日志2中包括身份标识号(identity document,ID)字段、事件类型(Event Type)字段和事件描述(Event Description)字段,那么该类别对应的公共字段即为身份标识号(identity document,ID)字段和事件类型(Event Type)字段。一个数据格式的一个类别的日志对应一个抽取模板相比于一个日志对应一个抽取模板,可以避免获得重复的抽取模板而降低匹配日志的第一抽取模板的效率。
抽取设备对一个数据格式的多个BMC历史日志进行聚类,可以避免
下面分别介绍结构化数据、半结构化数据和非结构化数据对应的多个抽取模板的获取过程。
对于结构化数据,抽取设备可以在对属于结构化数据的BMC历史日志进行分类后,比对属于各个类别的历史日志中的字段确定各个类别对应的公共字段,各个类别对应的公共字段即为该各个类别对应的抽取模板。
例如图5所示的结构化数据的一个类别中的2个BMC历史日志,均为eo_sel日志。抽取设备可以比对图5所示的2个BMC历史日志中的字段,得到如图6所示的公共字段。图6所示的公共字段即为结构化数据对应的一个抽取模板。图6所示的该类别对应的公共字段包括:告警事件的“身份标识号(identity document,ID)”、“严重程度(Severrity)”、“事件类型(Event Type)”、“事件描述(Event Description)”、“生成时间(Generation Time)”、“状态(Status)”、“事件代码(Event Code)”、“建议(Suggestion)”。其中,公共字段引号后面的内容为公共字段的值。在一个实施例中,公共字段的值可以包括一个或多个字符,其中,字符可以包括但不限于字母或数字。
对于半结构化数据,半结构化数据的BMC历史日志中往往没有结构化数据的日志中明显的键值对结构,但半结构化数据的BMC历史日志中也存在相同的字段。因此,在一个实施例中,抽取设备在对属于半结构化数据的BMC历史日志进行分类后,可以根据半结构化数据对应的各个类别的历史日志,利用半结构化数据对应的分析模型确定半结构化数据对应的各个类别的公共字段。其中,半结构化数据对应的分析模型可以根据半结构化数据的历史日志及其对应的公共字段标签训练获得。
例如图7所示的属于半结构化数据的一个类别中的两个BMC历史日志,均为两个LSI_RAID_Controller_Log日志。抽取设备可以基于该两个半结构化数据的BMC历史日志,利用半结构化数据对应的分析模型获得如图8所示的公共字段。图8所示的公共字段即为半结构化数据对应的一个抽取模板。图8所示的该类别对应的公共字段包括:告警事件的“控制器身份标识号(Controller ID)”、“注册身份标识号(Registration ID)”、“事件序列号(Event Sequence Number)”、“消息时间戳(Message Timestamp)”、“本地时间戳(LocalTimestamp)”、“Event code”、“发生地点(Locale)”和“等级(Class)”。
对于非结构化数据,抽取设备同样可以在对属于半结构化数据的BMC历史日志进行分类后,利用非结构化数据对应的分析模型确定非结构化数据对应的各个类别对应的公共字段。非结构化数据对应的公共字段可以是时间字段、错误描述字段、关键事件字段等中的一个或多个。其中,非结构化数据对应的分析模型可以根据非结构化数据的历史日志及其对应的公共字段标签训练获得。
例如图9所示的属于非结构化数据的一个类别中的两个BMC历史日志,分别为ipmi_mass_operate_log日志和operate_log日志。抽取设备可以利用非结构化数据对应的分析模型确定图10所示的两个BMC历史日志中的公共字段。图10所示的公共字段即为非结构化数据的一个抽取模板。图10所示的公共字段包括:d{4}-\d{1,2}-\d{1,2}、d{2}:\d{2}:\d{2}和智能平台管理接口(intelligent platform management interface,IPMI)。其中,d{4}-\d{1,2}-\d{1,2}表示类似2020-11-20的时间字段,d{2}:\d{2}:\d{2}表示类似04:20:58的时间字段。
在步骤S304中,抽取设备在确定第一抽取模板中不包括BMC日志中的第一字段的情况下,根据该第一字段更新第一抽取模板,得到第二抽取模板,使第二抽取模板中包括第一抽取模板和该第一字段。
抽取设备可以比对第一抽取模板中的字段和BMC日志中的字段,确定第一抽取模板中不包括BMC日志中的第一字段,然后将该第一字段添加至BMC日志对应的第一抽取模板中,得到第二抽取模板,使得第二抽取模板中第一抽取模板和包括该第一字段。
在一个实施例中,如果BMC历史日志的数据格式为非结构化数据并且为图片数据时,可以使用OCR技术将BMC历史日志转换为文本数据。
在步骤S305中,抽取设备根据第二抽取模板,抽取BMC日志中的日志信息。
抽取设备从BMC日志中获取第二抽取模板中各个字段对应的值,并根据所述各个字段和所述各个字段的值确定所述日志信息。
在一个实施例中,日志信息包括时间字段及其对应的时间。抽取设备获得多个日志的日志信息后,可以根据各个日志的日志信息中的时间,对各个日志的日志信息进行排序,得到日志信息集合。例如,抽取设备在获得上述表1所示的各个日志的日志信息后,可以对其进行排序,获得日志信息集合。其中,排序可以是升序排序或者降序排序。
本申请实施例,使用抽取模板从日志中自动抽取日志信息,可以提高抽取日志信息的效率。并且,根据日志中的字段,增量处理从多个抽取模板中匹配到的第一抽取模板,从而得到可以覆盖日志中的所有字段的第二抽取模板,使得在使用第二抽取模板抽取日志信息时可以获得日志中所有字段的信息。
基于图3所示的日志信息抽取方法实施例,本申请实施例还提供一种抽取设备1100,该抽取设备1100用于执行图3所示实施例中的方法步骤。
图11是本申请实施例提供的一种抽取设备1100的结构示意图。应理解,图11仅是示例性地展示了抽取设备1100的一种结构化示意图,本申请并不限定对抽取设备1100中的模块的划分。如图11所示,该抽取设备1100110中包括:获取模块1101、确定模块1102、增量模块1103、和抽取模块1104。
下面对上述抽取设备1100中各个模块的功能进行介绍。
获取模块1101用于获取待处理的日志。在一个实施例中,如图1所示,获取模块1101可以从服务器(包括服务器1~3)接收BMC日志。在一个实施例中,如图2所示,获取模块1101可以向终端设备提供一个应用程序接口(图11中的API接口),通过该应用程序接口接收服务器(包括服务器1~3)的BMC日志。
确定模块1102用于从多个抽取模板中匹配所述日志的第一抽取模板。其中,确定模块1102中可以预先设置不同数据格式的抽取模板,每个数据格式可以对应多个抽取模板。确定模块1102可以先确定待处理的BMC日志的数据格式,然后利用SIF方法计算该BMC日志与该BMC日志的数据格式对应的多个抽取模板之间的文本相似度,并根据获得的文本相似度从多个抽取模板中确定第一抽取模板。可选地,确定模块1102可以使用SIF方法计算BMC日志与各个数据模板之间的文本相似度,然后选择最大文本相似度的数据模板对应的数据格式作为BMC日志的数据格式。可选地,确定模块1102还可以使用预先训练好的数据格式识别模型识别BMC日志的数据格式。
增量模块1103用于在确定所述第一抽取模板中不包括所述日志中的第一字段的情况下,根据所述第一字段更新所述第一抽取模板,得到第二抽取模板,其中,所述第二抽取模板中包括第一抽取模板和第一字段。
抽取模块1104用于根据所述第二抽取模板,抽取所述日志中的日志信息。其中,抽取模块1104在对多个日志进行处理后,还可以按照各个日志的时间顺序,对各个日志的日志信息进行升序排序或者降序排序。
需要说明的是,图11所示实施例提供的抽取设备1100在执行日志信息抽取方法时,仅以上述各功能模块的划分举例说明。在一个实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的抽取设备与图3所示的日志信息抽取方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
在另一个实际应用中,上述图11所示的多个模块还可以分散地部署在多个计算设备上,多个计算设备共同实现上述图3所示的日志信息抽取方法实施例中的方法步骤。
图12是本申请实施例提供一种计算设备1200的硬件结构示意图。
该计算设备1200可以为上述抽取设备。参见图12,该计算设备1200包括处理器1201、存储器1202、通信接口1203和总线1204,处理器1201、存储器1202和通信接口1203通过总线1204彼此连接。处理器1201、存储器1202和通信接口1203也可以采用除了总线1204之外的其他连接方式连接。
其中,存储器1202可以是各种类型的存储介质,例如随机存取存储器(randomaccess memory,RAM)、只读存储器(read-only memory,ROM)、非易失性RAM(non-volatileRAM,NVRAM)、可编程ROM(programmable ROM,PROM)、可擦除PROM(erasable PROM,EPROM)、电可擦除PROM(electrically erasable PROM,EEPROM)、闪存、光存储器、硬盘等。
其中,处理器1201可以是通用处理器,通用处理器可以是通过读取并执行存储器(例如存储器1202)中存储的内容来执行特定步骤和/或操作的处理器。例如,通用处理器可以是中央处理器(central processing unit,CPU)。处理器1201可以包括至少一个电路,以执行图1所示实施例提供的方法的全部或部分步骤。
其中,通信接口1203包括输入/输出(input/output,I/O)接口、物理接口和逻辑接口等用于实现计算设备1200内部的器件互连的接口,以及用于实现计算设备1200与其他设备(例如其他计算设备或用户设备)互连的接口。物理接口可以是以太网接口,光纤接口,ATM接口等。
其中,总线1204可以是任何类型的,用于实现处理器1201、存储器1202和通信接口1203互连的通信总线,例如系统总线。
上述器件可以分别设置在彼此独立的芯片上,也可以至少部分的或者全部的设置在同一块芯片上。将各个器件独立设置在不同的芯片上,还是整合设置在一个或者多个芯片上,往往取决于产品设计的需要。本申请实施例对上述器件的具体实现形式不做限定。
图12所示的计算设备1200仅仅是示例性的,在实现过程中,计算设备1200还可以包括其他组件,本文不再一一列举。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。应理解,在本申请实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,不应对本申请实施例的实施过程构成任何限定。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。
Claims (10)
1.一种日志信息抽取方法,其特征在于,所述方法包括:
获取待处理的日志;
从多个抽取模板中匹配所述日志的第一抽取模板;
在所述第一抽取模板中不包括所述日志中的第一字段的情况下,根据所述第一字段更新所述第一抽取模板,得到第二抽取模板,其中,所述第二抽取模板中包括所述第一抽取模板和所述第一字段;
根据所述第二抽取模板,抽取所述日志的日志信息。
2.根据权利要求1所述的方法,其特征在于,所述从多个抽取模板中匹配所述日志的第一抽取模板包括:
确定所述日志的数据格式,并根据所述数据格式确定所述多个抽取模板。
3.根据权利要求2所述的方法,其特征在于,所述确定所述日志的数据格式包括:
根据所述日志与多个数据格式对应的数据模板的文本相似度确定所述日志的数据格式,其中,所述多个数据格式包括结构化数据、半结构化数据和非结构化数据。
4.根据权利要求3所述的方法,其特征在于,所述多个数据格式的数据模板通过下述步骤获得:
根据所述多个数据格式中各个数据格式对应的历史日志中的公共字段,确定所述各个数据格式对应的数据模板。
5.根据权利要求2所述的方法,其特征在于,所述确定所述日志的数据格式包括:
利用数据格式识别模型确定所述日志的数据格式,其中,所述多个数据格式包括结构化数据、半结构化数据和非结构化数据,所述数据格式识别模型根据历史日志及其对应的数据格式标签训练获得。
6.根据权利要求2-5任一项所述的方法,其特征在于,所述多个抽取模板通过下述步骤确定:
对所述数据格式对应的多个历史日志进行聚类,获得多个类别;
根据所述各个类别中的历史日志的公共字段确定所述多个抽取模板,所述一个类别对应一个抽取模板。
7.根据权利要求6任一项所述的方法,其特征在于,当所述数据格式为半结构化数据或非结构化数据时,所述各个类别中的历史日志的公共字段通过下述步骤确定:
根据所述各个类别中的历史日志,利用所述数据格式对应的分析模型确定所述各个类别中的历史日志的公共字段。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述根据所述第二抽取模板,抽取所述日志中的日志信息包括:
从所述日志中获取所述第二抽取模板中各个字段的值,并根据所述各个字段和所述各个字段的值确定所述日志信息。
9.一种日志信息抽取系统,其特征在于,所述日志信息抽取系统中包括终端设备和抽取设备,所述终端设备用于向所述抽取设备发送待处理的日志,所述抽取设备用于根据权利要求1至8任一所述的方法获得所述日志的日志信息。
10.一种计算设备,其特征在于,所述计算设备中包括处理器和存储器,所述处理器用于执行存储于所述存储器内的计算机程序以实现权利要求1至8任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210924500.9A CN117555981A (zh) | 2022-08-02 | 2022-08-02 | 一种日志信息抽取方法及计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210924500.9A CN117555981A (zh) | 2022-08-02 | 2022-08-02 | 一种日志信息抽取方法及计算设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117555981A true CN117555981A (zh) | 2024-02-13 |
Family
ID=89817182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210924500.9A Pending CN117555981A (zh) | 2022-08-02 | 2022-08-02 | 一种日志信息抽取方法及计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117555981A (zh) |
-
2022
- 2022-08-02 CN CN202210924500.9A patent/CN117555981A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108427705B (zh) | 电子装置、分布式系统日志查询方法及存储介质 | |
CN111371858B (zh) | 群控设备识别方法、装置、介质及电子设备 | |
CN106294219B (zh) | 一种设备识别、数据处理方法、装置及系统 | |
CN110929125A (zh) | 搜索召回方法、装置、设备及其存储介质 | |
US20220019742A1 (en) | Situational awareness by fusing multi-modal data with semantic model | |
CN111144402A (zh) | Ocr识别准确率的计算方法、装置、设备以及存储介质 | |
CN112181835A (zh) | 自动化测试方法、装置、计算机设备及存储介质 | |
WO2019056496A1 (zh) | 图片复审概率区间生成方法及图片复审判定方法 | |
CN112231417A (zh) | 数据分类方法、装置、电子设备及存储介质 | |
CN109933502A (zh) | 电子装置、用户操作记录的处理方法和存储介质 | |
CN112214770B (zh) | 恶意样本的识别方法、装置、计算设备以及介质 | |
CN113254248B (zh) | 一种故障诊断方法、系统及计算设备 | |
CN112579781B (zh) | 文本归类方法、装置、电子设备及介质 | |
CN112104662B (zh) | 远端数据读写方法、装置、设备及计算机可读存储介质 | |
CN113935034A (zh) | 基于图神经网络的恶意代码家族分类方法、装置和存储介质 | |
CN113064984A (zh) | 意图识别方法、装置、电子设备及可读存储介质 | |
CN117093619A (zh) | 一种规则引擎处理方法、装置、电子设备及存储介质 | |
CN117555981A (zh) | 一种日志信息抽取方法及计算设备 | |
CN115098548A (zh) | 一种数据决策方法、系统及云平台 | |
CN115330140A (zh) | 一种基于数据挖掘的建筑风险预测方法及其预测系统 | |
CN113076485B (zh) | 基于智能降级的资源推荐方法、装置、设备及存储介质 | |
CN110781182A (zh) | 校验逻辑的自动编码方法、装置以及计算机设备 | |
CN115620031B (zh) | 一种自然资源确权登记信息处理方法、系统及设备 | |
CN116708251A (zh) | 业务数据的分析方法、装置、设备及存储介质 | |
CN117201149A (zh) | 一种基于云计算的数据访问方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |