CN112463542A - 日志异常原因诊断方法、装置、计算机设备和存储介质 - Google Patents

日志异常原因诊断方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN112463542A
CN112463542A CN202011473857.7A CN202011473857A CN112463542A CN 112463542 A CN112463542 A CN 112463542A CN 202011473857 A CN202011473857 A CN 202011473857A CN 112463542 A CN112463542 A CN 112463542A
Authority
CN
China
Prior art keywords
log data
linked list
log
target
module
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
CN202011473857.7A
Other languages
English (en)
Other versions
CN112463542B (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.)
Shenzhen Power Supply Bureau Co Ltd
Original Assignee
Shenzhen Power Supply Bureau Co Ltd
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 Shenzhen Power Supply Bureau Co Ltd filed Critical Shenzhen Power Supply Bureau Co Ltd
Priority to CN202011473857.7A priority Critical patent/CN112463542B/zh
Publication of CN112463542A publication Critical patent/CN112463542A/zh
Application granted granted Critical
Publication of CN112463542B publication Critical patent/CN112463542B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F11/3079Monitoring 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 the data filtering being achieved by reporting only the changes of the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • G06F16/152File search processing using file content signatures, e.g. hash values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Quality & Reliability (AREA)
  • Library & Information Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请涉及一种日志异常原因诊断方法、装置、计算机设备和存储介质。所述方法包括:获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;针对不同模块类别,分别构建相应的双向链表;针对每一个双向链表进行区域划分,得到多段子链表;获取待诊断异常原因的第二日志数据,确定第二日志数据所属的多项目标异常特征种类,以第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;当从双向链表中匹配到对应的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。采用本方法能够有效的提高异常原因诊断的命中率。

Description

