掌桥专利:专业的专利平台
掌桥专利
首页

技术领域

本申请涉及互联网技术领域,尤其涉及一种基于日志信息的异常处理方法、设备及存储介质。

背景技术

随着移动互联网系统的蓬勃发展,数据量呈指数形式不断增长,各行业应用分布式系统以确保服务的正常运行,系统中的日志信息异常会影响服务的运行,日志信息的异常处理技术成为一个具有应用前景的方向。

在现有技术中,针对服务的处理的方案一般是通过查看服务器中业务调用链上各个服务及中间件的异常日志,实现对日志信息的异常处理。

由于业务调用链路存在日志过于分散,缺少异常日志分析系统,日志分析没有统一的模板,因此,现有技术服务处理需要维护人员依靠自己的经验,花费大量时间才能达到异常处理的目的,存在日志信息的异常处理效率低的技术问题。

发明内容

本申请提供一种基于日志信息的异常处理方法、设备及存储介质,用以解决异常日志信息处理效率低的技术问题。

第一方面,本申请提供日志信息的异常处理方法,该方法包括:

在分布式系统中的目标对象产生异常时,确定异常类型并采集异常日志信息;

基于异常日志信息进行分组,并为不同分组的异常日志信息添加标签信息;

基于标签信息确定目标异常日志信息和相应的目标处理流程;

基于目标处理流程和异常类型,对目标日志信息对应的异常进行处理。

可选地,基于标签信息确定目标异常日志信息和相应的目标处理流程,包括:

基于标签信息确定第一关键字,基于第一关键字从异常日志信息中确定出目标异常日志信息;

基于目标异常日志信息确定目标处理流程。

可选地,基于目标异常日志信息确定目标处理流程,包括:

基于目标异常日志信息确定第二关键字;

基于第二关键字确定目标处理流程。

可选地,基于第二关键字确定目标处理流程,包括:

基于第二关键字从预设的模板配置表中确定目标模板;

基于目标模板确定目标处理流程。

可选地,在为不同分组的异常日志信息添加标签信息之后,该方法还包括:

基于存储字段将分组后的异常日志信息和相应的标签信息存储至搜索服务器;其中,存储字段包括第一关键字。

可选地,基于第一关键字从异常日志信息中确定出目标异常日志信息,包括:

基于第一关键字从异常日志信息中确定出服务报错日志;

基于服务报错日志对应的交易ID确定下游服务报错信息;

基于下游服务报错信息确定目标异常日志信息。

可选地,在分布式系统中的目标对象产生异常时,确定异常类型并采集异常日志信息,包括:

采集分布式系统中的目标对象的实时日志信息,在实时日志信息指示目标对象产生异常时,确定目标对象的异常类型;

基于异常类型,从实时日志信息中确定出异常日志信息。

第二方面,本申请提供了一种基于日志信息的异常处理设备,包括:

第一处理模块,用于在目标对象产生异常时,确定异常类型并采集异常日志信息;

第二处理模块,用于基于异常日志信息进行分组,并为不同分组的异常日志信息添加标签信息;

确定模块,用于基于标签信息确定目标异常日志信息和相应的目标处理流程;

第三处理模块,用于基于目标处理流程和异常类型,对目标异常日志信息对应的异常进行处理。

可选地,确定模块还用于:

基于标签信息确定第一关键字,基于第一关键字从异常日志信息中确定出目标异常日志信息;

基于目标异常日志信息确定目标处理流程。

可选地,确定模块还用于:

基于目标异常日志信息确定第二关键字;

基于第二关键字确定目标处理流程。

可选地,确定模块还用于:

基于第二关键字从预设的模板配置表中确定目标模板;

基于目标模板确定目标处理流程。

可选地,该设备还用于:

基于存储字段将分组后的异常日志信息和相应的标签信息存储至搜索服务器;其中,存储字段包括第一关键字。

可选地,确定模块还用于:

