应用日志打印方法、装置、计算机设备和存储介质与流程

文档序号:16929247发布日期:2019-02-22 20:07阅读:115来源:国知局
应用日志打印方法、装置、计算机设备和存储介质与流程

本申请涉及计算机技术领域,特别是涉及基于接口数据处理的一种应用日志打印方法、装置、计算机设备和存储介质。



背景技术:

随着计算机技术的迅速发展,各种软件和应用程序等也不断增多。这些软件和应用程序发布后,在运行的过程中可以记录相应的日志信息。当这些软件和应用程序出现问题时,需要对软件和应用程序进行运行调试,并打印出运行过程中的日志信息,以使得调试人员根据日志信息中的信息对逻辑代码的问题进行跟踪,以了解软件或应用程序所存在的问题。

大多情况下日志信息的数量较多且比较复杂,传统的日志打印方式中,通常是利用统一的接口进行打印,或者根据需求变化需要重新切换不同的日志框架进行打印。这种日志打印方式的规范不统一,日志打印接口的工作量比较大,导致日志打印的效率较低。因此,如何有效地提高日志打印的效率成为目前需要解决的技术问题。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够有效提高日志打印的效率的应用日志打印方法、装置、计算机设备和存储介质。

一种应用日志打印方法,包括:

接收第一终端发送的日志打印请求,所述日志打印请求携带类标识和追踪标识;

获取预先建立的映射关系表,所述映射关系表中记录了类标识与对应的接口标识之间的映射关系;

根据所述类标识从映射关系表中获取对应的接口标识;

通过所述接口标识从接口库中调用对应的日志打印接口,所述日志打印接口包括对应的封装信息;

根据所述追踪标识调用对应线程的堆栈,从所述堆栈中获取对应的日志信息;

根据所述日志打印接口和对应的封装信息打印所述日志信息。

在其中一个实施例中,所述接收第一终端发送的日志打印请求之前,还包括:根据所述类的功能对多个日志打印接口进行隔离;对隔离后的日志打印接口添加对应的类标识;利用所述类标识与对应的日志打印接口的接口标识建立映射关系表。

在其中一个实施例中,所述类包括对应的业务类型;所述对隔离后的日志打印接口添加对应的类标识之后,还包括:获取所述业务类型的关键字;对所述业务类型所属类对应的日志打印接口添加所述关键字;将添加关键字后的日志打印接口存储至接口库中。

在其中一个实施例中,所述对隔离后的日志打印接口添加对应的类标识之后,还包括:对所述日志打印接口进行封装,并生成对应的封装信息;将封装后的日志打印接口和对应的封装信息进行存储。

在其中一个实施例中,所述方法还包括:接收第一终端发送的日志框架切换请求,所述日志框架切换请求包括接口标识;根据所述接口标识获取对应的封装信息;对所述封装信息进行修改,以对日志打印框架进行切换。

在其中一个实施例中,所述接收调试终端发送的日志打印请求之前,还包括:获取第二终端发送的操作请求,所述操作请求包括追踪标识;获取与所述操作请求对应的当前运行线程,将所述追踪标识写入所述当前运行线程的变量中;获取与所述操作请求对应的类标识,根据所述类标识调用对应的日志打印框架;根据所述日志打印框架和所述追踪标识生成对应的日志信息,并存储至堆栈中。

一种应用日志打印装置,包括:

接收模块,用于接收第一终端发送的日志打印请求,所述日志打印请求携带类标识和追踪标识;

获取模块,用于获取预先建立的映射关系表,所述映射关系表中记录了类标识与对应的接口标识之间的映射关系;根据所述函数类标识从映射关系表中获取对应的接口标识;

调用模块,用于通过所述接口标识从接口库中调用对应的日志打印接口,所述日志打印接口包括对应的封装信息;

所述获取模块还用于根据所述追踪标识调用对应线程的堆栈,从所述堆栈中获取对应的日志信息;

打印模块,用于根据所述日志打印接口和对应的封装信息打印所述日志信息。

在其中一个实施例中,所述装置还包括隔离模块,用于根据所述类的功能对多个日志打印接口进行隔离;标识添加模块,用于对隔离后的日志打印接口添加对应的类标识;关系表建立模块,用于利用所述类标识与对应的日志打印接口的接口标识建立映射关系表。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

接收第一终端发送的日志打印请求,所述日志打印请求携带类标识和追踪标识;

获取预先建立的映射关系表,所述映射关系表中记录了类标识与对应的接口标识之间的映射关系;

