CN107678869B - 客户端异常定位方法、装置、计算机设备和存储介质 - Google Patents

客户端异常定位方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN107678869B
CN107678869B CN201710618305.2A CN201710618305A CN107678869B CN 107678869 B CN107678869 B CN 107678869B CN 201710618305 A CN201710618305 A CN 201710618305A CN 107678869 B CN107678869 B CN 107678869B
Authority
CN
China
Prior art keywords
server
log
client
request
file
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.)
Active
Application number
CN201710618305.2A
Other languages
English (en)
Other versions
CN107678869A (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.)
OneConnect Smart Technology Co Ltd
Original Assignee
OneConnect Smart Technology 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 OneConnect Smart Technology Co Ltd filed Critical OneConnect Smart Technology Co Ltd
Priority to CN201710618305.2A priority Critical patent/CN107678869B/zh
Priority to PCT/CN2017/104846 priority patent/WO2019019394A1/zh
Publication of CN107678869A publication Critical patent/CN107678869A/zh
Application granted granted Critical
Publication of CN107678869B publication Critical patent/CN107678869B/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/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请涉及一种客户端异常定位方法、装置、计算机设备和存储介质。所述方法包括:当在终端运行的客户端向服务端发送请求时,拦截所述请求,记录所述请求对应的请求标识;将拦截到的请求转发至服务端,以使得服务端根据所述请求返回对应的响应数据;对服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件;将拦截到的响应数据转发至客户端;当客户端出现异常时,根据请求标识在服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成日志文件;利用所述响应文件和日志文件对客户端的异常进行定位。采用本方法在客户端发生异常时能够有效提高异常定位效率。

Description