日志异常原因诊断方法、装置、计算机设备和存储介质
技术领域
本申请涉及电力巡检技术领域,特别是涉及一种日志异常原因诊断方法、装置、计算机设备和存储介质。
背景技术
随着巡检需求的日益提升,为了满足无人机在尽量短的时间内可以执行大量巡检任务的需求,新型自动化无人机巡检设备应运而生,然而,在新型自动化无人机巡检设备中,由于集成了几十种智能硬件设备,这些智能硬件每天输出的日志数据数量达到百万量级,并且这些日志数据根据时间线的排序前后相互交错。面对每日百万量级的日志数据,为了达到真正意义上的全天侯无人值守,巡检系统需要具备极强的异常原因检索功能和自恢复功能,设备异常检索需要实时扫描巡检系统的日志,输出诊断的异常原因,但设备出现的大多数异常往往都需要与异常发生时的上下文日志联立,并与异常诊断规则对比后,才能诊断出异常原因。在面对百万量级的日志数据时,当巡检系统发生异常时,现有的技术方案由于无法及时检索出异常发生的原因,存在降低设备巡检效率的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高设备巡检效率的日志异常原因诊断方法、装置、计算机设备和存储介质。
一种日志异常原因诊断方法,所述方法包括:
获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;所述异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别;
针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储;
针对每一个双向链表,根据与所述等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对所述双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储;
获取待诊断异常原因的第二日志数据,确定所述第二日志数据所属的多项目标异常特征种类,以所述第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;
当从所述双向链表中匹配到对应所述目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
在其中一个实施例中,所述等级类别包括不重要等级类别、轻微等级类别、严重等级类别和极严重等级类别;
所述权重等级,包括:与所述不重要等级类别相适应的低等级、与所述轻微等级类别相适应的次低等级、与所述严重等级类别相适应的中等级,以及与所述极严重等级类别相适应的高等级。
在其中一个实施例中,所述通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储,包括:
针对待存储的第一日志数据,基于所述第一日志数据所属的模块类别,确定相应的目标双向链表;
分别对每条第一日志数据进行哈希处理,并且将处理所得的哈希值作为键,将所述第一日志数据作为值,通过键值对的方式分别将每条第一日志数据封装成一个链表节点;
基于各链表节点所属的权重等级,确定各链表节点的缓存顺序;
基于所述缓存顺序,依次将封装得到的多个链表节点分别插入到相应的节点归属区域中,以进行第一日志数据的存储。
在其中一个实施例中,在基于所述缓存顺序,依次将封装得到的多个链表节点分别插入到相应的节点归属区域中,以进行第一日志数据的存储之前,所述方法还包括:
将封装得到的多个链表节点作为目标节点;
针对各个目标双向链表,判断所述目标双向链表的长度是否大于预设的长度阈值;
当所述目标双向链表的长度大于预设的长度阈值时,则先删除位于所述目标双向链表末尾的链表节点,再从相应的节点归属区域的顶端进行目标节点的插入;
当所述目标双向链表的长度小于等于预设的长度阈值时,判断所述目标双向链表中是否存在与所述目标节点的键、值均相同的冗余节点;当存在冗余节点时,则将所述冗余节点的存储位置提升到相应节点归属区域的顶端;当不存在冗余节点时,则直接从相应节点归属区域的顶端进行目标节点的插入。
在其中一个实施例中,所述获取待诊断异常原因的第二日志数据,确定所述第二日志数据所属的多项目标异常特征种类,以所述第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索,包括:
确定所述第二日志数据所属的多个异常特征种类;
以所述第二日志数据为匹配对象,将所述第二日志数据与相应双向链表中的各项第一日志数据进行匹配检索,当所述第二日志数据所属的多个异常特征种类,与所述第一日志数据所属的多个异常特征种类中存在任一异常特征种类相同时,则确定匹配成功,将匹配到的第一日志数据作为目标日志数据;
输出多条匹配到的目标第一日志数据,且基于所述目标第一日志数据进行诊断结果的确定。
在其中一个实施例中,所述第一日志数据和第二日志数据均为无人机在电力巡检区域进行电力设备巡检的过程中,记录电力设备运行状态的数据;在所述日志模块维度的级别之上还存在日志类型维度;
对应于所述日志类型维度的类型类别包括:设备软件类别以及设备硬件类别;
对应与所述设备软件类别的模块类别包括:后台服务、客户端、流媒体服务以及地面站中的至少一种;
对应与所述设备硬件类别的模块类别包括:机舱门机构、升降与对中平台、换电模块、电池槽充电模块以及电力设备中的至少一种。
在其中一个实施例中,所述方法还包括:
针对获取到的每条第一日志数据,确定所述第一日志数据的生成时间、缓存到相应双向链表的缓存时间以及所属的初始权重等级;
根据所述生成时间以及缓存时间,确定所述第一日志数据的缓存顺序;
基于所述缓存顺序与初始权重等级之间的相对增减变化规律,对每条第一日志数据所属的初始权重等级进行更新;
基于更新所得的目标权重等级,确定每条第一日志数据所属的节点归属区域。
一种日志异常原因诊断装置,所述装置包括:
数据获取模块,用于获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;所述异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别;
链表构建模块,用于针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储;
分区模块,用于针对每一个双向链表,根据与所述等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对所述双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储;
检索模块,用于获取待诊断异常原因的第二日志数据,确定所述第二日志数据所属的多项目标异常特征种类,以所述第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;
输出模块,用于当从所述双向链表中匹配到对应所述目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;所述异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别;
针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储;
针对每一个双向链表,根据与所述等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对所述双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储;
获取待诊断异常原因的第二日志数据,确定所述第二日志数据所属的多项目标异常特征种类,以所述第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;
当从所述双向链表中匹配到对应所述目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;所述异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别;
针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储;
针对每一个双向链表,根据与所述等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对所述双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储;
获取待诊断异常原因的第二日志数据,确定所述第二日志数据所属的多项目标异常特征种类,以所述第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;
当从所述双向链表中匹配到对应所述目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
上述日志异常原因诊断方法、装置、计算机设备和存储介质,基于日志模块下的不同模块类别,对第一日志数据进行分类存储,利于日志之间的关联度的确定。且基于权重等级进行分区存储,使得所属同类特征以及同等权重等级的第一日志数据高度聚合。当存在需要进行诊断的第二日志数据时,根据第二日志数据所属的多项目标异常特征种类,在相应的双向链表中进行特征匹配检索,由于所属同类特征以及同等权重等级的第一日志数据都聚合在同一个节点归属区域,因此基于匹配到的对应目标异常特征种类,能够快速的从相应的双向链表中快速匹配到相关联的目标第一日志数据,有效的提高了异常原因诊断的命中率。
附图说明
图1为一个实施例中日志异常原因诊断方法的应用环境图;
图2为一个实施例中日志异常原因诊断方法的流程示意图;
图3为一个实施例中双向链表的结构示意图;
图4为一个实施例中执行特征匹配检索步骤的流程示意图;
图5为另一个实施例中日志异常原因诊断方法的流程示意图;
图6为一个实施例中日志异常原因诊断装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的日志异常原因诊断方法,可以应用于如图1所示的应用环境中。其中,无人机102通过网络与计算机设备104进行通信。由无人机102进行第一日志数据以及第二日志数据的采集。由计算机设备104进行多条已完成异常原因诊断的第一日志数据的获取,并确定每条第一日志数据所属的异常特征种类。针对在日志模块维度下的不同模块类别,由计算机设备104分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储。且,针对每一个双向链表,由计算机设备104根据与等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储。当计算机设备104获取到待诊断异常原因的第二日志数据时,确定第二日志数据所属的多项目标异常特征种类,以第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;且,当从双向链表中匹配到对应目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
其中,计算机设备104具体可以是终端或服务器,终端具体可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种日志异常原因诊断方法,以该方法应用于计算机设备为例进行说明,包括以下步骤:
步骤S202,获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别。
具体的,由计算机设备进行第一日志数据的获取,并根据日志数据的生成方式分别制定了以下4种异常特征种类包括:对应于日志类型维度的类型类别、对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别。
在其中一个实施例中,当获取到的第一日志数据对象为D时,则日志D的数据格式的定义形式,具体可参考以下内容:
Figure BDA0002836980410000081
基于上述的日志D的数据格式的定义形式可知,针对日志D,其对应于日志类型维度“type”的类型类别为“hardware”,对应于日志模块维度“"module"”的模块类别为“stationary”,对应于日志信息维度“msg”的信息类别为“this is a msg”,对应于日志等级维度“level”的等级类别为“critical”。需要说明的是,上述的各项异常特征决定了不同日志之间的关联性,而日志等级维度则决定了设备日志的重要性。
在另一个实施例中,第一日志数据和第二日志数据均为无人机在电力巡检区域进行电力设备巡检的过程中,记录电力设备运行状态的数据;在日志模块维度的级别之上还存在日志类型维度;对应于日志类型维度的类型类别包括:设备软件类别以及设备硬件类别;对应与设备软件类别的模块类别包括:后台服务、客户端、流媒体服务以及地面站中的至少一种;对应与设备硬件类别的模块类别包括:机舱门机构、升降与对中平台、换电模块、电池槽充电模块以及电力设备中的至少一种。
其中,对应于日志等级维度的等级类别包括不重要等级类别、轻微等级类别、严重等级类别和极严重等级类别。基于前述的等级类别所确定的权重等级包括:与不重要等级类别相适应的低等级、与轻微等级类别相适应的次低等级、与严重等级类别相适应的中等级,以及与极严重等级类别相适应的高等级。需要说明的是,等级类别对权重等级的影响力呈逐级递增的趋势,举例说明,针对与不重要等级类别相适应的低等级,可取值为1;针对与轻微等级类别相适应的次低等级,可取值为2等等,即权重等级越高则其取值则越大。可以理解的是,权重等级的取值越大,则代表相应的第一日志数据的重要程度越高,在基于后续的执行步骤进行第一日志数据缓存的时候,针对权重等级取值越大的数据对象,则会优先进行缓存。
上述实施例中,通过类型类别到模块类别,至上而下的进行特征的纵向关联。根据等级类别对所属不同类型和日志模块的日志进行横向关联。基于日志间在横向和纵向两个方向的关系,进行日志之间的关联度的确定,有效的提高了诊断精确度。
步骤S204,针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储。
其中,各双向链表分别属于不同的模块类别,各双向链表的结构相同,具体可参考图3做进一步的理解。基于图3可知,本实施例中使用到的双向链表均具有头指针-head和尾指针-tail,且双向链表中的各个节点一方面通过一个prev-前驱指针对排列在相应节点之前的前一节点进行指向,基于图3可知,在进行前一节点的指向时,其具体指向的位置为:前一节点的next-后继指针。另一方面通过一个next-后继指针对排列在该节点之后的后一节点进行指向,基于图3可知,在进行后一节点的指向时,其具体指向的位置为:后一节点的prev指针。需要说明的是,每个双向链表均具备两个功能:1、执行“set(key,value)”命令,基于该命令将封装所得的链表节点-(key,value)插入相应的双向链表中。2、执行“get(key)”命令,基于该命令将返回相应的键key所对应的值,且,每执行一次ge命令则意味着对应链表节点的键值将被访问到。
具体地,由计算机设备通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储,包括:针对待存储的第一日志数据,基于第一日志数据所属的模块类别,确定相应的目标双向链表;分别对每条第一日志数据进行哈希处理,并且将处理所得的哈希值作为键,将第一日志数据作为值,通过键值对的方式分别将每条第一日志数据封装成一个链表节点;基于各链表节点所属的权重等级,确定各链表节点的缓存顺序;基于缓存顺序,依次将封装得到的多个链表节点分别插入到相应的节点归属区域中,以进行第一日志数据的存储。
在其中一个实施例中,由计算机设备基于获取到的一条第一日志数据进行异常特种种类的提取,举例来说,当提取到的类型类别为“hardware”、模块类别为“stationary”、等级类别为“critical”以及权重等级为4时,意味着当前获取到的这条日志数据将会被缓存到模块类别为“stationary”的双向链表,且所属权重等级为4的目标节点归属区域。另外,在缓存日志数据前,还需要进行日志的封装。在一个实施例中,可以使用哈希算法对该日志数据进行哈希处理,并将所得的哈希值作为键,以该日志数据本体作为值,通过键值对的形式进行链表节点的封装,当前,也可以采用其他的方式进行日志的封装,本申请实施例对比不作限定。举例来说,若上述的待缓存日志经过哈希处理后所得的哈希值为“2283E4B8C80E46A2072C65078F89B281”,则日志封装后的数据结构可参考如下形式:
Figure BDA0002836980410000101
Figure BDA0002836980410000111
上述实施例中,基于哈希处理方式,将获取到的每条第一日志数据封装成一个相应的链表节点,进行日志数据的缓存,相比于直接进行第一日志数据的缓存,有效的节约了缓存资源。
步骤S206,针对每一个双向链表,根据与等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储。
其中,根据权重等级将链表分区,基于前述的等级类别的分类情况,针对每个双向链表,将其整个缓存结构划分为四个节点归属区域,当有新链表节点需要插入到相应的节点归属区域时,只能从该节点归属区域的顶端进行插入。
步骤S208,获取待诊断异常原因的第二日志数据,确定第二日志数据所属的多项目标异常特征种类,以第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索。
其中,特征匹配检索表示基于第二日志数据所属的异常特征种类,在相应的双向链表进行目标第一日志的检索匹配。
具体地,由计算机设备在相应的双向链表中进行特征匹配检索(实施流程具体可参考图4),包括:确定第二日志数据所属的多个异常特征种类;以第二日志数据为匹配对象,将第二日志数据与相应双向链表中的各项第一日志数据进行匹配检索,当第二日志数据所属的多个异常特征种类,与第一日志数据所属的多个异常特征种类中存在任一异常特征种类相同时,则确定匹配成功,将匹配到的第一日志数据作为目标日志数据;输出多条匹配到的目标第一日志数据,且基于目标第一日志数据进行诊断结果的确定。
在其中一个实施例中,由计算机设备获取巡检设备输出的用于记录电力设备运行状态的第二日志数据,针对获取到的每条第二日志数据,将进行异常特征种类的解析。假设解析得到的相应异常特征种类对应的特征值为A,则判断特征值A是否记录在异常诊断规则表中。需要说明的是,异常诊断规则表定义了异常原因的诊断规则,该异常诊断规则表具体定义为:“A->B->C->D”形式。基于上述的诊断规则,可以确定的是,当确定特征值A记录与异常诊断规则表时,则进一步从异常诊断规则表中匹配出与特征值A相关联的特征值B、C和D。接着,由计算机设备基于匹配到的特征值B、C和D在相应的双向链表中进行目标第一日志数据的匹配检索。其中,诊断成功的判断依据是参照异常诊断规则表中定义的诊断规则,通常需要联立多条目标第一日志数据得以确定。因此,无论基于特征值B是否能够从相应的双向链表中匹配到目标第一日志数据,都将基于特征值C和D进行目标第一日志数据的匹配检索,而,只要特征值B、C和D中至少有一个特征值能够到匹配到符合要求的联立日志,则判断诊断成功。
上述实施例中,基于设备日志的特征及权重等级计算规则,对日志进行特征归类与权重的区分,为目标第一日志数据的检索提供了基于特征与权重值的快速扫描渠道,使得在诊断异常原因时,可以通过特征或异常权重等级两种方式快速联立对比诊断,有效的提高了诊断的效率。
步骤S210,当从双向链表中匹配到对应目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
其中,在进行目标第一日志数据的扫描时,分为快速扫描和全扫描,其中快速扫描包括了两种检索匹配方式:一、根据权重等级进行检索匹配,由于双向链表中已经根据权重等级划分好了相应的节点归属区域,当前匹配方式下,会优先基于相应节点归属区域中存储的权重等级高的第一日志进行联立对比诊断,且,在无法匹配到目标第一日志时,则逐级自上而下联立诊断异常原因(上述的执行方案具体可参考图4)。二、根据确定的特征值进行检索匹配,通过在双向链表中筛选出与上述特征值相同的目标第一日志数据,进行异常原因的联立诊断。若通过快速扫描仍然无法诊断出异常原因,再执行全扫描。在执行全扫描的方式下,通过将双向链表中存储的第一日志数据所对应的目标特征值与待匹配的特征值进行联立对比诊断。需要说明的是,全扫描相比快速扫描的开销要大得多,但因为其限制了双向链表的大小,因此,全扫描的代价也是可控的。当前通过结合快速扫描与全扫描两种扫描方式,有效的保证诊断准确率。
上述日志异常原因诊断方法中,基于日志模块下的不同模块类别,对第一日志数据进行分类存储,利于日志之间的关联度的确定。且基于权重等级进行分区存储,使得所属同类特征以及同等权重等级的第一日志数据高度聚合。当存在需要进行诊断的第二日志数据时,根据第二日志数据所属的多项目标异常特征种类,在相应的双向链表中进行特征匹配检索,由于所属同类特征以及同等权重等级的第一日志数据都聚合在同一个节点归属区域,因此基于匹配到的对应目标异常特征种类,能够快速的从相应的双向链表中快速匹配到相关联的目标第一日志数据,有效的提高了异常原因诊断的命中率。
在一个实施例中,如图5所示,步骤A包括:
步骤S502,将封装得到的多个链表节点作为目标节点。
其中,可以使用哈希算法对该日志数据进行哈希处理,并将所得的哈希值作为键,以该日志数据本体作为值,通过键值对的形式进行链表节点的封装,前述的步骤S204中已对此做了详细的说明,本申请实施例对此不作具体的解释说明。目标节点即为后续将进一步缓存到双向链表中的节点。
步骤S504,针对各个目标双向链表,判断目标双向链表的长度是否大于预设的长度阈值。
其中,若目标双向链表的长度是否大于预设的长度阈值,则认为目标双向链表的缓存空间已满,当前需要释放一定的缓存空间,得以实现对目标节点的缓存。
步骤S506,当目标双向链表的长度大于预设的长度阈值时,则先删除位于目标双向链表末尾的链表节点,再从相应的节点归属区域的顶端进行目标节点的插入。
具体的,位于目标双向链表末尾的链表节点代表该节点所对应的数据对象,最近一段时间没有被访问到,且,将来被访问到的可能性也较小。由计算机设备基于LRU算法-页面置换算法的核心思想,在需要释放缓存空间时,最先删除位于目标双向链表末尾的链表节点。
在其中一个实施例中,在插入目标节点到目标双向链表之前,判断检查目标双向链表L是否大于等于预设的长度阈值K,若是,则需要先删除位于目标双向链表末尾的链表节点,且,删除节点时需要进行平滑断链操作。
上述实施例中,基于LRU算法-页面置换算法的核心思想进行缓存空间的释放,避免无用数据占用内容空间,节约了缓存资源。
步骤S508,当目标双向链表的长度小于等于预设的长度阈值时,判断目标双向链表中是否存在与目标节点的键、值均相同的冗余节点;当存在冗余节点时,则将冗余节点的存储位置提升到相应节点归属区域的顶端;当不存在冗余节点时,则直接从相应节点归属区域的顶端进行目标节点的插入。
具体的,由计算机设备进行冗余节点的采集,且,针对目标双向链表中存在的冗余节点进行节点提升,改变该冗余节点的指针指向,将其从相应的节点归属区域的顶端插入,进而完成节点提升。
在其中一个实施例中,当目标双向链表L小于预设的长度阈值K时,则先判断链表中是否存在相同节点,若存在相同节点S,则执行“get(key)”命令,提升节点S。其中,先将节点S的前驱指针prev指向前一节点的后驱指针next,再将S的后驱指针next指向前驱指针prev,最后将S在其对应权重等级的区域的顶端插入,完成节点提升。若不存在相同节点,则将目标节点在其对应权重等级的区域的顶端插入,假如上述目标节点M需要插入到权重等级为4的节点归属区域的顶端时,只需要将该节点归属区域的head指针对应的首节点H的前驱指针prev指向该目标节点M的后驱指针next,将该目标节点M的前驱指针prev指向head指针,即完成目标节点M的顶端插入。
上述实施例中,基于对冗余节点的节点提升,使得被访问过的节点数据与最近未被访问过的节点数据在缓存顺序上,进行有效的区分,提高了缓存效率,并进一步避免冗余结果占用过多的内容空间,节约了缓存资源。
本实施例中,一方面通过基于LRU算法-页面置换算法的核心思想进行缓存空间的释放,能够避免无用数据占用内容空间,节约了缓存资源。另一方面,基于对识别到的冗余节点进行节点提升,能够使得被访问过的节点数据与最近未被访问过的节点数据在缓存顺序上,进行有效的区分,提高了缓存效率。
应该理解的是,虽然图2-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-5中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种日志异常原因诊断装置600,包括:数据获取模块601、链表构建模块602、分区模块603、检索模块604和输出模块605,其中:
数据获取模块601,用于获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别。
链表构建模块602,用于针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储。
分区模块603,用于针对每一个双向链表,根据与等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储。
检索模块604,用于获取待诊断异常原因的第二日志数据,确定第二日志数据所属的多项目标异常特征种类,以第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索。
输出模块605,用于当从双向链表中匹配到对应目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
在一个实施例中,链表构建模块602,还用于针对待存储的第一日志数据,基于第一日志数据所属的模块类别,确定相应的目标双向链表;分别对每条第一日志数据进行哈希处理,并且将处理所得的哈希值作为键,将第一日志数据作为值,通过键值对的方式分别将每条第一日志数据封装成一个链表节点;基于各链表节点所属的权重等级,确定各链表节点的缓存顺序;基于缓存顺序,依次将封装得到的多个链表节点分别插入到相应的节点归属区域中,以进行第一日志数据的存储。
在一个实施例中,链表构建模块602,还用于将封装得到的多个链表节点作为目标节点;针对各个目标双向链表,判断目标双向链表的长度是否大于预设的长度阈值;当目标双向链表的长度大于预设的长度阈值时,则先删除位于目标双向链表末尾的链表节点,再从相应的节点归属区域的顶端进行目标节点的插入;当目标双向链表的长度小于等于预设的长度阈值时,判断目标双向链表中是否存在与目标节点的键、值均相同的冗余节点;当存在冗余节点时,则将冗余节点的存储位置提升到相应节点归属区域的顶端;当不存在冗余节点时,则直接从相应节点归属区域的顶端进行目标节点的插入。
在一个实施例中,检索模块604,还用于确定第二日志数据所属的多个异常特征种类;以第二日志数据为匹配对象,将第二日志数据与相应双向链表中的各项第一日志数据进行匹配检索,当第二日志数据所属的多个异常特征种类,与第一日志数据所属的多个异常特征种类中存在任一异常特征种类相同时,则确定匹配成功,将匹配到的第一日志数据作为目标日志数据;输出多条匹配到的目标第一日志数据,且基于目标第一日志数据进行诊断结果的确定。
在一个实施例中,该日志异常原因诊断装置600还包括更新模块606,其中:
更新模块606,用于针对获取到的每条第一日志数据,确定第一日志数据的生成时间、缓存到相应双向链表的缓存时间以及所属的初始权重等级;根据生成时间以及缓存时间,确定第一日志数据的缓存顺序;基于缓存顺序与初始权重等级之间的相对增减变化规律,对每条第一日志数据所属的初始权重等级进行更新;基于更新所得的目标权重等级,确定每条第一日志数据所属的节点归属区域。
上述日志异常原因诊断装置,基于日志模块下的不同模块类别,对第一日志数据进行分类存储,利于日志之间的关联度的确定。且基于权重等级进行分区存储,使得所属同类特征以及同等权重等级的第一日志数据高度聚合。当存在需要进行诊断的第二日志数据时,根据第二日志数据所属的多项目标异常特征种类,在相应的双向链表中进行特征匹配检索,由于所属同类特征以及同等权重等级的第一日志数据都聚合在同一个节点归属区域,因此基于匹配到的对应目标异常特征种类,能够快速的从相应的双向链表中快速匹配到相关联的目标第一日志数据,有效的提高了异常原因诊断的命中率。
关于日志异常原因诊断装置的具体限定可以参见上文中对于日志异常原因诊断方法的限定,在此不再赘述。上述日志异常原因诊断装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储第一日志数据、双向链表、第二日志数据以及诊断结果数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种日志异常原因诊断方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别;针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储;针对每一个双向链表,根据与等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储;获取待诊断异常原因的第二日志数据,确定第二日志数据所属的多项目标异常特征种类,以第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;当从双向链表中匹配到对应目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:等级类别包括不重要等级类别、轻微等级类别、严重等级类别和极严重等级类别;权重等级,包括:与不重要等级类别相适应的低等级、与轻微等级类别相适应的次低等级、与严重等级类别相适应的中等级,以及与极严重等级类别相适应的高等级。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:针对待存储的第一日志数据,基于第一日志数据所属的模块类别,确定相应的目标双向链表;分别对每条第一日志数据进行哈希处理,并且将处理所得的哈希值作为键,将第一日志数据作为值,通过键值对的方式分别将每条第一日志数据封装成一个链表节点;基于各链表节点所属的权重等级,确定各链表节点的缓存顺序;基于缓存顺序,依次将封装得到的多个链表节点分别插入到相应的节点归属区域中,以进行第一日志数据的存储。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:将封装得到的多个链表节点作为目标节点;针对各个目标双向链表,判断目标双向链表的长度是否大于预设的长度阈值;当目标双向链表的长度大于预设的长度阈值时,则先删除位于目标双向链表末尾的链表节点,再从相应的节点归属区域的顶端进行目标节点的插入;当目标双向链表的长度小于等于预设的长度阈值时,判断目标双向链表中是否存在与目标节点的键、值均相同的冗余节点;当存在冗余节点时,则将冗余节点的存储位置提升到相应节点归属区域的顶端;当不存在冗余节点时,则直接从相应节点归属区域的顶端进行目标节点的插入。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:确定第二日志数据所属的多个异常特征种类;以第二日志数据为匹配对象,将第二日志数据与相应双向链表中的各项第一日志数据进行匹配检索,当第二日志数据所属的多个异常特征种类,与第一日志数据所属的多个异常特征种类中存在任一异常特征种类相同时,则确定匹配成功,将匹配到的第一日志数据作为目标日志数据;输出多条匹配到的目标第一日志数据,且基于目标第一日志数据进行诊断结果的确定。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:第一日志数据和第二日志数据均为无人机在电力巡检区域进行电力设备巡检的过程中,记录电力设备运行状态的数据;在日志模块维度的级别之上还存在日志类型维度;对应于日志类型维度的类型类别包括:设备软件类别以及设备硬件类别;对应与设备软件类别的模块类别包括:后台服务、客户端、流媒体服务以及地面站中的至少一种;对应与设备硬件类别的模块类别包括:机舱门机构、升降与对中平台、换电模块、电池槽充电模块以及电力设备中的至少一种。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:针对获取到的每条第一日志数据,确定第一日志数据的生成时间、缓存到相应双向链表的缓存时间以及所属的初始权重等级;根据生成时间以及缓存时间,确定第一日志数据的缓存顺序;基于缓存顺序与初始权重等级之间的相对增减变化规律,对每条第一日志数据所属的初始权重等级进行更新;基于更新所得的目标权重等级,确定每条第一日志数据所属的节点归属区域。
上述计算机设备,基于日志模块下的不同模块类别,对第一日志数据进行分类存储,利于日志之间的关联度的确定。且基于权重等级进行分区存储,使得所属同类特征以及同等权重等级的第一日志数据高度聚合。当存在需要进行诊断的第二日志数据时,根据第二日志数据所属的多项目标异常特征种类,在相应的双向链表中进行特征匹配检索,由于所属同类特征以及同等权重等级的第一日志数据都聚合在同一个节点归属区域,因此基于匹配到的对应目标异常特征种类,能够快速的从相应的双向链表中快速匹配到相关联的目标第一日志数据,有效的提高了异常原因诊断的命中率。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别;针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储;针对每一个双向链表,根据与等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储;获取待诊断异常原因的第二日志数据,确定第二日志数据所属的多项目标异常特征种类,以第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;当从双向链表中匹配到对应目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:等级类别包括不重要等级类别、轻微等级类别、严重等级类别和极严重等级类别;权重等级,包括:与不重要等级类别相适应的低等级、与轻微等级类别相适应的次低等级、与严重等级类别相适应的中等级,以及与极严重等级类别相适应的高等级。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:针对待存储的第一日志数据,基于第一日志数据所属的模块类别,确定相应的目标双向链表;分别对每条第一日志数据进行哈希处理,并且将处理所得的哈希值作为键,将第一日志数据作为值,通过键值对的方式分别将每条第一日志数据封装成一个链表节点;基于各链表节点所属的权重等级,确定各链表节点的缓存顺序;基于缓存顺序,依次将封装得到的多个链表节点分别插入到相应的节点归属区域中,以进行第一日志数据的存储。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将封装得到的多个链表节点作为目标节点;针对各个目标双向链表,判断目标双向链表的长度是否大于预设的长度阈值;当目标双向链表的长度大于预设的长度阈值时,则先删除位于目标双向链表末尾的链表节点,再从相应的节点归属区域的顶端进行目标节点的插入;当目标双向链表的长度小于等于预设的长度阈值时,判断目标双向链表中是否存在与目标节点的键、值均相同的冗余节点;当存在冗余节点时,则将冗余节点的存储位置提升到相应节点归属区域的顶端;当不存在冗余节点时,则直接从相应节点归属区域的顶端进行目标节点的插入。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:确定第二日志数据所属的多个异常特征种类;以第二日志数据为匹配对象,将第二日志数据与相应双向链表中的各项第一日志数据进行匹配检索,当第二日志数据所属的多个异常特征种类,与第一日志数据所属的多个异常特征种类中存在任一异常特征种类相同时,则确定匹配成功,将匹配到的第一日志数据作为目标日志数据;输出多条匹配到的目标第一日志数据,且基于目标第一日志数据进行诊断结果的确定。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:第一日志数据和第二日志数据均为无人机在电力巡检区域进行电力设备巡检的过程中,记录电力设备运行状态的数据;在日志模块维度的级别之上还存在日志类型维度;对应于日志类型维度的类型类别包括:设备软件类别以及设备硬件类别;对应与设备软件类别的模块类别包括:后台服务、客户端、流媒体服务以及地面站中的至少一种;对应与设备硬件类别的模块类别包括:机舱门机构、升降与对中平台、换电模块、电池槽充电模块以及电力设备中的至少一种。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:针对获取到的每条第一日志数据,确定第一日志数据的生成时间、缓存到相应双向链表的缓存时间以及所属的初始权重等级;根据生成时间以及缓存时间,确定第一日志数据的缓存顺序;基于缓存顺序与初始权重等级之间的相对增减变化规律,对每条第一日志数据所属的初始权重等级进行更新;基于更新所得的目标权重等级,确定每条第一日志数据所属的节点归属区域。
上述存储介质,基于日志模块下的不同模块类别,对第一日志数据进行分类存储,利于日志之间的关联度的确定。且基于权重等级进行分区存储,使得所属同类特征以及同等权重等级的第一日志数据高度聚合。当存在需要进行诊断的第二日志数据时,根据第二日志数据所属的多项目标异常特征种类,在相应的双向链表中进行特征匹配检索,由于所属同类特征以及同等权重等级的第一日志数据都聚合在同一个节点归属区域,因此基于匹配到的对应目标异常特征种类,能够快速的从相应的双向链表中快速匹配到相关联的目标第一日志数据,有效的提高了异常原因诊断的命中率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种日志异常原因诊断方法,其特征在于,所述方法包括:
获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;所述异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别;
针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储;
针对每一个双向链表,根据与所述等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对所述双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储;
获取待诊断异常原因的第二日志数据,确定所述第二日志数据所属的多项目标异常特征种类,以所述第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;
当从所述双向链表中匹配到对应所述目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
2.根据权利要求1所述的方法,其特征在于,所述等级类别包括不重要等级类别、轻微等级类别、严重等级类别和极严重等级类别;
所述权重等级,包括:与所述不重要等级类别相适应的低等级、与所述轻微等级类别相适应的次低等级、与所述严重等级类别相适应的中等级,以及与所述极严重等级类别相适应的高等级。
3.根据权利要求1所述的方法,其特征在于,所述通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储,包括:
针对待存储的第一日志数据,基于所述第一日志数据所属的模块类别,确定相应的目标双向链表;
分别对每条第一日志数据进行哈希处理,并且将处理所得的哈希值作为键,将所述第一日志数据作为值,通过键值对的方式分别将每条第一日志数据封装成一个链表节点;
基于各链表节点所属的权重等级,确定各链表节点的缓存顺序;
基于所述缓存顺序,依次将封装得到的多个链表节点分别插入到相应的节点归属区域中,以进行第一日志数据的存储。
4.根据权利要求3所述的方法,其特征在于,在基于所述缓存顺序,依次将封装得到的多个链表节点分别插入到相应的节点归属区域中,以进行第一日志数据的存储之前,所述方法还包括:
将封装得到的多个链表节点作为目标节点;
针对各个目标双向链表,判断所述目标双向链表的长度是否大于预设的长度阈值;
当所述目标双向链表的长度大于预设的长度阈值时,则先删除位于所述目标双向链表末尾的链表节点,再从相应的节点归属区域的顶端进行目标节点的插入;
当所述目标双向链表的长度小于等于预设的长度阈值时,判断所述目标双向链表中是否存在与所述目标节点的键、值均相同的冗余节点;当存在冗余节点时,则将所述冗余节点的存储位置提升到相应节点归属区域的顶端;当不存在冗余节点时,则直接从相应节点归属区域的顶端进行目标节点的插入。
5.根据权利要求1所述的方法,其特征在于,所述获取待诊断异常原因的第二日志数据,确定所述第二日志数据所属的多项目标异常特征种类,以所述第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索,包括:
确定所述第二日志数据所属的多个异常特征种类;
以所述第二日志数据为匹配对象,将所述第二日志数据与相应双向链表中的各项第一日志数据进行匹配检索,当所述第二日志数据所属的多个异常特征种类,与所述第一日志数据所属的多个异常特征种类中存在任一异常特征种类相同时,则确定匹配成功,将匹配到的第一日志数据作为目标日志数据;
输出多条匹配到的目标第一日志数据,且基于所述目标第一日志数据进行诊断结果的确定。
6.根据权利要求1所述的方法,其特征在于,所述第一日志数据和第二日志数据均为无人机在电力巡检区域进行电力设备巡检的过程中,记录电力设备运行状态的数据;在所述日志模块维度的级别之上还存在日志类型维度;
对应于所述日志类型维度的类型类别包括:设备软件类别以及设备硬件类别;
对应与所述设备软件类别的模块类别包括:后台服务、客户端、流媒体服务以及地面站中的至少一种;
对应与所述设备硬件类别的模块类别包括:机舱门机构、升降与对中平台、换电模块、电池槽充电模块以及电力设备中的至少一种。
7.根据权利要求1至6任意一项所述的方法,其特征在于,所述方法还包括:
针对获取到的每条第一日志数据,确定所述第一日志数据的生成时间、缓存到相应双向链表的缓存时间以及所属的初始权重等级;
根据所述生成时间以及缓存时间,确定所述第一日志数据的缓存顺序;
基于所述缓存顺序与初始权重等级之间的相对增减变化规律,对每条第一日志数据所属的初始权重等级进行更新;
基于更新所得的目标权重等级,确定每条第一日志数据所属的节点归属区域。
8.一种日志异常原因诊断装置,其特征在于,所述装置包括:
数据获取模块,用于获取多条已完成异常原因诊断的第一日志数据,确定每条第一日志数据所属的异常特征种类;所述异常特征种类包括对应于日志模块维度的模块类别、对应于日志信息维度的信息类别、以及对应于日志等级维度的等级类别;
链表构建模块,用于针对在日志模块维度下的不同模块类别,分别构建相应的双向链表,通过构建所得的多个双向链表对所属不同模块类别的第一日志数据进行分类存储;
分区模块,用于针对每一个双向链表,根据与所述等级类别相适应的权重等级,按照由高到低的分布顺序,自上而下的对所述双向链表进行划分,得到多段子链表;其中,每一段子链表作为一个节点归属区域,通过划分所得的多个节点归属区域对所属相应权重等级的第一日志数据进行分区存储;
检索模块,用于获取待诊断异常原因的第二日志数据,确定所述第二日志数据所属的多项目标异常特征种类,以所述第二日志数据为匹配对象,在相应的双向链表中进行特征匹配检索;
输出模块,用于当从所述双向链表中匹配到对应所述目标异常特征种类的目标第一日志数据时,将匹配到的目标第一日志数据作为诊断结果进行输出。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202011473857.7A 2020-12-15 2020-12-15 日志异常原因诊断方法、装置、计算机设备和存储介质 Active CN112463542B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011473857.7A CN112463542B (zh) 2020-12-15 2020-12-15 日志异常原因诊断方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011473857.7A CN112463542B (zh) 2020-12-15 2020-12-15 日志异常原因诊断方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN112463542A true CN112463542A (zh) 2021-03-09
CN112463542B CN112463542B (zh) 2023-06-02