根据所述类标识从映射关系表中获取对应的接口标识;

通过所述接口标识从接口库中调用对应的日志打印接口,所述日志打印接口包括对应的封装信息;

根据所述追踪标识调用对应线程的堆栈,从所述堆栈中获取对应的日志信息;

根据所述日志打印接口和对应的封装信息打印所述日志信息。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

接收第一终端发送的日志打印请求,所述日志打印请求携带类标识和追踪标识;

获取预先建立的映射关系表,所述映射关系表中记录了类标识与对应的接口标识之间的映射关系;

根据所述类标识从映射关系表中获取对应的接口标识;

通过所述接口标识从接口库中调用对应的日志打印接口,所述日志打印接口包括对应的封装信息;

根据所述追踪标识调用对应线程的堆栈,从所述堆栈中获取对应的日志信息;

根据所述日志打印接口和对应的封装信息打印所述日志信息。

上述应用日志打印方法、装置、计算机设备和存储介质,服务器接收第一终端发送的日志打印请求,日志打印请求携带类标识和追踪标识。获取预先建立的映射关系表,映射关系表中记录了类标识与对应的接口标识之间的映射关系。服务器进而可以根据类标识从映射关系表中获取对应的接口标识,并通过接口标识从接口库中调用对应的日志打印接口,日志打印接口包括对应的封装信息。进而服务器根据追踪标识调用对应线程的堆栈,从堆栈中获取对应的日志信息,由此可以根据日志打印接口和对应的封装信息打印出日志信息。由于每个日志打印接口根据类的功能进行了隔离,在打印时就可以根据类标识通过对应的日志打印接口打印出对应的日志信息,由此有效地提高了日志打印的效率。

附图说明

图1为一个实施例中应用日志打印方法的应用场景图;

图2为一个实施例中应用日志打印方法的流程示意图;

图3为一个实施例中隔离日志打印接口的步骤的流程示意图;

图4为一个实施例中对日志框架进行切换步骤的流程示意图;

图5为一个实施例中生成日志信息的步骤的流程示意图;

图6为一个实施例中应用日志打印装置的结构框图;

图7为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的应用日志打印方法,可以应用于如图1所示的应用环境中。其中,第一终端102通过网络与服务器104通过网络进行通信。其中,第一终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。服务器104接收第一终端102发送的日志打印请求,日志打印请求携带类标识和追踪标识.服务器104进而获取预先建立的映射关系表,映射关系表中记录了类标识与对应的接口标识之间的映射关系;根据类标识从映射关系表中获取对应的接口标识。服务器104通过接口标识从接口库中调用对应的日志打印接口,日志打印接口包括对应的封装信息,并根据追踪标识调用对应线程的堆栈,从堆栈中获取对应的日志信息。服务器104从而根据日志打印接口和对应的封装信息打印日志信息。由于每个日志打印接口根据类的功能进行了隔离,在打印时就可以根据类标识通过对应的日志打印接口打印出对应的日志信息,由此有效地提高了日志打印的效率。

在一个实施例中,如图2所示,提供了一种应用日志打印方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:

步骤202,接收第一终端发送的日志打印请求,日志打印请求携带类标识和追踪标识。

各种软件和应用程序等在运行的过程中会产生大量日志信息,当各种软件和应用程序等出现问题或需要进行维护时,可以通过打印出相关的日志信息,以对各种软件和应用程序进行调试或维护。

当第一终端需要获取服务器中的日志信息时,可以向服务器发送日志打印请求,进而服务器接收第一终端发送的日志打印请求。日志打印请求中携带了类标识和追踪标识。其中,第一终端可以是调试人员或维护人员对应的终端。类标识可以是需要打印的日志信息的类所对应的标识;追踪标识可以是需要打印的日志信息对应的操作请求所对应的追踪标识。

步骤204,获取预先建立的映射关系表,映射关系表中记录了类标识与对应的接口标识之间的映射关系。

服务器接收到第一终端发送的日志打印请求后,从数据库中获取预先建立的映射关系表,映射关系表中记录了类标识与对应的接口标识之间的映射关系。其中,服务器可以预先根据类的功能对多个日志打印接口进行隔离,并对隔离后的日志打印接口添加对应的类标识,由此使得不同功能的类对应不同的日志打印接口。服务器进而利用类标识与对应的日志打印接口的接口标识建立映射关系表,并将建立的映射关系表进行存储。

步骤206,根据类标识从映射关系表中获取对应的接口标识。