客户端异常定位方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种客户端异常定位方法、装置、计算机设备和存储介质。
背景技术
当终端上安装的客户端在运行过程中出现异常时,可能是客户端这一侧出现了问题,也可能是服务端这一侧出现了问题。在传统的方式中,客户端出现异常之后,可以采用抓包软件来抓取服务端的响应数据,但是无法抓取到服务端的接口日志,只能通过抓取到的响应数据进行异常定位。由此导致定位时间较长,效率较低。
发明内容
基于此,有必要针对上述技术问题,提供一种在客户端发生异常时能够有效提高异常定位效率的客户端异常定位方法、装置、计算机设备和存储介质。
一种客户端异常定位方法,包括:
当在终端运行的客户端向服务端发送请求时,拦截所述请求,记录所述请求对应的请求标识;将拦截到的请求转发至服务端,以使得服务端根据所述请求返回对应的响应数据;
对服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件;
将拦截到的响应数据转发至客户端;
当客户端出现异常时,根据请求标识在服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成日志文件;
利用所述响应文件和日志文件对客户端的异常进行定位。
在其中一个实施例中,所述利用所述响应文件和日志文件对客户端的异常进行定位的步骤,包括:
获取响应文件中的返回码;
若返回码与预设值相同,则记录异常发生在客户端;
若返回码与预设值不同,则记录异常发生在服务端;所述服务端包括本地服务端和第三方服务端;
当异常发生在服务端时,利用日志文件识别异常是否发生在本地服务端,若是,则记录异常发生在本地服务端,否则记录异常发生在第三方服务端。
在其中一个实施例中,所述利用日志文件识别异常是否发生在本地服务端的步骤,包括:
将与预设值不同的返回码标记为异常返回码;
在所述日志文件中查询所述异常返回码对应的来源是否为本地服务端;
若是,则记录异常发生在本地服务端。
在其中一个实施例中,所述日志文件包括本地日志文件,所述利用日志文件识别异常是否发生在本地服务端的步骤,包括:
将与预设值不同的返回码标记为异常返回码;
获取本地日志文件,在所述本地日志文件中查询是否存在异常返回码;
若存在,则记录异常发生在本地服务端。
在其中一个实施例中,所述方法还包括:
当客户端的异常发生在本地服务端时,根据所述日志文件获取本地服务端多个程序模块之间的数据流向和业务流向;
根据所述数据流向和业务流向对异常部位进行定位。
在其中一个实施例中,所述根据所述日志文件获取本地服务端多个程序模块之间的数据流向和业务流向的步骤,包括:
根据日志文件获取多个程序模块对应的日志结构;
对多个模块对应的日志结构进行解析,得到本地服务端多个程序模块之间的数据流向和业务流向。
一种客户端异常定位装置,所述装置包括:
代理程序,用于当在终端运行的客户端向服务端发送请求时,拦截所述请求,记录所述请求对应的请求标识;将拦截到的请求转发至服务端,以使得服务端根据所述请求返回对应的响应数据;对服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件;将拦截到的响应数据转发至客户端;
定位服务,用于当客户端出现异常时,根据请求标识在服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成日志文件;利用所述响应文件和日志文件对客户端的异常进行定位。
在其中一个实施例中,所述定位服务还用于获取响应文件中的返回码;若返回码与预设值相同,则记录异常发生在客户端;若返回码与预设值不同,则记录异常发生在服务端;所述服务端包括本地服务端和第三方服务端;当异常发生在服务端时,利用日志文件识别异常是否发生在本地服务端,若是,则记录异常发生在本地服务端,否则记录异常发生在第三方服务端。
一种计算机设备,包括存储器及处理器,所述存储器中储存有计算机可读指令,所述指令被所述处理器执行时,使得所述处理器执行上述方法的步骤。
一个或多个存储有计算机可读指令的计算机可读非易失性存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述方法的步骤。
上述客户端异常定位方法、装置、计算机设备和存储介质,通过对请求进行拦截,可以将拦截到的请求实时记录至请求文件。通过对服务端返回的响应数据,可以将拦截到的响应数据实时记录至响应文件。在整个过程中,不需要在客户端发生异常时再去抓取响应数据。而且在发生异常时,还可以通过已记录的请求标识来抓取服务端的接口日志的内容,生成对应的日志文件,从而可以利用响应数据和日志文件快速定位异常部位。由此在客户端发生异常时,能够有效提高异常定位效率。
附图说明
图1为一个实施例中客户端异常定位方法的应用场景图;
图2为图1中的中间服务器的框图;
图3为一个实施例中客户端异常定位方法的流程图;
图4为一个实施例中客户端异常定位装置的框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例中所提供的客户端异常定位方法可以应用于如图1所示的应用场景中。终端102通过网络与中间服务器104进行连接。中间服务器104通过网络与本地服务器106进行连接。中间服务器104通过网络与第三方服务器108进行连接。终端102上运行了客户端。本地服务器106上运行了本地服务端。第三方服务器上运行了第三方服务端。本地服务端和第三方服务器可以统称为服务端。
当客户端向服务端发送请求时,中间服务器104拦截请求,将请求记录至请求文件。请求文件中包括请求对应的请求标识和请求包。记录完成之后,中间服务器104将请求转发至本地服务端或第三方服务端。本地服务端或第三方服务端根据该请求返回对应的响应数据,中间服务器104响应数据进行拦截,将拦截到的响应数据记录至响应文件。在完成记录之后,中间服务器104将拦截到的响应数据转发至客户端。
当客户端出现异常时,中间服务器104根据请求标识在服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成对应的日志文件。中间服务器104利用所述响应文件和日志文件对客户端的异常进行定位,由此能够有效提高异常定位效率。
在一个实施例中,中间服务器的框图如图2所示。该中间服务器包括通过系统总线连接的处理器、存储器和网络接口。其中,该中间服务器的处理器用于提供计算和控制能力。该中间服务器的存储器包括非易失性存储介质、内存储器。该中间服务器的非易失性存储介质存储有操作系统、数据库和计算机可读指令。数据库中存储了请求文件、响应文件和日志文件等。该中间服务器的内存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。该中间服务器的网络接口用于与客户端、本地服务端以及第三方服务端等通过网络连接通信。该计算机可读指令被处理器执行时以实现一种客户端异常定位方法。本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务端的限定,具体的服务端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,如图3所示,提供了一种客户端异常定位方法,以该方法应用于中间服务器为例进行说明,具体包括以下步骤:
步骤302,当在终端运行的客户端向服务端发送请求时,拦截请求,记录请求对应的请求标识。。
终端上运行了客户端,客户端可以向为其对应的服务端发送请求,以使得客户端能够向用户提供相应的功能,比如,获取某个页面,或者进行某项查询等。中间服务器上运行了代理程序,当客户端向其对应的服务端发送请求时,中间服务器通过代理程序将客户端发送的请求进行拦截,并且将拦截到的请求记录至请求文件中。请求文件中记录了每个请求对应的请求标识和请求包。
步骤304,将拦截到的请求转发至服务端,以使得服务端根据请求返回对应的响应数据。
步骤306,对服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件。
步骤308,将拦截到的响应数据转发至客户端。
代理程序将拦截到的请求记录至请求文件之后,将拦截到的请求转发至对应的服务端。客户端对应的服务端包括本地服务端和第三方服务端。
在其中一个实施例中,请求中还携带了目标服务端,目标服务端可以是本地服务端,也可以是第三方服务端。代理程序根据请求中携带的目标服务端,将请求转发至本地服务端或者第三方服务端。
在其中一个实施例中,本地服务端可以根据请求包识别是否为其自身需要响应的请求,若是,则本地服务端根据该请求返回响应数据。否则,本地服务端将请求转发至第三方服务端,以使得第三方服务端根据该请求返回响应数据。
代理程序将本地服务端或者第三方服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件。在完成记录之后,代理程序将拦截到的响应数据转发至客户端。以使得客户端能够获取到与请求对应的响应数据,从而向用户提供相应的功能。
步骤310,当客户端出现异常时,根据请求标识在服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成日志文件。
步骤312,利用响应文件和日志文件对客户端的异常进行定位。
当客户端在运行中出现异常时,中间服务器启动定位服务,通过定位服务抓取服务端的接口日志的日志内容。具体的,定位服务获取本地服务端的接口日志,以及第三方服务端的接口日志,根据请求标识在本地服务端的接口日志和/或第三方服务端的接口日志中抓取相应的日志内容,利用抓取到的日志内容生成对应的日志文件。定位服务利用响应文件和日志文件对客户端的异常进行定位。
在其中一个实施例中,利用响应文件和日志文件对客户端的异常进行定位的步骤,包括:获取响应文件中的返回码;若返回码与预设值相同,则记录异常发生在客户端;若返回码与预设值不同,则记录异常发生在服务端;服务端包括本地服务端和第三方服务端;当异常发生在服务端时,利用日志文件识别异常是否发生在本地服务端,若是,则记录异常发生在本地服务端,否则记录异常发生在第三方服务端。
响应数据中携带了返回码。在对异常进行定位时,定位服务获取响应文件,提取响应文件中的返回码。定位服务判断返回码是否为预设值,若是,表示返回码正常。返回码正常表示服务端这一侧未出现异常,定位服务可以确定客户端的异常发生在客户端这一侧。
如果返回码与预设值不同,表示返回码异常,可以确定是服务端这一侧出现了异常。为了进一步确认异常是发生在本地服务端还是第三方服务端,定位应用还可以获取多个请求对应的日志文件。利用日志文件来识别异常是发生在本地服务端还是第三方服务端。
如果识别出异常发生在本地服务端,还可以通过日志文件对异常发生的模块进行定位,以此能够对异常部位进行精准的定位。如果识别出异常发生在第三方服务端,则定位服务生成异常通知,将异常通知发生至第三方服务端,以使得第三方能够对异常及时进行修复。
本实施例中,通过对请求进行拦截,可以将拦截到的请求实时记录至请求文件。通过对服务端返回的响应数据,可以将拦截到的响应数据实时记录至响应文件。在整个过程中,不需要在客户端发生异常时再去抓取响应数据。而且在发生异常时,还可以通过已记录的请求标识来抓取服务端的接口日志的内容,生成对应的日志文件,从而可以利用响应数据和日志文件快速定位异常部位。由此在客户端发生异常时,能够有效提高异常定位效率。
在一个实施例中,利用日志文件识别异常是否发生在本地服务端的步骤,包括:将与预设值不同的返回码标记为异常返回码;在日志文件中查询异常返回码对应的来源是否为本地服务端;若是,则记录异常发生在本地服务端。
本实施例中,当客户端在运行中发生异常时,中间服务器通过定位服务在服务端的接口日志中抓取相应的日志内容,利用抓取到的日志内容生成多个请求对应的日志文件。从不同服务端的接口日志中抓取到的日志内容可以生成一个日志文件,日志文件中可以对日志内容的来源进行标记。
日志文件中记录了请求标识、请求包和对应的响应数据。其中,响应数据中包括返回码。如果返回码与预设值不同,定位服务可以将该返回码标记为异常返回码。定位服务在日志文件中查询异常返回码对应的来源,若其对应的来源为本地服务端,则表示异常发生在本地服务端。若异常返回码对应的来源为第三方服务端,则表示异常发生在第三方服务端。由此在客户端发生异常时,能够快速识别出异常所在的服务端。
进一步的,可以存在多个异常返回码。如果部分异常返回码对应的来源为本地服务端,另一部分异常返回码对应的来源为第三方服务端,则表示本地服务端和第三方服务端均发生了异常。
在一个实施例中,日志文件包括本地日志文件和第三方日志文件,利用日志文件识别异常是否发生在本地服务端的步骤,包括:将与预设值不同的返回码标记为异常返回码;获取本地日志文件,在本地日志文件中查询是否存在异常返回码;若存在,则记录异常发生在本地服务端。
本实施例中,当客户端在运行中发生异常时,中间服务器通过定位服务在服务端的接口日志中抓取相应的日志内容,利用抓取到的日志内容生成多个请求对应的日志文件。可以将从不同服务端的接口日志中抓取到的日志内容生成不同的日志文件。其中,利用从本地服务端的接口日志中抓取到的日志内容生成的日志文件可以称为本地日志文件。利用从第三方服务端的接口日志中抓取到的日志内容生成的日志文件可以称为第三方日志文件。
日志文件中记录了请求标识、请求包和对应的响应数据。其中,响应数据中包括返回码。如果返回码与预设值不同,定位服务可以将该返回码标记为异常返回码。定位服务可以在本地日志文件中查询是否存在异常返回码,若存在,则表示异常发生在本地服务端。若不存在,定位服务可以在第三方日志文件中查询是否存在异常返回码,若存在,则表示异常发生在第三方服务端。由此在客户端发生异常时,能够快速识别出异常所在的服务端。
进一步的,可以存在多个异常返回码。如果定位服务可以在本地日志文件中查询到部分异常返回码,在第三方日志文件中查询到另一部分异常返回码,则表示本地服务端和第三方服务端均发生了异常。
在一个实施例中,该方法还包括:当客户端的异常发生在本地服务端时,根据日志文件获取本地服务端多个程序模块之间的数据流向和业务流向;根据数据流向和业务流向对异常部位进行定位。
本地服务端上运行了多个程序模块,以此支持本地服务端的工作。程序模块具有对应的接口。本地服务端通过不同的接口可以调用不同的程序模块。当客户端在运行中出现的异常存在于本地服务端时,定位服务可以利用日志文件对本地服务端中多个程序模块所对应的数据流向和业务流向进行分析,由此可以精确定位异常所在的程序模块。
在其中一个实施例中,根据日志文件获取本地服务端多个程序模块之间的数据流向和业务流向的步骤,包括:根据日志文件获取多个程序模块对应的日志结构;对多个模块对应的日志结构进行解析,得到本地服务端多个程序模块之间的数据流向和业务流向。
接口日志中可以包括每个程序模块的输入和输出。输入可以包括与请求包对应的传递参数,输出可以包括与请求包对应的响应数据。定位服务可以获取日志文件,日志文件中包括了与客户端进行通信的多个程序模块的日志内容。定位服务通过对程序模块的日志结构进行解析,提取每个程序模块的输入和输出,根据程序模块之间的输入和输出,得到多个程序模块之间的数据流向。
程序模块之间可以存在调用关系。例如,程序模块的输入用in表示,输出用out表示。比如A程序模块调用了B程序模块,那么日志文件中会按序输出AinBinBoutAout这种闭包格式的日志结构。若A程序模块与B程序模块不存在调用关系,则输出AinAoutBinBout的日志结构。定位服务通过对程序模块的日志结构进行解析,得到程序模块之间的调用关系。根据程序模块之间的调用关系可以得到多个程序模块之间的业务流向。
当本地服务端的接口出现异常时,定位服务可以根据程序模块之间的数据流向和业务流向,将异常定位在具体的某一个程序模块。由此有效提高了异常定位的准确性。
如图4所示,本申请还提供了一种客户端异常定位装置,该装置的内部结构可对应于如图2所示的结构,下述每个组成部分可全部或部分通过软件、硬件或其组合来实现。在一个实施例中,客户端异常定位装置包括:代理程序402和定位服务404,其中:
代理程序402,用于当在终端运行的客户端向服务端发送请求时,拦截请求,记录请求对应的请求标识;将拦截到的请求转发至服务端,以使得服务端根据请求返回对应的响应数据;对服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件;将拦截到的响应数据转发至客户端。
定位服务404,用于当客户端出现异常时,根据请求标识在服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成日志文件;利用响应文件和日志文件对客户端的异常进行定位。
在一个实施例中,定位服务402还用于获取响应文件中的返回码;若返回码与预设值相同,则记录异常发生在客户端;若返回码与预设值不同,则记录异常发生在服务端;服务端包括本地服务端和第三方服务端;当异常发生在服务端时,利用日志文件识别异常是否发生在本地服务端,若是,则记录异常发生在本地服务端,否则记录异常发生在第三方服务端。
在一个实施例中,定位服务402还用于将与预设值不同的返回码标记为异常返回码;在日志文件中查询异常返回码对应的来源是否为本地服务端;若是,则记录异常发生在本地服务端。
在一个实施例中,定位服务402还用于将与预设值不同的返回码标记为异常返回码;获取本地日志文件,在本地日志文件中查询是否存在异常返回码;若存在,则记录异常发生在本地服务端。
在一个实施例中,定位服务402还用于当客户端的异常发生在本地服务端时,根据日志文件获取本地服务端多个程序模块之间的数据流向和业务流向;根据数据流向和业务流向对异常部位进行定位。
在一个实施例中,定位服务402还用于根据日志文件获取多个程序模块对应的日志结构;对多个模块对应的日志结构进行解析,得到本地服务端多个程序模块之间的数据流向和业务流向。
一种计算机设备,包括存储器及处理器,存储器中储存有计算机可读指令,指令被处理器执行时,使得处理器执行以下步骤:
当在终端运行的客户端向服务端发送请求时,拦截请求,记录请求对应的请求标识;
将拦截到的请求转发至服务端,以使得服务端根据请求返回对应的响应数据;
对服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件;
将拦截到的响应数据转发至客户端;
当客户端出现异常时,根据请求标识在服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成多个请求对应的日志文件;
利用响应文件和日志文件对客户端的异常进行定位。
在一个实施例中,处理器执行计算机可读指令时还执行以下步骤:
获取响应文件中的返回码;
若返回码与预设值相同,则记录异常发生在客户端;
若返回码与预设值不同,则记录异常发生在服务端;服务端包括本地服务端和第三方服务端;
当异常发生在服务端时,利用日志文件识别异常是否发生在本地服务端,若是,则记录异常发生在本地服务端,否则记录异常发生在第三方服务端。
在一个实施例中,处理器执行计算机可读指令时还执行以下步骤:
将与预设值不同的返回码标记为异常返回码;
在日志文件中查询异常返回码对应的来源是否为本地服务端;
若是,则记录异常发生在本地服务端。
在一个实施例中,处理器执行计算机可读指令时还执行以下步骤:
将与预设值不同的返回码标记为异常返回码;
获取本地日志文件,在本地日志文件中查询是否存在异常返回码;
若存在,则记录异常发生在本地服务端。
在一个实施例中,处理器执行计算机可读指令时还执行以下步骤:
当客户端的异常发生在本地服务端时,根据日志文件获取本地服务端多个程序模块之间的数据流向和业务流向;
根据数据流向和业务流向对异常部位进行定位。
在一个实施例中,处理器执行计算机可读指令时还执行以下步骤:
根据日志文件获取多个程序模块对应的日志结构;
对多个模块对应的日志结构进行解析,得到本地服务端多个程序模块之间的数据流向和业务流向。
在一个实施例中,提供了一个或多个存储有计算机可读指令的计算机可读非易失性存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:
当在终端运行的客户端向服务端发送请求时,拦截请求,记录请求对应的请求标识;
将拦截到的请求转发至服务端,以使得服务端根据请求返回对应的响应数据;
对服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件;
将拦截到的响应数据转发至客户端;
当客户端出现异常时,根据请求标识在服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成多个请求对应的日志文件;
利用响应文件和日志文件对客户端的异常进行定位。
在一个实施例中,计算机可读指令被处理器执行时还执行以下步骤:
获取响应文件中的返回码;
若返回码与预设值相同,则记录异常发生在客户端;
若返回码与预设值不同,则记录异常发生在服务端;服务端包括本地服务端和第三方服务端;
当异常发生在服务端时,利用日志文件识别异常是否发生在本地服务端,若是,则记录异常发生在本地服务端,否则记录异常发生在第三方服务端。
在一个实施例中,计算机可读指令被处理器执行时还执行以下步骤:
将与预设值不同的返回码标记为异常返回码;
在日志文件中查询异常返回码对应的来源是否为本地服务端;
若是,则记录异常发生在本地服务端。
在一个实施例中,计算机可读指令被处理器执行时还执行以下步骤:
将与预设值不同的返回码标记为异常返回码;
获取本地日志文件,在本地日志文件中查询是否存在异常返回码;
若存在,则记录异常发生在本地服务端。
在一个实施例中,计算机可读指令被处理器执行时还执行以下步骤:
当客户端的异常发生在本地服务端时,根据日志文件获取本地服务端多个程序模块之间的数据流向和业务流向;
根据数据流向和业务流向对异常部位进行定位。
在一个实施例中,计算机可读指令被处理器执行时还执行以下步骤:
根据日志文件获取多个程序模块对应的日志结构;
对多个模块对应的日志结构进行解析,得到本地服务端多个程序模块之间的数据流向和业务流向。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一非易失性计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (8)