基于第一关键字从异常日志信息中确定出服务报错日志;

基于服务报错日志对应的交易ID确定下游服务报错信息;

基于下游服务报错信息确定目标异常日志信息。

可选地,第一处理模块还用于:

采集分布式系统中的目标对象的实时日志信息,在实时日志信息指示目标对象产生异常时,确定目标对象的异常类型;

基于异常类型,从实时日志信息中确定出异常日志信息。

第三方面,一种基于日志信息的异常处理设备,包括:处理器和存储器;

存储器存储计算机执行指令;

处理器执行存储器存储的计算机执行指令,使得基于日志信息的异常处理设备执行第一方面中任一项的基于日志信息的异常处理方法。

第四方面,一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如第一方面任一项的基于日志信息的异常处理方法。

本申请提供的基于日志信息的异常处理方法、设备及存储介质,该方法通过在分布式系统中的目标对象产生异常时,确定异常类型并采集异常日志信息;基于异常日志信息进行分组,并为不同分组的异常日志信息添加标签信息;基于标签信息确定目标异常日志信息和相应的目标处理流程;基于目标处理流程和异常类型,对目标日志信息对应的异常进行处理;从而采集分布式系统中目标对象的实时日志信息,在实时日志信息指示目标对象产生异常时,确定目标对象的异常类型,基于异常日志的标签信息中的第一关键字查询到对应的目标日志信息,基于预设的模板配置表根据目标日志信息的第二关键字匹配对应的目标处理流程,执行目标处理流程完成对异常的处理;具有智能化程度高,无需耗费运维人员大量的时间精力的优势,无需运维人员在服务器上查看调用链上各个服务及中间件的报错日志,定位问题报错位置及原因,到对应位置的服务或中间件中查询代码逻辑问题;因此,本申请实现了日志信息的异常处理效率高有益于服务运行的技术效果。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1为现有技术中基于日志信息的异常处理方法流程示意图;

图2为本申请实施例提供的基于日志信息的异常处理方法流程图一;

图3为本申请实施例提供的基于日志信息的异常处理方法流程图二;

图4为本申请实施例提供的基于日志信息的异常处理方法流程图三;

图5为本申请实施例提供的基于日志信息的异常处理设备的结构示意图;

图6为本申请实施例提供的基于日志信息的异常处理设备的硬件结构图。

通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的设备和方法的例子。

图1为现有技术中基于日志信息的异常处理方法流程示意图。如图1所示,在基于日志信息确定程序超时或运行报错时,运维人员需要在服务器上查看调用链上各个服务及中间件的报错日志,定位问题报错位置及原因,从而到对应位置的服务或中间件中查询代码逻辑问题。

由于业务调用链路存在日志过于分散、缺少异常日志分析系统、日志分析没有统一的模板的问题;面对复杂的业务调用链路,维护人员只能依靠自己的经验,花费大量时间才能达到处理异常的目的。因此,现有技术存在基于日志信息异常进行异常处理的处理效率低的技术问题。

本申请提供的基于日志信息的异常处理方法、设备及存储介质,该方法通过在分布式系统中的目标对象产生异常时,确定异常类型并采集异常日志信息;基于异常日志信息进行分组,并为不同分组的异常日志信息添加标签信息;基于标签信息确定目标异常日志信息和相应的目标处理流程;基于目标处理流程和异常类型,对目标日志信息对应的异常进行处理;从而基于目标对象的异常类型,采取不同的处理,异常类型为材料缺失,查询配置的相关数据表的信息是否缺失,异常类型为调用超时,定位超时报错服务及是否存在慢结构化查询语言或大数据量处理,异常类型为中间件异常,定位调用链中异常的中间件并分析报错信息,实现对异常的处理,自动匹配异常类型并做出相应的处理措施,智能化程度高,实现了提高日志信息的异常处理效率有益于服务运行的技术效果。

下面以具体的实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

