CN114860680A - 日志分析处理方法及其装置、设备、介质 - Google Patents
日志分析处理方法及其装置、设备、介质 Download PDFInfo
- Publication number
- CN114860680A CN114860680A CN202210508650.1A CN202210508650A CN114860680A CN 114860680 A CN114860680 A CN 114860680A CN 202210508650 A CN202210508650 A CN 202210508650A CN 114860680 A CN114860680 A CN 114860680A
- Authority
- CN
- China
- Prior art keywords
- log
- abnormal
- field
- module
- 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
Images
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/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/226—Validation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开一种日志分析处理方法及其装置、设备、介质,所述方法包括:响应由用户端推送的应用异常指令,获取该应用异常指令所对应的目标异常类型及应用日志;从日志模型池中查询出所述目标异常类型相对应的目标日志分析模型,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块;调用所述目标日志分析模型,采用该目标日志分析模型包含的树形模块链对所述应用日志进行日志分析,以获取相对应的异常日志。本申请自动化分析为开发人员分析应用日志,快速地确定出异常问题所在,及时答复用户并且修复该异常,节省解决异常的时间及人工成本。
Description
技术领域
本申请涉及应用异常领域,尤其涉及一种日志分析处理方法,此外还涉及该方法相应的装置、设备以及非易失性存储介质。
背景技术
现有的互联网平台向平台用户提供平台应用程序,以便用户使用其平台应用程序浏览其平台中所拥有的平台内容及使用相关的在线服务,但平台用户在使用应用程序时可能遇到相应的异常问题导致其无法正常使用相应的在线服务,例如,用户使用网络直播应用程序时,可能遇到无法推送公屏消息或无法浏览直播间的直播流的异常问题,用户在遇到异常问题后,可使用平台的异常上报服务,将自身遇到的异常问题及应用日志上报至平台方,由平台方的人员通过应用日志确定导致异常的事件。
但现如今的平台方接收到应用日志后,需要开发人员手动分析繁杂的应用日志,确定导致异常问题的原因,以及时答复用户及针对性地进行异常修复,但对于一些重复的异常问题,开发人员每次都需要耗费大量地时间去手动分析应用日志,异常修复效率较慢,且不同的开发人员对于业务的熟悉度不一致,当用户上报不同的异常时,不熟悉该异常的开发人员往往难以确定异常问题所在,导致不能及时答复用户及快速地修复异常。
鉴于现有的应用异常修复所存在的问题,本申请人出于解决该问题的考虑做出相应的探索。
发明内容
本申请的目的在于满足用户需求而提供一种日志分析处理方法,此外还涉及该方法相应的装置、设备、非易失性存储介质以及计算机程序产品。
为实现本申请的目的,采用如下技术方案:
适应本申请的目的而提出的一种日志分析处理方法,包括如下步骤:
响应由用户端推送的应用异常指令,获取该应用异常指令所对应的目标异常类型及应用日志;
从日志模型池中查询出所述目标异常类型相对应的目标日志分析模型,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块;
调用所述目标日志分析模型,采用该目标日志分析模型包含的树形模块链对所述应用日志进行日志分析,以获取相对应的异常日志。
进一步的实施例中,所述响应由用户端推送的应用异常指令,获取该应用异常指令所指向的目标异常类型及应用日志的步骤中,包括如下步骤:
解析所述应用异常指令,获取该应用异常指令中包含的用户异常文本;
调用训练至收敛的异常类型识别模型,根据所述用户异常文本的语义特征,确定所述用户异常文本与各异常类型所对应的语义相似概率值;
将所述语义相似概率值最大的异常类型作为所述用户异常文本所对应的目标异常类型。
进一步的实施例中,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
遍历所述应用日志,查询出所述应用日志中的目标开始标识及目标结束标识;
截取各所述目标开始标识与所述目标结束标识之间的日志字段,将该日志字段作为所述目标日志分析模型所对应的待分析日志。
进一步的实施例中,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
调用日志过滤器,根据日志过滤器的匹配表达式,遍历待分析日志,匹配出待分析日志中具有所述匹配表达式所包含的字符的日志字段;
调用预设的结果匹配规则,匹配出所述日志字段中包含的结果字段;
获取所述结果匹配规则对应的翻译输出字段,将该翻译输出字符中所对应的替换字段替换为所述结果字段,并将完成替换后的翻译输出字段对应存储至异常日志中。
进一步的实施例中,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
调用预设的检错字段匹配规则,获取待分析日志中具有检错关键字符的目标检错日志字段,且获取该目标检错日志字段中包含的检错关注字段存储至关注结果池中;
调用所述检错字符匹配规则对应的标准结果池及检错关系池,判断所述关注结果池中当前校验的检错关注字段与所述标准结果池中对应的标准关注字段是否符合所述检错关系池中对应的关系标识所表征的关系;
当任一检错关注字段与其对应的标准关注字段不符合所述检错关系池中对应的关系标识所表征的关系时,则所述检错关注字段所属的检错日志字段作为异常日志字段对应存储至异常日志中。
进一步的实施例中,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
调用预设的正输出匹配规则,检测待分析日志中是否存在与所述正输出匹配规则的正则表达式相对应的日志字段,若不存在,则将所述正输出匹配规则所对应的错误字段作为异常日志字段对应存储至异常日志中;
调用预设的负输出匹配规则,检测待分析日志中是否存在与所述负输出匹配规则的正则表达式相对应的日志字段,若存在,则将所述日志字段作为异常日志字段对应存储至异常日志中。
进一步的实施例中,所述根据所述目标日志分析模型包含的树形模型链对所述应用日志进行日志分析,以获取相对应的异常日志的步骤中,包括如下步骤:
调用所述目标日志分析模型中的根节点,筛选出所述应用日志中的待分析日志;
调用所述根节点下的第一树形模块链,对所述待分析日志进行日志分析,且将分析过程中所匹配出的日志字段存储至异常日志中;
若所述待分析日志存在所述第一树形模块链所对应的异常日志字段,则将该异常日志字段存储至所述异常日志中,若不存在所述异常日志字段,则回溯至所述根节点,以调用下一树形模块链对所述待分析日志进行日志分析。
适应本申请的目的而提出的一种日志分析处理装置,其包括:
异常指令响应模块,用于响应由用户端推送的应用异常指令,获取该应用异常指令所对应的目标异常类型及应用日志;
分析模型查询模块,用于从日志模型池中查询出所述目标异常类型相对应的目标日志分析模型,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块;
异常日志获取模块,用于调用所述目标日志分析模型,采用该目标日志分析模型包含的树形模块链对所述应用日志进行日志分析,以获取相对应的异常日志。
进一步的实施例中,所述异常指令响应模块包括:
异常指令解析子模块,用于解析所述应用异常指令,获取该应用异常指令中包含的用户异常文本;
类型相似确定子模块,用于调用训练至收敛的异常类型识别模型,根据所述用户异常文本的语义特征,确定所述用户异常文本与各异常类型所对应的语义相似概率值;
目标异常类型确定子模块,用于将所述语义相似概率值最大的异常类型作为所述用户异常文本所对应的目标异常类型。
进一步的实施例中,所述分析模型查询模块包括:
目标标识查询子模块,用于遍历所述应用日志,查询出所述应用日志中的目标开始标识及目标结束标识;
待分析日志获取子模块,用于截取各所述目标开始标识与所述目标结束标识之间的日志字段,将该日志字段作为所述目标日志分析模型所对应的待分析日志。
较佳的实施例中,所述分析模型查询模块还包括:
过滤器调用子模块,用于调用日志过滤器,根据日志过滤器的匹配表达式,遍历待分析日志,匹配出待分析日志中具有所述匹配表达式所包含的字符的日志字段;
结果字段匹配子模块,用于调用预设的结果匹配规则,匹配出所述日志字段中包含的结果字段;
翻译输出字段替换子模块,用于获取所述结果匹配规则对应的翻译输出字段,将该翻译输出字符中所对应的替换字段替换为所述结果字段,并将完成替换后的翻译输出字段对应存储至异常日志中。
较佳的实施例中,所述分析模型查询模块还包括:
检错日志字段获取子模块,用于调用预设的检错字段匹配规则,获取待分析日志中具有检错关键字符的目标检错日志字段,且获取该目标检错日志字段中包含的检错关注字段存储至关注结果池中;
检错日志字段校验子模块,用于调用所述检错字符匹配规则对应的标准结果池及检错关系池,判断所述关注结果池中当前校验的检错关注字段与所述标准结果池中对应的标准关注字段是否符合所述检错关系池中对应的关系标识所表征的关系;
异常日志字段确定子模块,用于当任一检错关注字段与其对应的标准关注字段不符合所述检错关系池中对应的关系标识所表征的关系时,则所述检错关注字段所属的检错日志字段作为异常日志字段对应存储至异常日志中。
较佳的实施例中,所述分析模型查询模块还包括:
正输出匹配检测子模块,用于调用预设的正输出匹配规则,检测待分析日志中是否存在与所述正输出匹配规则的正则表达式相对应的日志字段,若不存在,则将所述正输出匹配规则所对应的错误字段作为异常日志字段对应存储至异常日志中;
负输出匹配检测子模块,用于调用预设的负输出匹配规则,检测待分析日志中是否存在与所述负输出匹配规则的正则表达式相对应的日志字段,若存在,则将所述日志字段作为异常日志字段对应存储至异常日志中。
进一步的实施例中,所述异常日志获取模块包括:
待分析日志筛选子模块,用于调用所述目标日志分析模型中的根节点,筛选出所述应用日志中的待分析日志;
待分析日志解析子模块,用于调用所述根节点下的第一树形模块链,对所述待分析日志进行日志分析,且将分析过程中所匹配出的日志字段存储至异常日志中;
模块链遍历子模块,用于若所述待分析日志存在所述第一树形模块链所对应的异常日志字段,则将该异常日志字段存储至所述异常日志中,若不存在所述异常日志字段,则回溯至所述根节点,以调用下一树形模块链对所述待分析日志进行日志分析。
为解决上述技术问题本申请实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述所述日志分析处理方法的步骤。
为解决上述技术问题本申请实施例还提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述日志分析处理方法的步骤。
为解决上述技术问题本申请实施例还提供一种计算机程序产品,包括计算机程序及计算机指令,该计算机程序及计算机指令被处理器执行时,使得所述处理器执行上述所述日志分析处理方法的步骤。
相对于现有技术,本申请的优势如下:
申请可自动化分析用户上报的应用日志,快速地为开发人员确定出导致异常发生的原因,服务器接收到用户上报的异常类型及相关的应用日志后,可调用与该异常类型相对应的日志分析模型,调用该日志分析模型中包含的树形模块链对应用日志进行日志分析,以通过树形模块链各自的日志分析策略确定出应用日志中导致异常的原因相关异常日志字段,并将该些异常日志字段作为异常日志进行记录或输出,以便开发人员快速地确定导致异常的原因,即时答复用户及针对异常日志中的相关异常日志字段为用户修复其所触发的异常,可以理解,本申请可节约开发反复查异常反馈的人力,对于不熟悉应用日志的客服人员也可以根据异常日志中异常日志字段的相关中文翻译结果快速确定异常问题所在以及时答复用户,且便于测试人员根据异常日志排除异常问题进行相关测试,以配合开发人员全面修复异常。
其次,本申请的裁剪模块、翻译模块及检错模块并不局限于单一应用程序的日志分析,开发人员可复用裁剪模块、翻译模块及检错模块配置相应的树形模块链以开发新的日志分析模块,进而应用于其他应用程序或应用于其他异常类型,无需开发新的日志分析模块进行日志分析,大量地节省开发人员的开发时间,提升应用程序的异常修复效率以全面增强应用程序的鲁棒性。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为实施本申请的技术方案相关的一种典型的网络部署架构示意图;
图2为本申请的日志分析处理方法的典型实施例的流程示意图;
图3为本申请中关于确定应用异常指令所对应的异常类型的具体实施方式所形成的流程示意图;
图4为本申请中关于裁剪模块截取待分析日志的具体实施方式所形成的流程示意图;
图5为本申请中关于翻译模块翻译日志字段的具体实施方式所形成的流程示意图;
图6为本申请中关于检错模块进行关注字段关系对比校验的具体实施方式所形成的流程示意图;
图7为本申请中关于正负检错模块进行正负校验的具体实施方式所形成的流程示意图;
图8为本申请中关于日志分析模块进行日志分析的具体实施方式所形成的流程示意图;
图9为本申请的日志分析处理装置的典型实施例的原理框图;
图10为本申请一个实施例的计算机设备的基本结构框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(PersonalCommunications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global PositioningSystem,全球定位系统)接收器;传统膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的传统膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本申请所称的“服务器”、“客户端”、“工作节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的电子设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。
需要指出的是,本申请所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本申请的网络部署方式的实施方式。
请参阅图1,本申请相关技术方案实施时所需的硬件基础可按图中所示的架构进行部署。本申请所称服务器80部署在云端,作为一个在线服务器,其可以负责进一步连接起相关数据服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备例如图中所示的智能手机81和个人计算机82或者第三方服务器(未图示)提供服务。所述的智能手机和个人计算机均可通过公知的网络接入方式接入互联网,与云端的服务器80建立数据通信链路,以便运行所述服务器所提供的服务相关的终端应用程序。
对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
所述的应用程序,是指运行于服务器或终端设备上的应用程序,这一应用程序采用编程的方式实现了本申请的相关技术方案,其程序代码可被以计算机可执行指令的形式保存于计算机能识别的非易失性存储介质中,并被中央处理器调入内存中运行,通过该应用程序在计算机的运行而构造出本申请的相关装置。
对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
本领域技术人员对此应当知晓:本申请的各种方法,虽然基于相同的概念而进行描述而使其彼此间呈现共通性,但是,除非特别说明,否则这些方法都是可以独立执行的。同理,对于本申请所揭示的各个实施例而言,均基于同一发明构思而提出,因此,对于相同表述的概念,以及尽管概念表述不同但仅是为了方便而适当变换的概念,应被等同理解。
请参阅图2,本申请的一种日志分析处理方法,在其典型实施例中,其包括如下步骤:
步骤S11,响应由用户端推送的应用异常指令,获取该应用异常指令所对应的目标异常类型及应用日志:
服务器接收由平台中的用户端推送的所述应用异常指令,以响应该应用异常指令,获取该应用异常指令所调用的目标异常类型及应用日志。
所述的应用异常指令一般由用户端在运行应用程序时发生应用异常时所触发推送,例如,当用户端在运行网络直播的应用程序时,在进入某一直播间页面后无法推送公屏聊天消息时,该用户端可通过向服务器推送表征在直播间中无法推送公屏聊天消息的应用异常指令。
所述应用异常指令中一般指向对应的异常类型,如上述的在直播间中无法推送公屏聊天消息的应用异常指令,该应用异常指令所对应的异常类型将为无法推送公屏聊天消息,该异常类型一般可有推送上述应用异常指令的用户端在相应的异常上报控件中选定,或由上述用户端在异常上报控件中自定义编辑相应的异常文本,服务器根据该异常文本进行关键字匹配,确定该异常文本所对应的异常类型,例如,用户端所编辑的异常文本为“在直播间中无法推送公屏聊天消息”,服务器接收该异常文本后,将根据该异常文本中的关键字,如关键字:“公屏聊天消息”、“推送”、“直播间”,在异常类型池中查询出具有该些关键字的异常类型,该异常类型一般可为“无法推送公屏聊天消息”,将该异常类型将作为上述应用异常指令所对应的目标异常类型。
一种实施例中,服务器获取由用户端编辑的所述异常文本后,可调用训练至收敛的异常类型识别模型,所述异常类型识别模型为神经网络模型,以提取所述异常文本的语义特征,根据该语义特征确定所述用户异常文本与异常类型池中各异常类型所对应的语义相似概率值,进而将所述语义相似概率值最大的异常类型作为所述用户异常文本所对应的目标异常类型。
所述的应用日志中实时记录用户端运行应用程序时所执行的操作以及执行操作时所触发响应的相关事件,且同时记录应用程序在触发响应相应事件时应用程序中各控件及组件的运行状态,以便服务器在后续自动化分析该应用日志,确定出触发用户端推送的应用异常指令所对应的异常类型所对应的用户操作、相关程序事件及组件控件的运行状态等异常触发事件,进而针对该些异常触发事件修复用户端所触发的应用异常。
步骤S12,从日志模型池中查询出所述目标异常类型相对应的目标日志分析模型,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块:
服务器获取所述应用异常指令所对应的目标异常类型后,将从所述日志模型池中查询出与该目标异常类型相对应的目标日志分析模型,所述日志模型池中存储着多个日志分析模型,且各所述日志分析模型具有表征其所对应的异常类型的异常类型标识,以便服务器通过查询所述日志模型池中具有所述目标异常类型的异常类型标识的日志分析模型,将该日志分析模型作为所述目标日志分析模型。
所述的日志分析模型中具有多个所述树形模块链,且所述树形模块链由一个或多个裁剪模块、翻译模块或检错模块组合而成,所述日志分析模块通过其具有的树形模块链分析所述应用日志,其通过所述裁剪模块对应用日志进行裁剪以获取所述应用日志中需进行分析的待分析日志,通过所述翻译模块匹配出对应的日志字段进行翻译处理以便测试或修复人员浏览,通过检错模块检测出所述应用日志中触发所述目标异常类型的日志字段作为异常日志字段进行重点记录等。
所述的日志分析模型通过其具有的多个所述树形模块链对所述应用日志进行不同的日志分析处理,以便所述日志分析模型通过多条树形模块链对所述应用日志的日志字段进行分析,分析出应用程序在运行时造成所述日志分析所对应的异常类型所触发的事件,例如,对于异常类型为“无法输出公屏聊天消息”的日志分析模块,其一般具有用于分析用户端成功推送公屏聊天消息的树状模型链,用于分析推送的公屏聊天消息是否已输出至公屏聊天控件的树形模块链,以及用于分析公屏聊天控件的运行状态是否正常的树形模块链,进而从不同的角度分析所述应用日志并构成相应的异常日志进行输出,进而解决用户端运行应用程序所触发的异常。
需要注意,所述日志分析模块的树形模块链中的节点一般由一个或多个不同类型的模块所组成,使树形模块链中的节点综合分析所述应用日志,例如,在应用分析推送的公屏聊天消息是否已输出至公屏聊天控件的树形模块链,该树形模块链中一般将包含判断是否收到服务器推送的公屏聊天消息的第一节点,判断用户端进行公屏聊天消息推送的第二节点、判断用户推送的公屏聊天消息是否正常处理的第三节点、以及判断在收到服务器推送的公屏聊天消息的情况下公屏聊天消息是否执行输出逻辑的第四节点,可以理解,不同的节点的日志分析逻辑一般无法仅依赖一个模块进行执行,因此,树形模块链的节点一般将由多个模块进行组合以构建相应的日志分析逻辑。
所述的裁剪模块一般将遍历所述应用日志,查询出应用日志中的目标开始标识及目标结束标识,所述目标开始标识及目标结束标识一般与所述裁剪模块所属的日志分析模型的异常类型相对应,例如,当日志分析模型对应的异常类型为:“无法输出直播流”时,该日志分析模型的裁剪模块中具有目标开始标识为“join channel success(进入直播间成功)”及目标结束标识为“leave channel (离开直播间)”,以便所述日志分析模型通过所述裁剪模块截取所述应用日志中的进入直播间与离开直播间之间的日志字段,将该日志字段作为所述日志分析模型所对应的待分析日志。
一种实施例中,所述裁剪模块具有不同执行顺序的裁剪标识,例如,当日志分析模块的异常类型为“无法输出直播流”时,其裁剪模块中具有第一执行的裁剪标识为“appstarted(开启应用程序)”,第二执行的裁剪标识一般为裁剪标识对,即开始标识及结束标识,其中,所述开始标识为“join channel success (进入直播间成功)”,所述结束标识为“leave channel(离开直播间)”,则所述裁剪模块将首先截取出所述应用日志中开启应用程序后的所有日志字段,进而截取出进入直播间与离开直播间之间的日志字段,以将该日志字段作为所述日志分析模型所对应的待分析日志。
所述的翻译模块一般具有对应的日志过滤器,以获取所述应用日志中该翻译模块需进行翻译处理的日志字段,且具有对应的结果匹配规则,以获取通过所述日志过滤器获取的日志字段中的结果字段,进而将其所具有的翻译输出字段中对应的替换字段替换为所述结果字段后进行记录,具体的,所述翻译模块
调用所述日志过滤器,根据该日志过滤器的匹配表达式,遍历由所述裁剪模块所截取的所述待分析日志,匹配出该待分析日志中具有所述匹配表达式所包含的字符的日志字段,以调用预设的所述结果匹配规则,匹配出所述日志字段中包含的结果字段,进而获取所述结果匹配规则对应的翻译输出字段,将该翻译输出字符中所对应的替换字段替换为所述结果字段,并将完成替换后的翻译输出字段对应存储至异常日志中。
一种实施例中,所述的翻译模块具有预设的翻译文本字段,该类型的翻译模块通过其日志过滤器中的匹配表达式匹配出所述应用日志中具有该匹配表达式所包含的字符的日志字段,而该日志字段与的翻译文本将为其预设的翻译文本字段,例如,翻译模块的匹配表达式匹配出的日志字段为“ChannelChat Message”,该翻译模块预设的翻译文本字段为“公屏聊天消息”,则所述日志字段“ChannelChat Message”的翻译文本为翻译文本字段的“公屏聊天消息”。
所述的检错模块一般通过预设的检错字段匹配规则获取应用日志中相应的日志字段进行检错处理,具体的,所述检错模块通过所述检错字段匹配规则获取由所述裁剪模块所截取的待分析日志中具有检错关键字符的目标检错日志字段,且获取该目标检错日志字段中包含的检错关注字段存储至关注结果池中,以调用所述检错字符匹配规则对应的标准结果池及检错关系池,判断所述关注结果池中各所述检错关注字段与所述标准结果池中对应的标准关注字段是否符合所述检错关系池中对应的关系标识所表征的关系,即进行标准校验,当任一所述检错关注字段与其对应的标准关注字段不符合所述检错关系池中对应的关系标识所表征的关系时,则表征该检错关注字段所属的检错日志字段表征了应用程序触发所存在的异常,则该检错关注字段所属的检错日志字段作为异常日志字段对应存储至异常日志中,以便后续进行输出展示给开发人员观看,使开发人员可针对该异常日志字段所表征的应用程序的异常进行修复。
一种实施例中,所述检错模块还包括正输出检错模块及负输出检错模块,其中,所述正输出检错模块用于检错应用日志中是否存在表征其正常运行的日志字段,相对应,所述负输出检错模块应用检错应用日志中是否存在表征其异常运行的日志字段,具体的,所述正输出检错模块调用预设的正输出匹配规则,检测待分析日志中是否存在与所述正输出匹配规则的正则表达式相对应的日志字段,若不存在,则将所述正输出匹配规则所对应预设的错误字段作为异常日志字段对应存储至异常日志中;对应的,所述负输出检错模块调用预设的负输出匹配规则,检测待分析日志中是否存在与所述负输出匹配规则的正则表达式相对应的日志字段,若存在,则将所述日志字段作为异常日志字段对应存储至异常日志中;其中,所述错误字段一般为预先设置的翻译文本,以便开发人员查看。
步骤S13,调用所述目标日志分析模型,采用该目标日志分析模型包含的树形模块链对所述应用日志进行日志分析,以获取相对应的异常日志。
服务器查询出对应的目标日志分析模块后,将采用该目标日志分析模块包含的各个树形模块链对所述应用日志进行日志分析,以获取分析所述应用日志所生成的所述异常日志。
所述的异常日志中具有通过所述目标日志分析模块一个或多个树形模块链分析所述应用日志所截取或生成的日志字段,该些日志字段中包含截取至所述应用日志中的原始日志字段及该原始日志字段对应的翻译文本字段,所述翻译文本字段一般通过所述翻译模块所生成,以及通过所述检错模块检测所述应用日志中表征应用程序在执行与所述应用异常指令所对应的异常类型相关的异常事件的异常日志字段,且所述异常日志字段及其对应的翻译文本字段一般会进行文本复制,以在所述异常日志进行输出时可重点输出所述异常日志字段及其对应的翻译文本。
所述异常日志中存储的各日志字段将具有对应的时间标识,该些日志字段在所述异常日志中将根据其具有的时间标识进行降序或升序排序,且该些时间标识一般与所述应用日志中关联的日志字段相对应,即所述日志分析模块在对所述应用日志进行分析时,其通过树形模块链从所述应用日志中匹配出的日志字段将同时记录该日志字段在所述应用日志中对应的执行时间,并将该执行时间作为匹配出的日志字段所对应的时间标识记录至所述异常日志中。
服务器通过调用所述目标日志分析模型中的根节点,通过该根节点具有的裁剪模块截取出所述应用日志中的待分析日志,该根节点为所述目标日志分析模块中各树形模块链相链接的节点,进而调用所述根节点下的第一树形模块链,对所述待分析日志进行日志分析,且将分析过程中所匹配出的日志字段存储至异常日志中,且若所述待分析日志存在所述第一树形模块链所对应的异常日志字段,则将该异常日志字段存储至所述异常日志中,此时,将停止调用所述目标日志分析模块对所述应用日志进行日志分析,将所述异常日志进行输出,若不存在所述第一树形模块链所对应的异常日志字段,则回溯至所述根节点,以调用下一树形模块链对所述待分析日志进行日志分析,以此类推,完成针对所述目标异常类型进行所述应用日志的日志分析,生成对应的所述异常日志进行输出或存储至对应的数据库中,当然,在分析出所述待分析日志中存在任一树形模块链所对应的异常日志字段后,也可继续执行下一树形模块链对所述待分析日志进行处理,以分析出应用程序在运行过程中引起所述目标异常类型所存在的异常事件,便于开发人员对应用程序进行全面修复。
通过本方法的典型实施例可知,本方法可自动化分析用户上报的应用日志,快速地为开发人员确定出导致异常发生的原因,服务器接收到用户上报的异常类型及相关的应用日志后,可调用与该异常类型相对应的日志分析模型,调用该日志分析模型中包含的树形模块链对应用日志进行日志分析,以通过树形模块链各自的日志分析策略确定出应用日志中导致异常的原因相关异常日志字段,并将该些异常日志字段作为异常日志进行记录或输出,以便开发人员快速地确定导致异常的原因,即时答复用户及针对异常日志中的相关异常日志字段为用户修复其所触发的异常,可以理解,本方法可节约开发反复查异常反馈的人力,对于不熟悉应用日志的客服人员也可以根据异常日志中异常日志字段的相关中文翻译结果快速确定异常问题所在以及时答复用户,且便于测试人员根据异常日志排除异常问题进行相关测试,以配合开发人员全面修复异常。
其次,本方法的裁剪模块、翻译模块及检错模块并不局限于单一应用程序的日志分析,开发人员可复用裁剪模块、翻译模块及检错模块配置相应的树形模块链以开发新的日志分析模块,进而应用于其他应用程序或应用于其他异常类型,无需开发新的日志分析模块进行日志分析,大量地节省开发人员的开发时间,提升应用程序的异常修复效率以全面增强应用程序的鲁棒性。
以上的典型实施例及其变化实施例充分揭示了本申请的日志分析处理方法的实施方案,但是,仍可通过对一些技术手段的变换和扩增而演绎出该方法的多种变化实施例,如下概要说明其他实施例:
一种实施例中,请参考图3,所述响应由用户端推送的应用异常指令,获取该应用异常指令所指向的目标异常类型及应用日志的步骤中,包括如下步骤:
步骤S111,解析所述应用异常指令,获取该应用异常指令中包含的用户异常文本:
服务器接收由用户端推送的所述应用异常指令,解析该应用异常指令,获取该应用异常指令中包含的由用户所编辑的所述用户异常文本。
步骤S112,调用训练至收敛的异常类型识别模型,根据所述用户异常文本的语义特征,确定所述用户异常文本与各异常类型所对应的语义相似概率值:
服务器调用训练至收敛的所述异常类型识别模型,该异常类型识别模型为神经网络模型,一般具有相对应的卷积层或全连接层计算所述用户异常文本的语义特征与各异常类型的语义相似概率值计算,所述用户异常文本的语义特征一般为相应的特征向量或特征矩阵,所述异常类型识别模型通过将所述用户同学文本的语义特征输入至相应的卷积层或全连接层中计算其与各异常类型的语义相似,并借助归一化算法确定出所述用户异常文本与各异常类型所对应的语义相似概率值,所述各异常类型的语义相似概率值的总和一般为1。
步骤S113,将所述语义相似概率值最大的异常类型作为所述用户异常文本所对应的目标异常类型:
服务器将与所述用户异常文本的语义相似概率值最大的异常类型作为目标语义类型。
本实施例中,用户可编辑其在运行应用程序时所遇到的异常,以交由服务器的异常类型识别模型进行异常类型识别,进而提升用户在使用异常上报服务时的便利性及自由度。
一种实施例中,请参考图4,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
步骤S121,遍历所述应用日志,查询出所述应用日志中的目标开始标识及目标结束标识:
所述裁剪模块的裁剪逻辑一般与其所属的日志分析模型的异常类型相对应,具体的,所述裁剪模块中的目标开始标识及目标结束标识将与其所属的日志分析模型的异常类型相对应,例如,当日志分析模型对应的异常类型为:“无法输出直播流”时,该日志分析模型的裁剪模块中具有目标开始标识为“join channel success(进入直播间成功)”及目标结束标识为“leave channel(离开直播间)”,以便所述日志分析模型通过所述裁剪模块截取所述应用日志中的进入直播间与离开直播间之间的日志字段,将该日志字段作为所述日志分析模型所对应的待分析日志。
一种实施例中,所述裁剪模块具有不同执行顺序的裁剪标识,例如,当日志分析模块的异常类型为“无法输出直播流”时,其裁剪模块中具有第一执行的裁剪标识为“appstarted(开启应用程序)”,第二执行的裁剪标识一般为裁剪标识对,即开始标识及结束标识,其中,所述开始标识为“join channel success (进入直播间成功)”,所述结束标识为“leave channel(离开直播间)”,则所述裁剪模块将首先截取出所述应用日志中开启应用程序后的所有日志字段,进而截取出进入直播间与离开直播间之间的日志字段,以将该日志字段作为所述日志分析模型所对应的待分析日志。
步骤S122,截取各所述目标开始标识与所述目标结束标识之间的日志字段,将该日志字段作为所述目标日志分析模型所对应的待分析日志:
所属裁剪模块截取出所述应用日志中所述目标开始标识与所述目标结束标识之间的日志字段,并将该日志字段作为其所属的日志分析模型所对应的待分析日志,以便后续该日志分析模型通过自身所具有的树形模块链对所述待分析日志进行日志分析。
本实施例中,裁剪模块通过截取出应用日志中与需处理的异常类型所对应的开始标识及结束标识中的日志字段,以将该日志字段作为日志分析模型所需进行日志分析的日志字段,有效地提升日志分析模型的分析效率。
一种实施例中,请参考图5,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
步骤S121’,调用日志过滤器,根据日志过滤器的匹配表达式,遍历待分析日志,匹配出待分析日志中具有所述匹配表达式所包含的字符的日志字段:
翻译模块调用其自身的日志过滤器,遍历由所述裁剪模块所截取出的待分析日志,匹配出该待分析日志中具有所述匹配表达式所包含的字符的日志字段,该日志字段将作为所述翻译模型的目标翻译日志字段。
步骤S122’,调用预设的结果匹配规则,匹配出所述日志字段中包含的结果字段:
所述翻译模块匹配出具有所述匹配表达式所包含的字符的日志字段后,将调用原始的结果匹配规则的子模式匹配规则,匹配出所述日志字段中包含的结果字段,例如,所述日志字段为“chatTable frame is{(0,-34),(277,244)}”时,匹配出的结果字段将为((0,-34),(277,244))。
步骤S123’,获取所述结果匹配规则对应的翻译输出字段,将该翻译输出字符中所对应的替换字段替换为所述结果字段,并将完成替换后的翻译输出字段对应存储至异常日志中:
所述翻译模块匹配出所述结果字段后,将所述结果匹配规则对应的翻译输出字段中的替换字段替换为所述结果字段,例如,当所述翻译输出字段为公屏frame{%S},所述结果字段为((0,-34),(277,244))时,则完成替换的所述翻译输出字段为公屏frame{(0,-34),(277,244)}。
本实施例中,翻译模块通过匹配出对应的目标翻译日志字段后,再使用子模式匹配出目标翻译日志字段中的结果字段以替换预设的翻译输出字段中的替换字段的替换,进而将完成替换翻译的翻译输出字段存储至异常日志中,翻译效率较高,无需借助其他的翻译工具进行翻译,且具有较高地辨识度,提升开发人员浏览异常日志时的浏览体验。
一种实施例中,请参考图6,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
步骤S121”,调用预设的检错字段匹配规则,获取待分析日志中具有检错关键字符的目标检错日志字段,且获取该目标检错日志字段中包含的检错关注字段存储至关注结果池中:
检错模块调用预设的所述检错字段匹配规则,获取待分析日志中具有检错关键字符的目标检错日志字段,且将该目标检错日志字段中包含的检错关注字段存储至所述关注结果池中,例如,当所述检错模块匹配出的目标检错日志字段为“[main-thread][ChannelChat]-[ChannelCore onSendChatResult:]code:7”,则“code:7”中的7为检错关注字段,该字段将存储至所述关注结果池中。
步骤S122”,调用所述检错字符匹配规则对应的标准结果池及检错关系池,判断所述关注结果池中当前校验的检错关注字段与所述标准结果池中对应的标准关注字段是否符合所述检错关系池中对应的关系标识所表征的关系:
所述表征结果池中存储着一个或多个用于校验对应的检错日志字段中包含的检错关注字段是否为异常字段的标准关注字段,即存储着用于校验所述关注结果池中存储的检错关注字段是否为异常字段的标准关注字段,相对应,所述检错关系池中存储着用于校验所述检错关注字段满足对应的所述标准关注字段的关系的关系标识,例如,当所述关注结果池中存储的检错关注字段组群为[7,900,5],所述标准结果池中存储的标准关注字段组群为[6,900,4],所述检错关系池中存储的关系标识组群为[>=,==,<=]时,则将进行如下关系判断逻辑:
match_result[0]<=result[0],即判断检错关注字段“7”是否大于或等于标准关注字段“6”;
match_result[1]==result[1],即判断检错关注字段“900”是否等于标准关注字段“900”;
match_result[2]<=result[2],即判断检错关注字段“5”是否小于或等于标准关注字段“4”。
步骤S123”,当任一检错关注字段与其对应的标准关注字段不符合所述检错关系池中对应的关系标识所表征的关系时,则所述检错关注字段所属的检错日志字段作为异常日志字段对应存储至异常日志中:
可以理解,步骤S122”所述的关系判断逻辑中检错关注字段“5”并不小于或等于标准关注字段“4”,此时,该检错关注字段“5”所属的检错日志字段作为异常日志字段对应存储至异常日志中。
本实施例中,通过判断检错字段与标准字段是否满足预设的关系,以判断匹配出的检错日志字段是否为异常日志字段,以通过关系对比规则进行自动化地异常日志字段检测及标注输出,快速地识别出日志中所表征的异常。
一种实施例中,请参考图7,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
步骤S121”’,调用预设的正输出匹配规则,检测待分析日志中是否存在与所述正输出匹配规则的正则表达式相对应的日志字段,若不存在,则将所述正输出匹配规则所对应的错误字段作为异常日志字段对应存储至异常日志中:
具有所述正输出匹配规则的检错模块为正输出检错模块,所述正输出检测模块将调用所述正输出匹配规则,检测由所述裁剪模块所截取的待分析日志中是否存在与具有所述正输出匹配规则所指定的字符或字段的日志字段,若存在,则表征所述待分析日志中具有表征其正常运行的日志字段即应用程序通过所述正输出检错模块的检错校验,例如,当所述正输出匹配规则所需匹配的日志字段表征为“已接收公屏聊天消息”,若可从所述待分析日志匹配出该日志字段,则表征应用程序已正常接收公屏聊天消息,若不存在,则表征应用程序无法接收到公屏聊天消息,此时,则将所述正常输出匹配规则中的“未接收公屏聊天消息”作为所述异常日志字段与其检错时间对应存储至所述异常日志中。
步骤S122”’,调用预设的负输出匹配规则,检测待分析日志中是否存在与所述负输出匹配规则的正则表达式相对应的日志字段,若存在,则将所述日志字段作为异常日志字段对应存储至异常日志中:
对应的,具有所述负输出匹配规则的检错模块为正输出检错模块,所述负输出检测模块将调用所述负输出匹配规则,检测由所述裁剪模块所截取的待分析日志中是否存在与具有所述负输出匹配规则所指定的字符或字段的日志字段,若存在,则表征所述待分析日志中具有表征其异常运行的日志字段即应用程序不通过所述负输出检错模块的检错校验,例如,当所述负输出匹配规则所需匹配的日志字段表征为“直播流推流断开”,若可从所述待分析日志匹配出该日志字段,则表征应用程序的直播流推流发生异常,则将所述日志字段“直播流推流断开”作为所述异常日志字段与其检错时间对应存储至所述异常日志中。
本实施例中,通过正负匹配规则查询应用日志中是否存在对应的字段,进而将表征应用程序存在异常的字段存储至异常日志中,可以理解,通过双向检错机制,通过日志快速地检测出应用程序所存在的异常。
一种实施例中,请参考图8,所述根据所述目标日志分析模型包含的树形模型链对所述应用日志进行日志分析,以获取相对应的异常日志的步骤中,包括如下步骤:
步骤S131,调用所述目标日志分析模型中的根节点,筛选出所述应用日志中的待分析日志:
所述的根节点一般为所述裁剪模块,以优先为所述目标日志分析模块中具有的树形模块链筛选出其所需分析的待分析日志,具体的,通过所述裁剪模块中包含的目标开始标识及目标结束标识,查询出所述应用日志中该目标开始标识及目标结束标识之间的所有日志字段作为所述待分析日志。
步骤S132,调用所述根节点下的第一树形模块链,对所述待分析日志进行日志分析,且将分析过程中所匹配出的日志字段存储至异常日志中:
通过所述根节点筛选出所述待分析日志后,将采用所述根节点下的第一树形模块链对所述待分析日志进行日志分析,关于如何设置第一个进行日志分析的树形模块链,本领域技术人员可根据所需解决的异常问题中进行设置,对于最可能触发异常问题的事件一般作为优先检测方向,则为该检测方向所配置的树形模块链将为第一个进行日志分析的所述第一树形模块链,进而提升分析日志的效率。
步骤S133,若所述待分析日志存在所述第一树形模块链所对应的异常日志字段,则将该异常日志字段存储至所述异常日志中,若不存在所述异常日志字段,则回溯至所述根节点,以调用下一树形模块链对所述待分析日志进行日志分析:
若所述待分析日志存在所述第一树形模块链所对应的异常日志字段,则将该异常日志字段存储至所述异常日志中,此时,将停止调用所述目标日志分析模块对所述应用日志进行日志分析,将所述异常日志进行输出,若不存在所述第一树形模块链所对应的异常日志字段,则回溯至所述根节点,以调用下一树形模块链对所述待分析日志进行日志分析,以此类推,完成针对所述目标异常类型进行所述应用日志的日志分析,生成对应的所述异常日志进行输出或存储至对应的数据库中。
本实施例中,通过日志分析模型对应用日志进行日志分析处理,且日志分析模型中通过不同的树形模块链有序地对应用日志进行日志分析,对于应用日志中所反映出的异常问题将进行记录、翻译及输出,以便开发人员可在不浏览复杂的应用日志原始字段的情况下确认引发异常的异常点。
进一步,可以通过将上述各实施例所揭示的方法中的各个步骤进行功能化,构造出本申请的一种日志分析处理装置,按照这一思路,请参阅图9,其中的一个典型实施例中,该装置包括:异常指令响应模块11,用于响应由用户端推送的应用异常指令,获取该应用异常指令所对应的目标异常类型及应用日志;分析模型查询模块12,用于从日志模型池中查询出所述目标异常类型相对应的目标日志分析模型,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块;异常日志获取模块13,用于调用所述目标日志分析模型,采用该目标日志分析模型包含的树形模块链对所述应用日志进行日志分析,以获取相对应的异常日志。
一种实施例中,所述异常指令响应模块11包括:异常指令解析子模块,用于解析所述应用异常指令,获取该应用异常指令中包含的用户异常文本;类型相似确定子模块,用于调用训练至收敛的异常类型识别模型,根据所述用户异常文本的语义特征,确定所述用户异常文本与各异常类型所对应的语义相似概率值;目标异常类型确定子模块,用于将所述语义相似概率值最大的异常类型作为所述用户异常文本所对应的目标异常类型。
一种实施例中,所述分析模型查询模块12包括:目标标识查询子模块,用于遍历所述应用日志,查询出所述应用日志中的目标开始标识及目标结束标识;待分析日志获取子模块,用于截取各所述目标开始标识与所述目标结束标识之间的日志字段,将该日志字段作为所述目标日志分析模型所对应的待分析日志。
另一种实施例中,所述分析模型查询模块12还包括:过滤器调用子模块,用于调用日志过滤器,根据日志过滤器的匹配表达式,遍历待分析日志,匹配出待分析日志中具有所述匹配表达式所包含的字符的日志字段;结果字段匹配子模块,用于调用预设的结果匹配规则,匹配出所述日志字段中包含的结果字段;翻译输出字段替换子模块,用于获取所述结果匹配规则对应的翻译输出字段,将该翻译输出字符中所对应的替换字段替换为所述结果字段,并将完成替换后的翻译输出字段对应存储至异常日志中。
另一种实施例中,所述分析模型查询模块12还包括:检错日志字段获取子模块,用于调用预设的检错字段匹配规则,获取待分析日志中具有检错关键字符的目标检错日志字段,且获取该目标检错日志字段中包含的检错关注字段存储至关注结果池中;检错日志字段校验子模块,用于调用所述检错字符匹配规则对应的标准结果池及检错关系池,判断所述关注结果池中当前校验的检错关注字段与所述标准结果池中对应的标准关注字段是否符合所述检错关系池中对应的关系标识所表征的关系;异常日志字段确定子模块,用于当任一检错关注字段与其对应的标准关注字段不符合所述检错关系池中对应的关系标识所表征的关系时,则所述检错关注字段所属的检错日志字段作为异常日志字段对应存储至异常日志中。
另一种实施例中,所述分析模型查询模块12还包括:正输出匹配检测子模块,用于调用预设的正输出匹配规则,检测待分析日志中是否存在与所述正输出匹配规则的正则表达式相对应的日志字段,若不存在,则将所述正输出匹配规则所对应的错误字段作为异常日志字段对应存储至异常日志中;负输出匹配检测子模块,用于调用预设的负输出匹配规则,检测待分析日志中是否存在与所述负输出匹配规则的正则表达式相对应的日志字段,若存在,则将所述日志字段作为异常日志字段对应存储至异常日志中。
一种实施例中,所述异常日志获取模块13包括:待分析日志筛选子模块,用于调用所述目标日志分析模型中的根节点,筛选出所述应用日志中的待分析日志;待分析日志解析子模块,用于调用所述根节点下的第一树形模块链,对所述待分析日志进行日志分析,且将分析过程中所匹配出的日志字段存储至异常日志中;模块链遍历子模块,用于若所述待分析日志存在所述第一树形模块链所对应的异常日志字段,则将该异常日志字段存储至所述异常日志中,若不存在所述异常日志字段,则回溯至所述根节点,以调用下一树形模块链对所述待分析日志进行日志分析。
为解决上述技术问题,本申请实施例还提供一种计算机设备,用于运行根据所述日志分析处理方法所实现的计算机程序。具体请参阅图10,图10为本实施例计算机设备基本结构框图。
如图10所示,计算机设备的内部结构示意图。该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种日志分析处理方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种日志分析处理方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本实施方式中处理器用于执行本申请的日志分析处理装置中的各个模块/子模块的具体功能,存储器存储有执行上述模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有日志分析处理装置中执行所有模块/子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
本申请还提供一种非易失性存储介质,所述的日志分析处理方法被编写成计算机程序,以计算机可读指令的形式存储于该存储介质中,计算机可读指令被一个或多个处理器执行时,意味着该程序在计算机中的运行,由此使得一个或多个处理器执行上述任一实施例日志分析处理方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
综上所述,本申请自动化分析为开发人员分析应用日志,快速地确定出异常问题所在,及时答复用户并且修复该异常,节省解决异常的时间及人工成本。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种日志分析处理方法,其特征在于,包括如下步骤:
响应由用户端推送的应用异常指令,获取该应用异常指令所对应的目标异常类型及应用日志;
从日志模型池中查询出所述目标异常类型相对应的目标日志分析模型,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块;
调用所述目标日志分析模型,采用该目标日志分析模型包含的树形模块链对所述应用日志进行日志分析,以获取相对应的异常日志。
2.根据权利要求1所述的方法,其特征在于,所述响应由用户端推送的应用异常指令,获取该应用异常指令所指向的目标异常类型及应用日志的步骤中,包括如下步骤:
解析所述应用异常指令,获取该应用异常指令中包含的用户异常文本;
调用训练至收敛的异常类型识别模型,根据所述用户异常文本的语义特征,确定所述用户异常文本与各异常类型所对应的语义相似概率值;
将所述语义相似概率值最大的异常类型作为所述用户异常文本所对应的目标异常类型。
3.根据权利要求1所述的方法,其特征在于,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
遍历所述应用日志,查询出所述应用日志中的目标开始标识及目标结束标识;
截取各所述目标开始标识与所述目标结束标识之间的日志字段,将该日志字段作为所述目标日志分析模型所对应的待分析日志。
4.根据权利要求3所述的方法,其特征在于,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
调用日志过滤器,根据日志过滤器的匹配表达式,遍历待分析日志,匹配出待分析日志中具有所述匹配表达式所包含的字符的日志字段;
调用预设的结果匹配规则,匹配出所述日志字段中包含的结果字段;
获取所述结果匹配规则对应的翻译输出字段,将该翻译输出字符中所对应的替换字段替换为所述结果字段,并将完成替换后的翻译输出字段对应存储至异常日志中。
5.根据权利要求3所述的方法,其特征在于,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
调用预设的检错字段匹配规则,获取待分析日志中具有检错关键字符的目标检错日志字段,且获取该目标检错日志字段中包含的检错关注字段存储至关注结果池中;
调用所述检错字符匹配规则对应的标准结果池及检错关系池,判断所述关注结果池中当前校验的检错关注字段与所述标准结果池中对应的标准关注字段是否符合所述检错关系池中对应的关系标识所表征的关系;
当任一检错关注字段与其对应的标准关注字段不符合所述检错关系池中对应的关系标识所表征的关系时,则所述检错关注字段所属的检错日志字段作为异常日志字段对应存储至异常日志中。
6.根据权利要求3所述的方法,其特征在于,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块的步骤中,包括如下步骤:
调用预设的正输出匹配规则,检测待分析日志中是否存在与所述正输出匹配规则的正则表达式相对应的日志字段,若不存在,则将所述正输出匹配规则所对应的错误字段作为异常日志字段对应存储至异常日志中;
调用预设的负输出匹配规则,检测待分析日志中是否存在与所述负输出匹配规则的正则表达式相对应的日志字段,若存在,则将所述日志字段作为异常日志字段对应存储至异常日志中。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述根据所述目标日志分析模型包含的树形模型链对所述应用日志进行日志分析,以获取相对应的异常日志的步骤中,包括如下步骤:
调用所述目标日志分析模型中的根节点,筛选出所述应用日志中的待分析日志;
调用所述根节点下的第一树形模块链,对所述待分析日志进行日志分析,且将分析过程中所匹配出的日志字段存储至异常日志中;
若所述待分析日志存在所述第一树形模块链所对应的异常日志字段,则将该异常日志字段存储至所述异常日志中,若不存在所述异常日志字段,则回溯至所述根节点,以调用下一树形模块链对所述待分析日志进行日志分析。
8.一种日志分析处理装置,其特征在于,包括:
异常指令响应模块,用于响应由用户端推送的应用异常指令,获取该应用异常指令所对应的目标异常类型及应用日志;
分析模型查询模块,用于从日志模型池中查询出所述目标异常类型相对应的目标日志分析模型,所述日志分析模型中具有多个树形模块链,所述树形模块链中包含裁剪模块、翻译模块或检错模块;
异常日志获取模块,用于调用所述目标日志分析模型,采用该目标日志分析模型包含的树形模块链对所述应用日志进行日志分析,以获取相对应的异常日志。
9.一种电子设备,包括中央处理器和存储器,其特征在于,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行如权利要求1至7中任一项所述的方法的步骤。
10.一种非易失性存储介质,其特征在于,其以计算机可读指令的形式存储有依据权利要求1至7中任意一项所述的方法所实现的计算机程序,该计算机程序被计算机调用运行时,执行该方法所包括的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210508650.1A CN114860680A (zh) | 2022-05-10 | 2022-05-10 | 日志分析处理方法及其装置、设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210508650.1A CN114860680A (zh) | 2022-05-10 | 2022-05-10 | 日志分析处理方法及其装置、设备、介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114860680A true CN114860680A (zh) | 2022-08-05 |
Family
ID=82637009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210508650.1A Pending CN114860680A (zh) | 2022-05-10 | 2022-05-10 | 日志分析处理方法及其装置、设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114860680A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117215902A (zh) * | 2023-11-09 | 2023-12-12 | 北京集度科技有限公司 | 日志解析方法、装置、设备及存储介质 |
-
2022
- 2022-05-10 CN CN202210508650.1A patent/CN114860680A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117215902A (zh) * | 2023-11-09 | 2023-12-12 | 北京集度科技有限公司 | 日志解析方法、装置、设备及存储介质 |
CN117215902B (zh) * | 2023-11-09 | 2024-03-08 | 北京集度科技有限公司 | 日志解析方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111177095B (zh) | 日志分析方法、装置、计算机设备及存储介质 | |
CN111522922B (zh) | 日志信息查询方法、装置、存储介质及计算机设备 | |
JP4886512B2 (ja) | 自動化されたコンピュータサポートのためのシステム及び方法 | |
US7139978B2 (en) | Recording user interaction with an application | |
CN110730246A (zh) | 一种微服务架构下的分布式链路跟踪方法 | |
US20160269423A1 (en) | Methods and systems for malware analysis | |
JP2007516495A (ja) | 適応基準モデルの作成及び使用のためのシステム及び方法 | |
CN111552633A (zh) | 接口的异常调用测试方法、装置、计算机设备及存储介质 | |
CN112650688B (zh) | 自动化回归测试方法、关联设备以及计算机程序产品 | |
CN113760730B (zh) | 一种自动化测试的方法和装置 | |
CN111538659A (zh) | 业务场景的接口测试方法、系统、电子设备和存储介质 | |
CN113778864A (zh) | 一种测试用例的生成方法和装置、电子设备和存储介质 | |
CN114860680A (zh) | 日志分析处理方法及其装置、设备、介质 | |
Kim et al. | Automatic abnormal log detection by analyzing log history for providing debugging insight | |
CN112100070A (zh) | 版本缺陷的检测方法、装置、服务器及存储介质 | |
CN113297078B (zh) | Mock系统与基于mock系统的数据测试方法 | |
US20210165846A1 (en) | Information processing apparatus, information processing system, and method of processing information | |
CN111552648A (zh) | 用于应用的自动验证方法和系统 | |
CN116150766A (zh) | 设备漏洞的修复方法及装置 | |
CN113010339A (zh) | 联机交易测试中故障自动处理方法及装置 | |
CN113569083A (zh) | 基于数据溯源模型的智能音箱本地端数字取证系统及方法 | |
Butt et al. | Towards Ontology Driven Provenance in Scientific Workflow Engine. | |
CN111214831B (zh) | 一种基于游戏引擎的特效编辑方法 | |
CN114816876B (zh) | 一种服务器Redfish接口规范的自动化测试系统 | |
CN115484150B (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 |