1.一种客户端异常定位方法,应用于中间服务器,所述方法包括:
当在终端运行的客户端向服务端发送请求时,拦截所述请求,记录所述请求对应的请求标识;
将拦截到的请求转发至服务端,以使得服务端根据所述请求返回对应的响应数据;
对服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件;
将拦截到的响应数据转发至客户端;
当客户端出现异常时,启动定位服务,通过定位服务获取本地服务端的接口日志以及第三方服务端的接口日志,根据请求标识在服务端的接口日志和第三方服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成日志文件;
利用所述响应文件和日志文件对客户端的异常进行定位,包括:获取响应文件中的返回码;若返回码与预设值相同,则记录异常发生在客户端;若返回码与预设值不同,则记录异常发生在服务端;所述服务端包括本地服务端和第三方服务端;当异常发生在服务端时,利用日志文件识别异常是否发生在本地服务端,若是,则记录异常发生在本地服务端,否则记录异常发生在第三方服务端。
2.根据权利要求1所述的方法,其特征在于,所述利用日志文件识别异常是否发生在本地服务端的步骤,包括:
将与预设值不同的返回码标记为异常返回码;
在所述日志文件中查询所述异常返回码对应的来源是否为本地服务端;
若是,则记录异常发生在本地服务端。
3.根据权利要求1所述的方法,其特征在于,所述日志文件包括本地日志文件,所述利用日志文件识别异常是否发生在本地服务端的步骤,包括:
将与预设值不同的返回码标记为异常返回码;
获取本地日志文件,在所述本地日志文件中查询是否存在异常返回码;
若存在,则记录异常发生在本地服务端。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当客户端的异常发生在本地服务端时,根据所述日志文件获取本地服务端多个程序模块之间的数据流向和业务流向;
根据所述数据流向和业务流向对异常部位进行定位。
5.根据权利要求4所述的方法,其特征在于,所述根据所述日志文件获取本地服务端多个程序模块之间的数据流向和业务流向的步骤,包括:
根据日志文件获取多个程序模块对应的日志结构;
对多个模块对应的日志结构进行解析,得到本地服务端多个程序模块之间的数据流向和业务流向。
6.一种客户端异常定位装置,其特征在于,所述装置包括:
代理程序,用于当在终端运行的客户端向服务端发送请求时,拦截所述请求,记录所述请求对应的请求标识;将拦截到的请求转发至服务端,以使得服务端根据所述请求返回对应的响应数据;对服务端返回的响应数据进行拦截,将拦截到的响应数据记录至响应文件;将拦截到的响应数据转发至客户端;
定位服务,用于当客户端出现异常时,当客户端出现异常时,启动定位服务,通过定位服务获取本地服务端的接口日志以及第三方服务端的接口日志,根据请求标识在服务端的接口日志和第三方服务端的接口日志中抓取日志内容,利用抓取到的日志内容生成日志文件;利用所述响应文件和日志文件对客户端的异常进行定位,包括获取响应文件中的返回码;若返回码与预设值相同,则记录异常发生在客户端;若返回码与预设值不同,则记录异常发生在服务端;所述服务端包括本地服务端和第三方服务端;当异常发生在服务端时,利用日志文件识别异常是否发生在本地服务端,若是,则记录异常发生在本地服务端,否则记录异常发生在第三方服务端。
7.一种计算机设备,包括存储器及处理器,所述存储器中储存有计算机可读指令,所述指令被所述处理器执行时,使得所述处理器执行权利要求1-5中任意一项所述方法的步骤。
8.一个或多个存储有计算机可读指令的计算机可读非易失性存储介质,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行权利要求1-5中任意一项所述方法的步骤。
CN201710618305.2A 2017-07-26 2017-07-26 客户端异常定位方法、装置、计算机设备和存储介质 Active CN107678869B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710618305.2A CN107678869B (zh) 2017-07-26 2017-07-26 客户端异常定位方法、装置、计算机设备和存储介质
PCT/CN2017/104846 WO2019019394A1 (zh) 2017-07-26 2017-09-30 客户端异常定位方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710618305.2A CN107678869B (zh) 2017-07-26 2017-07-26 客户端异常定位方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN107678869A CN107678869A (zh) 2018-02-09
CN107678869B true CN107678869B (zh) 2020-01-10