图2为本申请实施例提供的基于日志信息的异常处理方法流程图一。如图2所示,本实施例提供的基于日志信息的异常处理方法,包括:

S201、在分布式系统中的目标对象产生异常时,确定异常类型并采集异常日志信息;

本实施例中,目标对象包括生产容器、微服务应用和中间件;异常类型包括服务请求中产生的异常、容器异常退出产生的异常、数据库异常和中间件异常;异常日志信息包括请求信息、返回信息、请求时间、返回时间、容器名称、容器内存转储(dump)信息、容器所在主机Ip地址、应用进程信息、数据库异常报错编码、产生异常的结构化查询语言(Structured Query Language,简称SQL)、数据库表锁信息、数据库实例CPU、内存信息、中间件报错信息、中间件部署所在主机Ip地址、所在主机CPU、内存信息。

S202、基于异常日志信息进行分组,并为不同分组的异常日志信息添加标签信息;

本实施例中,标签信息指基于日志信息的异常类型而提取出的对应关键字;标签信息包括根据服务请求异常日志或中间件报错日志提取出模板配置的报错信息关键字、容器异常退出日志提取出内存溢出(Out Of Memory,简称:OOM)等报错原因、数据库异常日志提取出对应的异常编码。

S203、基于标签信息确定目标异常日志信息和相应的目标处理流程;

本实施例中,目标处理流程包括数据缺失类异常处理流程,调用超时类异常处理流程,中间件异常处理流程。

S204、基于目标处理流程和异常类型,对目标日志信息对应的异常进行处理。

本申请提供的基于日志信息的异常处理方法,该方法通过在分布式系统中的目标对象产生异常时,确定异常类型并采集异常日志信息;基于异常日志信息进行分组,并为不同分组的异常日志信息添加标签信息;基于标签信息确定目标异常日志信息和相应的目标处理流程;基于目标处理流程和异常类型,对目标日志信息对应的异常进行处理;从而采集分布式系统中目标对象的实时日志信息,在实时日志信息指示目标对象产生异常时,确定目标对象的异常类型,基于异常日志的标签信息确定目标对象的异常对应的目标处理流程,执行目标处理流程完成对异常的处理;具有智能化程度高,无需耗费运维人员大量的时间精力的优势,无需运维人员在服务器上查看调用链上各个服务及中间件的报错日志,定位问题报错位置及原因,到对应位置的服务或中间件中查询代码逻辑问题;因此,本申请实现了日志信息的异常处理效率高有益于服务运行的技术效果。

图3为本申请实施例提供的基于日志信息的异常处理方法流程图二。如图3所示,本申请实施例提供的基于日志信息的异常处理方法,包括:

S301、采集分布式系统中的目标对象的实时日志信息,在实时日志信息指示目标对象产生异常时,确定目标对象的异常类型;

S302、基于异常类型,从实时日志信息中确定出异常日志信息;

S303、基于异常日志信息进行分组,并为不同分组的异常日志信息添加标签信息;

S304、基于存储字段将分组后的异常日志信息和相应的标签信息存储至搜索服务器(ElasticSearch,简称:ES);其中,存储字段包括第一关键字。

在本实施例中,存储字段主要包括异常信息、请求信息、返回信息、请求时间、返回时间、容器所在主机地址、容器主机名(hostname)、请求交易ID(Transaction ID,简称TXID)、异常信息类别以及异常信息关键字。

S305、基于第一关键字从异常日志信息中确定出服务报错日志,基于服务报错日志对应的交易ID确定下游服务报错信息;

本实施例中,第一关键字包括请求时间字段、请求交易ID字段、请求参数。

S306、基于下游服务报错信息确定目标异常日志信息,基于目标异常日志信息确定第二关键字;

本实施例中,第二关键字指根据传入的请求报错信息中摘取出的对应的关键字。

S307、基于第二关键字从预设的模板配置表中确定目标模板,基于目标模板确定目标处理流程;