步骤208,通过接口标识从接口库中调用对应的日志打印接口,日志打印接口包括对应的封装信息。

服务器获取映射关系表后,根据日志打印请求中携带的类标识从映射关系表中获取对应的接口标识,由此服务器则可以进一步通过接口标识从接口库中调用对应的日志打印接口。日志打印接口包括了对应的封装信息。

具体地,服务器在接收第一终端发送的日志打印请求之前,根据每个类所对应的功能对多个日志打印接口进行拆分,由此对多个日志打印接口进行隔离,使得各个类之间的依赖性最小。每个类都有对应的功能和类标识,每个日志打印接口都有对应的接口标识。服务器根据每个类的功能为每个类分配对应的日志打印接口。其中,多个类可以对应一个日志打印接口,一个日志打印接口也可以对应多个类。进而服务器通过对隔离后的日志打印接口添加对应的类标识,由此能够有效地根据类标识分配对应的日志打印接口。

其中,封装信息是服务器预先对多个日志打印接口进行隔离后,对日志打印接口进行封装,并生成对应的封装信息。封装信息中包括了日志打印接口的多个属性信息。

步骤210,根据追踪标识调用对应线程的堆栈,从堆栈中获取对应的日志信息。

其中,日志信息可以是根据用户终端的操作请求生成的。具体地,用户终端向服务器发送该操作请求,操作请求中携带了追踪标识,用于对该操作请求所产生的日志信息进行追踪。追踪标识可以是服务器接收操作请求后,根据操作请求生成与该操作请求唯一对应的标识。服务器则进一步调用与操作请求对应的线程。通过获取线程中的变量,将操作请求对应的追踪标识添加至线程变量中,从而可以将追踪标识添加至与操作请求对应的线程中。用户终端发送的每个操作请求都有对应的类来响应该操作请求,进而服务器根据操作请求获取对应的类标识,由此可以根据类标识调用对应的日志框架。服务器从该线程中读取与操作请求对应的追踪标识,将追踪标识写入与操作请求对应的日志框架中。服务器进一步根据日志框架和追踪标识生成对应的日志消息,并将日志信息存储至堆栈中。

服务器根据接口标识从接口库中调用对应的日志打印接口后,则进一步根据日志打印请求中携带的追踪标识调用对应线程的堆栈。堆栈中存储了根据追踪标识对应的操作请求生成的日志信息,服务器由此可以根据追踪标识获取到对应的日志信息。

进一步地,服务器根据追踪标识调用对应线程的堆栈后,还可以将类标识与堆栈中日志信息中的类标识进行匹配,匹配成功则表示这个类与上一帧实际调用的类相匹配。由此服务器可以根据追踪标识获取到对应的日志信息。

步骤212,根据日志打印接口和对应的封装信息打印日志信息。

服务器获取到对应的日志信息后,则可以根据调用的日志打印接口和对应的封装信息打印出日志信息。由于封装信息中包括了日志打印接口的多项属性信息,由此可以利用日志打印接口按照封装信息对应的方式打印出日志信息。由于日志打印接口是根据类的功能进行了隔离和封装,由此服务器可以通过类标识调用对应的日志打印接口对日志信息进行规范和统一地打印,进而有效地提高了应用日志打印的效率。

上述应用日志打印方法中,服务器接收第一终端发送的日志打印请求,日志打印请求携带类标识和追踪标识。获取预先建立的映射关系表,映射关系表中记录了类标识与对应的接口标识之间的映射关系。服务器根据类标识从映射关系表中获取对应的接口标识,通过接口标识从接口库中调用对应的日志打印接口,日志打印接口包括对应的封装信息。进而服务器根据追踪标识调用对应线程的堆栈,从堆栈中获取对应的日志信息,由此可以根据日志打印接口和对应的封装信息打印出日志信息。由于每个日志打印接口根据类的功能进行了隔离和封装,在打印时就可以根据类标识通过对应的日志打印接口统一规范地打印出对应的日志信息,由此有效地提高了日志打印的效率。

在一个实施例中,如图3所示,接收第一终端发送的日志打印请求之前,还包括隔离日志打印接口的步骤,该步骤具体包括以下内容:

步骤302,根据类的功能对多个日志打印接口进行隔离。

步骤304,对隔离后的日志打印接口添加对应的类标识。

服务器在接收第一终端发送的日志打印请求之前,根据每个类所对应的功能对多个日志打印接口进行拆分,由此对多个日志打印接口进行隔离,使得各个类之间的依赖性最小。