Family

ID=61134048

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710618305.2A Active CN107678869B (zh) 2017-07-26 2017-07-26 客户端异常定位方法、装置、计算机设备和存储介质

Country Status (2)

Country Link
CN (1) CN107678869B (zh)
WO (1) WO2019019394A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108683562B (zh) * 2018-05-18 2022-05-17 深圳壹账通智能科技有限公司 异常检测定位方法、装置、计算机设备及存储介质
CN108762742A (zh) * 2018-05-18 2018-11-06 深圳壹账通智能科技有限公司 数据流向及业务流向的分析方法、装置、设备及介质
CN109165127B (zh) * 2018-08-29 2022-09-02 北京奇艺世纪科技有限公司 问题接口的定位方法、装置及电子设备
CN109522206B (zh) * 2018-09-26 2023-09-26 平安科技(深圳)有限公司 异常数据定位方法、装置、计算机设备及存储介质
CN109144884A (zh) * 2018-09-29 2019-01-04 平安科技(深圳)有限公司 程序错误定位方法、装置、及计算机可读存储介质
CN111177428B (zh) * 2018-11-12 2023-06-30 马上消费金融股份有限公司 一种业务异常的处理方法及相关装置
CN111818025B (zh) * 2020-06-23 2022-10-14 五八有限公司 一种用户终端的检测方法和装置
CN112506761B (zh) * 2020-11-26 2022-07-05 福州智象信息技术有限公司 一种生产环境服务端接口调试方法及系统
CN112463429A (zh) * 2020-12-03 2021-03-09 北京五八信息技术有限公司 一种信息处理方法及装置
CN112783718A (zh) * 2020-12-31 2021-05-11 航天信息股份有限公司 一种用于系统异常的管理系统及方法
CN113434464A (zh) * 2021-06-24 2021-09-24 江苏创源电子有限公司 一种分布式日志处理系统和方法
CN113626239A (zh) * 2021-07-27 2021-11-09 福建天泉教育科技有限公司 一种功能验证方法及终端
CN114579194B (zh) * 2022-03-08 2024-04-05 杭州每刻科技有限公司 一种基于Spring远程调用的异常处理方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119235A (zh) * 2007-09-20 2008-02-06 金蝶软件(中国)有限公司 一种在应用服务系统中定位客户端的方法和系统
CN105978723A (zh) * 2016-05-11 2016-09-28 广州唯品会信息科技有限公司 网络信息管理方法及装置
CN106844156A (zh) * 2017-01-24 2017-06-13 武汉虹信技术服务有限责任公司 智能建筑综合管理平台系统中wcf通信消息拦截方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070293232A1 (en) * 2006-06-20 2007-12-20 Aruze Corp. Wireless communication failure monitoring system and monitoring device
CN106155890A (zh) * 2015-04-02 2016-11-23 深圳市腾讯计算机系统有限公司 平台测试方法和系统
CN105955862A (zh) * 2016-04-15 2016-09-21 乐视控股(北京)有限公司 一种异常问题的监测定位方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119235A (zh) * 2007-09-20 2008-02-06 金蝶软件(中国)有限公司 一种在应用服务系统中定位客户端的方法和系统
CN105978723A (zh) * 2016-05-11 2016-09-28 广州唯品会信息科技有限公司 网络信息管理方法及装置
CN106844156A (zh) * 2017-01-24 2017-06-13 武汉虹信技术服务有限责任公司 智能建筑综合管理平台系统中wcf通信消息拦截方法