S308、基于目标处理流程和异常类型,对目标日志信息对应的异常进行处理。通过S301~S308,可以采集分布式系统中目标对象的实时日志信息,在实时日志信息指示目标对象产生异常时,确定目标对象的异常类型,并匹配对应的异常处理模板,对异常进行处理。

图4为本申请实施例提供的基于日志信息的异常处理方法流程图三。如图4所示,本申请实施例提供的基于日志信息的异常处理方法,包括:

S401、在分布式系统中目标对象产生异常时,采集异常日志;

S402、基于异常日志,对日志数据进行分析整合;

S403、基于分析整合后的异常日志进行存储,写入至搜索服务器;

S404、基于第一关键字读取目标异常日志信息;

S405、发起异常分析;

S406、读取异常分析模板配置;

S407、基于第二关键字和异常分析模板,确定目标处理流程;

S408、基于异常类型和目标处理流程,对异常进行处理;

S409、若为数据缺失类的异常,查询匹配的相关数据表的信息是否缺失;

S410、若为调用超时类的异常,定位超时报错服务及是否存在异常的结构化语言或大数据量处理;

S411、若为中间件异常类的异常,定位调用链中异常的中间件并分析报错信息;

S412、返回异常分析结果。

本申请提供的基于日志信息的异常处理方法,该方法通过在分布式系统中目标对象产生异常时,采集异常日志;基于异常日志,对日志数据进行分析整合;基于分析整合后的异常日志进行存储,写入至搜索服务器;基于第一关键字读取出日志信息;发起异常分析;读取异常分析模板配置;基于第二关键字,匹配异常分析模板;确定异常类型,进行对应处理流程;从而采集分布式系统中目标对象的实时日志信息,在实时日志信息指示目标对象产生异常时,确定目标对象的异常类型,基于异常日志的标签信息中的第一关键字查询到对应的目标日志信息,基于预设的模板配置表根据目标日志信息的第二关键字匹配对应的目标处理流程,执行目标处理流程完成对异常的处理;具有智能化程度高,无需耗费运维人员大量的时间精力的优势,无需运维人员在服务器上查看调用链上各个服务及中间件的报错日志,定位问题报错位置及原因,到对应位置的服务或中间件中查询代码逻辑问题;因此,本申请实现了日志信息的异常处理效率高有益于服务运行的技术效果。

图5为本申请实施例提供的一种基于日志信息的异常处理设备结构示意图。如图5所示,本申请实施例提供的一种基于日志信息的异常处理设备500,包括第一处理模块501、第二处理模块502、确定模块503和第三处理模块504;

第一处理模块501,用于在目标对象产生异常时,确定异常类型并采集异常日志信息;

第二处理模块502,用于基于异常日志信息进行分组,并为不同的分组的异常日志信息添加标签信息;

确定模块503,用于基于标签信息确定目标异常日志信息和响应的目标处理流程;

第三处理模块504,用于基于目标处理流程和异常类型,对目标日志信息对应的异常进行处理。

一种可能的实现方式中,确定模块503还用于:

基于标签信息确定第一关键字,基于第一关键字从异常日志信息中确定出目标异常日志信息;

基于目标异常日志信息确定目标处理流程。

一种可能的实现方式中,确定模块503还用于:

基于目标异常日志信息确定第二关键字;

基于第二关键字确定目标处理流程。

一种可能的实现方式中,确定模块503还用于:

基于第二关键字从预设的模板配置表中确定目标模板;

基于目标模板确定目标处理流程。

一种可能的实现方式中,该设备还用于:

基于存储字段将分组后的异常日志信息和相应的标签信息存储至搜索服务器;其中,存储字段包括第一关键字。

一种可能的实现方式中,确定模块503还用于:

基于第一关键字从异常日志信息中确定出服务报错日志;

基于服务报错日志对应的交易ID确定下游服务报错信息;

基于下游服务报错信息确定目标异常日志信息。