Family

ID=74804249

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011473857.7A Active CN112463542B (zh) 2020-12-15 2020-12-15 日志异常原因诊断方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN112463542B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114756591A (zh) * 2022-04-15 2022-07-15 成都卓讯智安科技有限公司 一种基于双向链表的数据筛选方法和系统
CN115237875A (zh) * 2022-09-26 2022-10-25 成都卫士通信息产业股份有限公司 一种日志数据处理方法、装置、设备、存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105357071A (zh) * 2015-11-12 2016-02-24 成都科来软件有限公司 一种网络复杂流量识别方法及识别系统
US20180011892A1 (en) * 2015-01-29 2018-01-11 Hewlett Packard Enterprise Development Lp Foster twin data structure
CN107733709A (zh) * 2017-10-17 2018-02-23 北京奇虎科技有限公司 数据存储方法、装置及电子设备
CN107862064A (zh) * 2017-11-16 2018-03-30 北京航空航天大学 一个基于nvm的高性能、可扩展的轻量级文件系统
CN108268485A (zh) * 2016-12-30 2018-07-10 亿阳安全技术有限公司 一种日志实时分析方法及系统
CN109901978A (zh) * 2017-12-08 2019-06-18 航天信息股份有限公司 一种Hadoop日志无损压缩方法和系统
CN111061697A (zh) * 2019-12-25 2020-04-24 中国联合网络通信集团有限公司 日志数据处理方法、装置、电子设备及存储介质
CN111651595A (zh) * 2020-05-25 2020-09-11 泰康保险集团股份有限公司 一种异常日志处理方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180011892A1 (en) * 2015-01-29 2018-01-11 Hewlett Packard Enterprise Development Lp Foster twin data structure
CN105357071A (zh) * 2015-11-12 2016-02-24 成都科来软件有限公司 一种网络复杂流量识别方法及识别系统
CN108268485A (zh) * 2016-12-30 2018-07-10 亿阳安全技术有限公司 一种日志实时分析方法及系统
CN107733709A (zh) * 2017-10-17 2018-02-23 北京奇虎科技有限公司 数据存储方法、装置及电子设备
CN107862064A (zh) * 2017-11-16 2018-03-30 北京航空航天大学 一个基于nvm的高性能、可扩展的轻量级文件系统
CN109901978A (zh) * 2017-12-08 2019-06-18 航天信息股份有限公司 一种Hadoop日志无损压缩方法和系统
CN111061697A (zh) * 2019-12-25 2020-04-24 中国联合网络通信集团有限公司 日志数据处理方法、装置、电子设备及存储介质
CN111651595A (zh) * 2020-05-25 2020-09-11 泰康保险集团股份有限公司 一种异常日志处理方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
韩永;姚念民;蔡绍滨;: "一种树链双访表结构的快速查找算法", 小型微型计算机系统 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114756591A (zh) * 2022-04-15 2022-07-15 成都卓讯智安科技有限公司 一种基于双向链表的数据筛选方法和系统
CN115237875A (zh) * 2022-09-26 2022-10-25 成都卫士通信息产业股份有限公司 一种日志数据处理方法、装置、设备、存储介质
CN115237875B (zh) * 2022-09-26 2023-01-24 成都卫士通信息产业股份有限公司 一种日志数据处理方法、装置、设备、存储介质