Also Published As

Publication number Publication date
WO2019019394A1 (zh) 2019-01-31
CN107678869A (zh) 2018-02-09

Similar Documents

Publication Publication Date Title
CN107678869B (zh) 客户端异常定位方法、装置、计算机设备和存储介质
CN110647438B (zh) 事件监控方法、装置、计算机设备和存储介质
CN109446068B (zh) 接口测试方法、装置、计算机设备和存储介质
CN108337296B (zh) 消息推送处理方法、装置、计算机设备和存储介质
CN107766190B (zh) 接口测试方法、装置、计算机设备和存储介质
CN110995468B (zh) 待分析系统的系统故障处理方法、装置、设备和存储介质
CN110830577B (zh) 服务请求调用追踪方法、装置、计算机设备及存储介质
CN108427613B (zh) 异常接口定位方法、装置、计算机设备和存储介质
CN110740103A (zh) 业务请求处理方法、装置、计算机设备和存储介质
US8250138B2 (en) File transfer security system and method
CN110765001B (zh) 针对应用系统的模块化自动测试方法和装置
US9276819B2 (en) Network traffic monitoring
CN112202635B (zh) 链路的监控方法、装置、存储介质以及电子装置
CN111756697B (zh) Api安全检测方法、装置、存储介质及计算机设备
CN109246078B (zh) 一种数据交互方法及服务器
CN111159233B (zh) 分布式缓存方法、系统、计算机设备以及存储介质
CN115208951B (zh) 请求处理方法、装置、电子设备及计算机可读存储介质
CN111176941A (zh) 一种数据处理的方法、装置和存储介质
CN111078447A (zh) 一种微服务架构中的异常定位方法、装置、设备、介质
CN109802842B (zh) 应用拓扑的生成方法及相关设备
CN107404456B (zh) 错误定位方法及装置
CN108650123B (zh) 故障信息记录方法、装置、设备和存储介质
CN110830500A (zh) 网络攻击追踪方法、装置、电子设备及可读存储介质
CN112835856A (zh) 一种日志数据查询方法及装置、设备、介质
CN115328734A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20180524

Address after: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Applicant after: Shenzhen one ledger Intelligent Technology Co., Ltd.

Address before: 200000 Xuhui District, Shanghai Kai Bin Road 166, 9, 10 level.

Applicant before: Shanghai Financial Technologies Ltd

CB02 Change of applicant information
CB02 Change of applicant information

Address after: 518000 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong

Applicant after: Shenzhen one ledger Intelligent Technology Co., Ltd.

Address before: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Applicant before: Shenzhen one ledger Intelligent Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant