一种操作请求的跟踪方法、跟踪装置及服务器制造方法及图纸

技术编号:22641290 阅读:27 留言:0更新日期:2019-11-26 16:04
本申请公开了一种操作请求的跟踪方法、跟踪装置及服务器,其中,该操作请求的跟踪方法包括:第一服务器拦截向其发起的第一操作请求;若第一操作请求中未携带操作标识,则为第一操作请求生成具有唯一性的操作标识;若第一操作请求中携带操作标识,则解析获得第一操作请求的操作标识;将生成或解析得到的操作标识存储于第一应用的全局存储对象中;当第一服务器需要向第二服务器发起第二操作请求时,将操作标识放入第二操作请求中,再向第二服务器发起第二操作请求;记录操作请求日志时,从全局存储对象中解析出操作标识,并将操作标识写入操作请求日志中。通过本申请方案,实现对用户发起的操作的追踪,以及时定位操作在执行过程中可能出现的问题。

A tracking method, tracking device and server for operation request

The application discloses a tracking method, a tracking device and a server for an operation request, wherein the tracking method for the operation request includes: the first server intercepts the first operation request sent to it; if the first operation request does not carry an operation ID, the first operation request generates a unique operation ID; if the first operation request carries an operation ID, the solution Analyze and obtain the operation ID of the first operation request; store the generated or resolved operation ID in the global storage object of the first application; when the first server needs to send a second operation request to the second server, put the operation ID into the second operation request, and then send the second operation request to the second server; when recording the operation request log, store the object from the global storage The operation ID is resolved in and written to the operation request log. Through the application scheme, it can track the operations initiated by the user and locate the problems that may occur during the execution of the operations in a timely manner.

【技术实现步骤摘要】
一种操作请求的跟踪方法、跟踪装置及服务器
本申请属于信息管理
,尤其涉及操作请求的跟踪方法、操作请求的跟踪装置、服务器及计算机可读存储介质。
技术介绍
目前针对用户在前台所发起的各项操作,往往采用log4j日志系统中的映射调试上下文(MappedDiagnosticContext,MDC)对象进行存储,或者采用开源的第三方jar包进行存储。然而,上述两种方式均难以实现操作标识在不同线程之间的传递,这将导致后续无法在日志中对各个操作进行准确的定位及跟踪。
技术实现思路
有鉴于此,本申请提供了一种操作请求的跟踪方法、操作请求的跟踪装置、服务器及计算机可读存储介质,可实现在日志中对各个操作的准确定位及跟踪。本申请的第一方面提供了一种操作请求的跟踪方法,包括:第一服务器拦截向上述第一服务器发起的第一操作请求,上述第一操作请求向上述第一服务器请求第一应用;若上述第一操作请求中未携带操作标识,则为上述第一操作请求生成具有唯一性的操作标识,并将上述操作标识存储于上述第一应用的全局存储对象中;若上述第一操作请求中携带操作标识,则对上述第一操作请求进行解析,以获得上述第一操作请求的上述操作标识,并将上述操作标识存储于上述第一应用的全局存储对象中;当上述第一服务器需要向第二服务器发起第二操作请求时,将上述操作标识放入上述第二操作请求的报文或HTTP请求头中,然后向上述第二服务器发起上述第二操作请求,上述第二操作请求向上述第二服务器请求第二应用;记录操作请求日志时,从上述全局存储对象中解析出上述操作标识,并将上述操作标识写入上述操作请求日志中。本申请的第二方面提供了一种操作请求的跟踪装置,上述操作请求的跟踪装置应用于第一服务器,包括:拦截模块,用于拦截向上述第一服务器发起的第一操作请求,上述第一操作请求向上述第一服务器请求第一应用;生成模块,用于若上述第一操作请求中未携带操作标识,则为上述第一操作请求生成具有唯一性的操作标识;解析模块,用于若上述第一操作请求中携带操作标识,则对上述第一操作请求进行解析,以获得上述第一操作请求的上述操作标识;存储模块,用于将生成模块生成得到的上述操作标识或者解析模块解析得到的上述操作标识存储于上述第一应用的全局存储对象中;调用模块,用于当上述第一服务器需要向第二服务器发起第二操作请求时,将上述操作标识放入上述第二操作请求的报文或HTTP请求头中,然后向上述第二服务器发起上述第二操作请求,上述第二操作请求向上述第二服务器请求第二应用;记录模块,用于在记录操作请求日志时,从上述全局存储对象中解析出上述操作标识,并将上述操作标识写入上述操作请求日志中。本申请的第三方面提供了一种服务器,上述服务器包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面的方法的步骤。本申请的第四方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。本申请的第五方面提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。由上可见,在本申请方案中,第一服务器首先拦截向上述第一服务器发起的第一操作请求,上述第一操作请求向上述第一服务器请求第一应用,若上述第一操作请求中未携带操作标识,则为上述第一操作请求生成具有唯一性的操作标识,并将上述操作标识存储于上述第一应用的全局存储对象中,若上述第一操作请求中携带操作标识,则对上述第一操作请求进行解析,以获得上述第一操作请求的上述操作标识,并将上述操作标识存储于上述第一应用的全局存储对象中,当上述第一服务器需要向第二服务器发起第二操作请求时,将上述操作标识放入上述第二操作请求的报文或HTTP请求头中,然后向上述第二服务器发起上述第二操作请求,上述第二操作请求向上述第二服务器请求第二应用,最后在记录操作请求日志时,从上述全局存储对象中解析出上述操作标识,并将上述操作标识写入上述操作请求日志中。通过本申请方案,可根据前台用户所发起的操作生成相应的操作标识,并将该操作标志存储于全局存储对象中,使得该操作标识可以在父线程与子线程以及线程池中进行传递;其次,当用户所发起请求需要由多个服务器协调完成时,通过在先服务器在操作请求中插入上述相应的操作标识,使得该操作标识可以在不同服务器中进行传递;进一步地,操作请求日志中可以基于该操作标识检索得到相关日志信息,以实现对相应操作的定位及追踪。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例提供的操作请求的跟踪方法的实现流程示意图;图2是本申请实施例提供的操作请求的跟踪装置的结构框图;图3是本申请实施例提供的服务器的示意图。具体实施方式以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。为了说明本申请上述的技术方案,下面通过具体实施例来进行说明。实施例一下面对本申请实施例提供的一种操作请求的跟踪方法进行描述,请参阅图1,本申请实施例中的操作请求的跟踪方法包括:在步骤101中,第一服务器拦截向上述第一服务器发起的第一操作请求;在本申请实施例中,用户可以在客户端的前台所显示的界面中通过点击、双击、滑动或文字输入等各种方式,向后台的服务器请求对应应用,以触发该应用执行该请求对应的操作;或者,考虑到某些复杂的操作需要两个以上的应用协作完成,因而,其它服务器也可以向上述第一服务器发起第一操作请求,此处不对上述第一操作请求的发起者作出具体限定。具体地,上述第一操作请求用于向上述第一服务器请求第一应用,可以认为,在实际应用中,根据上述第一操作请求的作用,上述后台的任一服务器均可作为第一服务器来执行本步骤及后续步骤的操作。可选地,上述第一服务器可以预先声明一过滤器,该过滤器的作用是过滤外部请求调用,并且解析请求报文。上述第一服务器可以通过调用上述预先声明的过滤器对该第一操作请求进行拦截,并对拦截得到的上述第一操作请求中是否携带有操作标识进行检测。其中,上述操作标识指示了上述第一操作请求所请求的操作,每一操作都唯一的对应有一操作标识。通常来说,针对未携带有操作标识的操作请求,在日志中对该操作请求所对应的操作进行记录时,可能会与其他各个操作发生混淆的情况,这将不利于后续对该本文档来自技高网...