具体地,每个类都有对应的功能和类标识,每个日志打印接口都有对应的接口标识。服务器根据每个类的功能为每个类分配对应的日志打印接口。其中,多个类可以对应一个日志打印接口,一个日志打印接口也可以对应多个类。进而服务器通过对隔离后的日志打印接口添加对应的类标识,由此能够有效地根据类标识分配对应的日志打印接口。

步骤306,利用类标识与对应的日志打印接口的接口标识建立映射关系表。

服务器对隔离后的日志打印接口添加对应的类标识后,则利用类标识与对应的日志打印接口的接口标识建立映射关系表,并存储至数据库中,由此可以有效地将类和对应的日志打印接口关联起来。通过根据类的功能对多个日志打印接口进行隔离,由此服务器可以利用隔离后的日志打印接口规范地打印出对应的日志信息,进而能够有效提高日志打印的效率。

在一个实施例中,类包括对应的业务类型;对隔离后的日志打印接口添加对应的类标识之后,还包括:获取业务类型的关键字;对业务类型所属类对应的日志打印接口添加所述关键字;将添加关键字后的日志打印接口存储至接口库中。

服务器在接收第一终端发送的日志打印请求之前,根据每个类所对应的功能多多个日志打印接口进行隔离,使得各个类之间的依赖性最小。

具体地,每个类都有对应的功能和类标识,每个日志打印接口都有对应的接口标识。服务器根据每个类的功能为每个类分配对应的日志打印接口。其中,多个类可以对应一个日志打印接口,一个日志打印接口也可以对应多个类。进而服务器通过对隔离后的日志打印接口添加对应的类标识,由此能够有效地根据类标识分配对应的日志打印接口。

每个类都包括有对应的业务类型,其中,多个类可能属于同一个业务类型。服务器对隔离后的日志打印接口添加对应的类标识后,获取类所对应的业务类型的关键字。其中,关键字可以是预先定义好的,也可以根据预设规则进行筛选出的。服务器进而对该类对应的日志打印接口添加获取到的关键字,并将添加关键字后的日志打印接口存储至接口库中。由此当需要对这些日志打印接口进行统一管理时,则可以根据类的业务类型的关键字调用对应的日志打印接口,进而对这些日志打印接口进行统一管理。通过对日志打印接口添加业务类型的关键字,从而能够有效地对日志打印接口进行统一管理。

在一个实施例中,对隔离后的日志打印接口添加对应的类标识之后,还包括:对日志打印接口进行封装,并生成对应的封装信息;将封装后的日志打印接口和对应的封装信息进行存储。

服务器在接收第一终端发送的日志打印请求之前,根据每个类所对应的功能多多个日志打印接口进行隔离,使得各个类之间的依赖性最小。

具体地,每个类都有对应的功能和类标识,每个日志打印接口都有对应的接口标识。服务器根据每个类的功能为每个类分配对应的日志打印接口。其中,多个类可以对应一个日志打印接口,一个日志打印接口也可以对应多个类。进而服务器通过对隔离后的日志打印接口添加对应的类标识,由此能够有效地根据类标识分配对应的日志打印接口。

服务器对隔离后的日志打印接口添加对应的类标识之后,对日志打印接口进行封装。具体地,可以通过预设函数对日志打印接口进行封装,封装后生成对应的封装信息。封装信息中包括了日志打印接口的多个属性信息。服务器将封装后的日志打印接口和对应的封装信息进行存储,以使得服务器在调用日志打印接口时同时获取对应的封装信息。通过对日志打印接口进行封装,能够有效地使得日志打印接口规范化,进而能够有效地提高日志信息的打印效率。

在一个实施例中,如图4所示,该方法还包括对日志框架进行切换的步骤,该步骤具体包括以下内容:

步骤402,接收第一终端发送的日志框架切换请求,日志框架切换请求包括接口标识。

当根据需求需要对日志框架进行切换时,第一终端可以向服务器发送日志框架切换请求,日志框架切换请求中包括了对应的日志打印接口的接口标识和修改信息。

步骤404,根据接口标识获取对应的封装信息。

步骤406,对封装信息进行修改,以对日志打印框架进行切换。

服务器接收到第一终端发送的日志框架切换请求后,根据日志框架切换请求中携带的接口标识,获取对应的日志打印接口的封装信息。进而根服务器根据日志框架切换请求中的修改信息对该日志打印接口的封装信息进行修改,通过对日志打印接口的封装信息进行修改以对打印框架进行修改。封装信息中包括了日志打印接口的属性信息,通过对封装信息进行修改,由此可以对日志框架对应的封装包进行修改。