Also Published As

Publication number Publication date
CN112463542B (zh) 2023-06-02

Similar Documents

Publication Publication Date Title
CN112463542A (zh) 日志异常原因诊断方法、装置、计算机设备和存储介质
CN111860872A (zh) 用于异常检测的系统和方法
WO2023272851A1 (zh) 异常数据检测方法、装置、设备及存储介质
CN115272983B (zh) 基于图像识别的接触网悬挂状态监测方法及系统
US20220383157A1 (en) Interpretable machine learning for data at scale
CN110855477A (zh) 链路日志监控方法、装置、计算机设备和存储介质
US11729268B2 (en) Computer-implemented method, system, and storage medium for prefetching in a distributed graph architecture
CN113326177A (zh) 一种指标异常检测方法、装置、设备及存储介质
CN115687674A (zh) 服务于智慧云服务平台的大数据需求分析方法及系统
CN110162689B (zh) 信息推送方法、装置、计算机设备和存储介质
EP4252151A1 (en) Data source correlation techniques for machine learning and convolutional neural models
CN112508137B (zh) 变压器异常检测方法、装置、计算机设备和存储介质
EP3835975A1 (en) Data transmission method and device
CN117235088A (zh) 一种存储系统的缓存更新方法、装置、设备、介质及平台
CN116415989A (zh) 千兆潜在客户预测方法、装置、计算机设备及存储介质
CN115905323A (zh) 适用于多种搜索策略的搜索方法、装置、设备及介质
CN116302383A (zh) 分布式异构数据采集方法、系统、计算机设备及存储介质
Montañés et al. A wrapper approach with support vector machines for text categorization
CN114422600A (zh) 基于云存储的文件调度系统及基于云存储的文件调度方法
CN111586155A (zh) 车辆数据处理方法和系统
KR20220099487A (ko) 멀티에이전트 강화학습에서 호기심 기반 탐색 및 경험 데이터 우선순위 결정 방법
Manokaran et al. A Novel Set Theory Rule based Hybrid Feature Selection Techniques for Efficient Anomaly Detection System in IoT Edge
CN113177224B (zh) 基于区块链的数据密封方法、装置、设备和存储介质
CN115794892B (zh) 基于分层缓存的搜索方法、装置、设备及介质
CN113704964B (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
GR01 Patent grant