【技术保护点】
1.一种操作请求的跟踪方法,其特征在于,包括:/n第一服务器拦截向所述第一服务器发起的第一操作请求,所述第一操作请求向所述第一服务器请求第一应用;/n若所述第一操作请求中未携带操作标识,则为所述第一操作请求生成具有唯一性的操作标识,并将所述操作标识存储于所述第一应用的全局存储对象中;/n若所述第一操作请求中携带操作标识,则对所述第一操作请求进行解析,以获得所述第一操作请求的所述操作标识,并将所述操作标识存储于所述第一应用的全局存储对象中;/n当所述第一服务器需要向第二服务器发起第二操作请求时,将所述操作标识放入所述第二操作请求的报文或HTTP请求头中,然后向所述第二服务器发起所述第二操作请求,所述第二操作请求向所述第二服务器请求第二应用;/n记录操作请求日志时,从所述全局存储对象中解析出所述操作标识,并将所述操作标识写入所述操作请求日志中。/n

【技术特征摘要】
1.一种操作请求的跟踪方法,其特征在于,包括:
第一服务器拦截向所述第一服务器发起的第一操作请求,所述第一操作请求向所述第一服务器请求第一应用;
若所述第一操作请求中未携带操作标识,则为所述第一操作请求生成具有唯一性的操作标识,并将所述操作标识存储于所述第一应用的全局存储对象中;
若所述第一操作请求中携带操作标识,则对所述第一操作请求进行解析,以获得所述第一操作请求的所述操作标识,并将所述操作标识存储于所述第一应用的全局存储对象中;
当所述第一服务器需要向第二服务器发起第二操作请求时,将所述操作标识放入所述第二操作请求的报文或HTTP请求头中,然后向所述第二服务器发起所述第二操作请求,所述第二操作请求向所述第二服务器请求第二应用;
记录操作请求日志时,从所述全局存储对象中解析出所述操作标识,并将所述操作标识写入所述操作请求日志中。


2.如权利要求1所述的操作请求的跟踪方法,其特征在于,所述将所述操作标识写入所述操作请求日志中,包括:
在所述操作请求日志中,查询预设的操作标识占位符;
基于所述操作标识对查询得到的各个操作标识占位符进行替换。


3.如权利要求2所述的操作请求的跟踪方法,其特征在于,所述操作请求的跟踪方法还包括:
预先定义日志格式转化器,并以预设的格式声明所述操作标识占位符;
基于所述操作标志占位符修改所述操作请求日志的框架,以使得所述操作请求日志能够输出所述操作标识占位符;
相应地,所述基于所述操作标识对查询得到的各个操作标识占位符进行替换,包括:
在所述操作请求日志中,通过所述日志格式转化器将查询得到的各个操作标识占位符替换为所述操作标识。


4.如权利要求1至3任一项所述的操作请求的跟踪方法,其特征在于,所述操作请求的跟踪方法还包括:
当所述第一操作请求执行完毕后,确定所述第一操作请求的执行状态,所述执行状态包括执行失败或执行成功;
基于所述执行状态触发前台输出显示有所述操作标识的下拉弹框;
若接收到通过所述下拉弹框输入的基于所述操作标识的操作跟踪请求,则在所述操作请求日志中检索得到与所述操作标识相关的日志信息;
向所述前台发送所述日志信息。


5.如权利要求1至3任一项所述的操作请求的跟踪方法,其特征在于,所述第一服务器拦截向所述第一服务器发起的第一操作请求,包括:
所述第一...

【专利技术属性】
技术研发人员:资宇琪鲜丹
申请(专利权)人:威富通科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1