例如,当一个类对应的日志打印接口需要切换日志框架时,只需要修改对应的封装信息,就可以有效地实现对日志框架的切换。通过修改日志打印接口的封装信息,可以有效地对各个类对应的日志打印接口的日志框架进行修改和切换,由此有效地提高了日志打印的效率。

在一个实施例中,如图5所示,在接收调试终端发送的日志打印请求之前,该方法还包括生成日志信息的步骤,该步骤具体包括以下内容:

步骤502,获取第二终端发送的操作请求,操作请求包括追踪标识。

其中,第二终端可以是用户终端。日志信息中记录有操作系统、网页或应用程序等在运行过程中相关活动和性能的反馈信息和发生的事件信息。日志信息可用于了解操作系统或其他应用程序等的活动过程和跟踪诊断操作系统、网页或应用程序等的问题。用户可以通过用户终端中显示的界面,点击界面中的控件或链接。

用户终端检测到用户的点击操作后,触发操作请求,并向服务器发送该操作请求。操作请求中携带了追踪标识,用于对该操作请求所产生的日志信息进行追踪。追踪标识可以是服务器接收操作请求后,根据操作请求生成与该操作请求唯一对应的标识。例如,服务器可以采用uuid(universallyuniqueidentifier,通用唯一识别码)为操作请求随机生成一个对应的追踪标识。

步骤504,获取与操作请求对应的当前运行线程,将追踪标识写入当前运行线程的变量中。

进一步地,每个操作请求都有对应的线程去执行操作请求,从接收请求到返回响应所经过的所有程序调用都属于同一个线程。当生成与操作请求唯一对应的追踪标识后,服务器就调用与操作请求对应的线程。通过获取线程中的变量,将操作请求对应的追踪标识添加至线程变量中,从而可以将追踪标识添加至与操作请求对应的线程中。

步骤506,获取与操作请求对应的类标识,根据类标识调用对应的日志打印框架。

用户终端发送的每个操作请求都有对应的类来响应该操作请求,进而服务器根据操作请求获取对应的类标识,由此可以根据类标识调用对应的日志框架。

步骤508,根据日志打印框架和追踪标识生成对应的日志信息,并存储至堆栈中。

服务器根据操作请求的追踪标识,调用与操作请求对应的线程后,服务器从该线程中读取与操作请求对应的追踪标识,将追踪标识写入与操作请求对应的日志框架中。服务器进一步根据日志框架和追踪标识生成对应的日志消息,并将日志信息存储至堆栈中。通过利用追踪标识和日志框架生成对应的日志信息,由此能够有效使得日志打印接口对相应的日志信息进行打印的效率。

进一步地,服务器还可以根据追踪标识为对应的日志信息建立索引,由此使得在对日志消息进行查询时可以根据索引快速查询到对应的日志消息。具体地,服务器可以根据追踪标识和对应的日志信息生成日志存储表,日志存储表可以是各种数据表。服务器进一步可以将操作请求的追踪标识设置为日志存储表中的主键,通过根据主键利用追踪标识建立与操作请求对应的日志消息的索引。由此可以根据追踪标识将操作请求与对应的日志消息关联起来,从而能够有效提高日志信息的查询效率和打印效率。

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

在一个实施例中,如图6所示,提供了一种应用日志打印装置,包括:接收模块602、获取模块604、调用模块606和打印模块608,其中:

接收模块602,用于接收第一终端发送的日志打印请求,所述日志打印请求携带类标识和追踪标识。

获取模块604,用于获取预先建立的映射关系表,所述映射关系表中记录了类标识与对应的接口标识之间的映射关系;根据所述函数类标识从映射关系表中获取对应的接口标识。

调用模块606,用于通过所述接口标识从接口库中调用对应的日志打印接口,所述日志打印接口包括对应的封装信息。

所述获取模块604还用于根据所述追踪标识调用对应线程的堆栈,从所述堆栈中获取对应的日志信息。

打印模块608,用于根据所述日志打印接口和对应的封装信息打印所述日志信息。

在一个实施例中,该装置还包括隔离模块,用于根据类的功能对多个日志打印接口进行隔离;对隔离后的日志打印接口添加对应的类标识;利用类标识与对应的日志打印接口的接口标识建立映射关系表。