一种可能的实现方式中,第一处理模块501还用于:

采集分布式系统中的目标对象的实时日志信息,在实时日志信息指示目标对象产生异常时,确定目标对象的异常类型;

基于异常类型,从实时日志信息中确定出异常日志信息。

本申请提供的基于日志信息的异常处理设备,通过第一处理模块在目标对象产生异常时,确定异常类型并采集异常日志信息;第二处理模块基于异常日志信息进行分组,并为不同的分组的异常日志信息添加标签信息;确定模块基于标签信息确定目标异常日志信息和响应的目标处理流程;第三处理模块基于目标处理流程和异常类型,对目标日志信息对应的异常进行处理;从而采集分布式系统中目标对象的实时日志信息,在实时日志信息指示目标对象产生异常时,确定目标对象的异常类型,基于异常日志的标签信息确定目标对象的异常对应的目标处理流程,执行目标处理流程完成对异常的处理;具有智能化程度高,无需耗费运维人员大量的时间精力的优势,无需运维人员在服务器上查看调用链上各个服务及中间件的报错日志,定位问题报错位置及原因,到对应位置的服务或中间件中查询代码逻辑问题;因此,本申请实现了日志信息的异常处理效率高有益于服务运行的技术效果。

图6为本申请实施例提供的基于日志信息的异常处理设备的硬件结构图。如图6所示,该基于日志信息的异常处理设备600包括:

处理器601和存储器602;

存储器存储计算机执行指令;

处理器执行存储器602存储的计算机执行指令,使得基于日志信息的异常处理设备执行如上述的基于日志信息的异常处理方法。

应理解,上述处理器601可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital SignalProcessor,简称:DSP)、专用集成电路(英文:Application Specific IntegratedCircuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。存储器602可能包含高速随机存取存储器(英文:Random Access Memory,简称:RAM),也可能还包括非易失性存储器(英文:Non-volatilememory,简称:NVM),例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。

本申请实施例相应还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如上述的基于日志信息的异常处理方法。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。

进一步需要说明的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

应该理解,上述的设备实施例仅是示意性的,本申请的设备还可通过其它的方式实现。例如,上述实施例中单元/模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如,多个单元、模块或组件可以结合,或者可以集成到另一个系统,或一些特征可以忽略或不执行。

另外,若无特别说明,在本申请各个实施例中的各功能单元/模块可以集成在一个单元/模块中,也可以是各个单元/模块单独物理存在,也可以两个或两个以上单元/模块集成在一起。上述集成的单元/模块既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。

集成的单元/模块如果以硬件的形式实现时,该硬件可以是数字电路,模拟电路等等。硬件结构的物理实现包括但不局限于晶体管,忆阻器等等。若无特别说明,处理器可以是任何适当的硬件处理器,比如CPU、GPU、FPGA、DSP和ASIC等等。若无特别说明,存储单元可以是任何适当的磁存储介质或者磁光存储介质,比如,阻变式存储器RRAM(ResistiveRandom Access Memory)、动态随机存取存储器DRAM(Dynamic Random Access Memory)、静态随机存取存储器SRAM(Static Random-Access Memory)、增强动态随机存取存储器EDRAM(Enhanced Dynamic Random Access Memory)、高带宽内存HBM(High-Bandwidth Memory)、混合存储立方HMC(Hybrid Memory Cube)等等。

集成的单元/模块如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。上述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。

应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

相关技术
  • 日志信息处理方法、装置、电子设备及可读存储介质
  • 一种日志信息处理方法、装置、设备及可读存储介质
  • 基于日志的系统异常监控方法、装置、设备及存储介质
  • 基于板书信息的处理方法、信息控制中心设备及存储介质
  • 基于AR的信息处理方法、装置、设备及可读存储介质
  • 异常日志信息的处理方法、装置、设备及存储介质
  • 用于异常日志信息确定的数据处理方法、电子设备及介质
技术分类

06120116491824