在一个实施例中,类包括对应的业务类型;该装置还包括关键字添加模块,用于获取业务类型的关键字;对业务类型所属类对应的日志打印接口添加关键字;将添加关键字后的日志打印接口存储至接口库中。

在一个实施例中,该装置还包括封装模块,用于对日志打印接口进行封装,并生成对应的封装信息;将封装后的日志打印接口和对应的封装信息进行存储。

在一个实施例中,接收模块602还用于接收第一终端发送的日志框架切换请求,日志框架切换请求包括接口标识;该装置还包括切换模块,用于根据接口标识获取对应的封装信息;对封装信息进行修改,以对日志打印框架进行切换。

在一个实施例中,获取模块604还用于获取第二终端发送的操作请求,操作请求包括追踪标识;该装置还包括追踪标识写入模块,用于获取与操作请求对应的当前运行线程,将追踪标识写入当前运行线程的变量中;日志信息生成模块,用于还用于获取与操作请求对应的类标识,根据类标识调用对应的日志打印框架;根据日志打印框架和追踪标识生成对应的日志信息,并存储至堆栈中。

关于应用日志打印装置的具体限定可以参见上文中对于应用日志打印方法的限定,在此不再赘述。上述应用日志打印装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储映射关系表、日志打印接口数据、封装信息以及日志信息等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种应用日志打印方法。

本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

接收第一终端发送的日志打印请求,日志打印请求携带类标识和追踪标识;

获取预先建立的映射关系表,映射关系表中记录了类标识与对应的接口标识之间的映射关系;

根据类标识从映射关系表中获取对应的接口标识;

通过接口标识从接口库中调用对应的日志打印接口,日志打印接口包括对应的封装信息;

根据追踪标识调用对应线程的堆栈,从堆栈中获取对应的日志信息;

根据日志打印接口和对应的封装信息打印日志信息。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据类的功能对多个日志打印接口进行隔离;对隔离后的日志打印接口添加对应的类标识;利用类标识与对应的日志打印接口的接口标识建立映射关系表。

在一个实施例中,类包括对应的业务类型;处理器执行计算机程序时还实现以下步骤:获取业务类型的关键字;对业务类型所属类对应的日志打印接口添加关键字;将添加关键字后的日志打印接口存储至接口库中。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:对日志打印接口进行封装,并生成对应的封装信息;将封装后的日志打印接口和对应的封装信息进行存储。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:接收第一终端发送的日志框架切换请求,日志框架切换请求包括接口标识;根据接口标识获取对应的封装信息;对封装信息进行修改,以对日志打印框架进行切换。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取第二终端发送的操作请求,操作请求包括追踪标识;获取与操作请求对应的当前运行线程,将追踪标识写入当前运行线程的变量中;获取与操作请求对应的类标识,根据类标识调用对应的日志打印框架;根据日志打印框架和追踪标识生成对应的日志信息,并存储至堆栈中。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

接收第一终端发送的日志打印请求,日志打印请求携带类标识和追踪标识;

获取预先建立的映射关系表,映射关系表中记录了类标识与对应的接口标识之间的映射关系;

根据类标识从映射关系表中获取对应的接口标识;

通过接口标识从接口库中调用对应的日志打印接口,日志打印接口包括对应的封装信息;

根据追踪标识调用对应线程的堆栈,从堆栈中获取对应的日志信息;

根据日志打印接口和对应的封装信息打印日志信息。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据类的功能对多个日志打印接口进行隔离;对隔离后的日志打印接口添加对应的类标识;利用类标识与对应的日志打印接口的接口标识建立映射关系表。

在一个实施例中,类包括对应的业务类型;计算机程序被处理器执行时还实现以下步骤:获取业务类型的关键字;对业务类型所属类对应的日志打印接口添加关键字;将添加关键字后的日志打印接口存储至接口库中。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对日志打印接口进行封装,并生成对应的封装信息;将封装后的日志打印接口和对应的封装信息进行存储。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收第一终端发送的日志框架切换请求,日志框架切换请求包括接口标识;根据接口标识获取对应的封装信息;对封装信息进行修改,以对日志打印框架进行切换。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取第二终端发送的操作请求,操作请求包括追踪标识;获取与操作请求对应的当前运行线程,将追踪标识写入当前运行线程的变量中;获取与操作请求对应的类标识,根据类标识调用对应的日志打印框架;根据日志打印框架和追踪标识生成对应的日志信息,并存储至堆栈中。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

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

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1