CN114648323A - 面向业务场景的调用链处理方法、装置及介质 - Google Patents
面向业务场景的调用链处理方法、装置及介质 Download PDFInfo
- Publication number
- CN114648323A CN114648323A CN202210276219.9A CN202210276219A CN114648323A CN 114648323 A CN114648323 A CN 114648323A CN 202210276219 A CN202210276219 A CN 202210276219A CN 114648323 A CN114648323 A CN 114648323A
- Authority
- CN
- China
- Prior art keywords
- service
- chain
- call chain
- call
- scene
- 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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
- G06Q20/102—Bill distribution or payments
-
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Development Economics (AREA)
- Human Computer Interaction (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开提供一种面向业务场景的调用链处理方法、装置及介质,包括:显示业务场景调用链查询界面,包含用于输入待查询的业务场景的标识信息的第一控件、用于输入业务场景的处理时间的第二控件、用于输入业务信息的第三控件和用于触发查询的第四控件;响应于面向第四控件的第一交互操作,根据已输入的目标业务场景的相关信息,显示目标业务场景的业务调用链;响应于面向业务调用链中目标业务调用链的第二交互操作,显示目标业务调用链的至少一个系统级调用链。通过本公开可确定一个业务场景下的业务调用链及该业务调用链下的系统级调用链,将业务调用链和系统级调用级融合,可以更加统一、完整地展示业务场景的调用链信息。
Description
技术领域
本公开涉及云网业务领域,尤其涉及一种面向业务场景的调用链处理方法、装置及介质。
背景技术
随着云网业务规模的逐渐扩大,越来越多的用户通过使用终端设备,办理业务。然而,随着业务规模的逐渐扩大以及业务种类的不断丰富,业务场景的调用链也逐渐复杂化。
现有的调用链获取方法可以确定单一系统级调用链。该系统及调用链是由多个后端服务串联而成的。但是,这种方法无法确定包括前端服务在内的业务级调用链。
发明内容
本公开提供了一种面向业务场景的调用链处理方法、装置及介质,以在确定系统级调用链的同时,还可以确定包括前端服务在内的业务级调用链。
第一方面,本公开提供了一种面向业务场景的调用链处理方法,包括:
显示业务场景调用链查询界面,业务场景调用链查询界面包含用于输入待查询的业务场景的标识信息的第一控件、用于输入业务场景的处理时间的第二控件、用于输入业务信息的第三控件和用于触发查询的第四控件;
响应于面向第四控件的第一交互操作,根据已输入的目标业务场景的相关信息,显示目标业务场景的业务调用链,相关信息包含标识信息、处理时间以及业务信息中的至少一种;
响应于面向业务调用链中目标业务调用链的第二交互操作,显示目标业务调用链的至少一个系统级调用链。
一种可能的实施方式中,根据已输入的目标业务场景的相关信息,显示目标业务场景的业务调用链,包括:获取服务总线的调用日志;根据已输入的目标业务场景的相关信息,对调用日志进行数据关联性分析,得到目标业务场景的业务调用链;显示目标业务场景的业务调用链。
一种可能的实施方式中,根据已输入的目标业务场景的相关信息,对调用日志进行数据关联性分析,得到目标业务场景的业务调用链,包括:根已输入的目标业务场景的相关信息,对服务总线的调用日志进行数据关联性分析,得到目标业务场景的多个能力族,能力族包含有相同业务信息的调用日志按时间排序,以业务调用链为键值对的键,以请求报文、响应报文及相关依赖信息为键值对的值。
一种可能的实施方式中,响应于面向业务调用链中目标业务调用链的第二交互操作,显示目标业务调用链的至少一个系统级调用链,包括:响应于面向业务调用链中目标业务调用链的第二交互操作,显示目标业务调用链的基本信息,基本信息包含请求报文、响应报文及系统级调用链的追踪序列号;响应于面向追踪序列号的第三交互操作,显示目标业务调用链的至少一个系统级调用链。
一种可能的实施方式中,响应于面向追踪序列号的第三交互操作,显示目标业务调用链的至少一个系统级调用链,包括:响应于面向追踪序列号的第三交互操作,基于追踪序列号,获取目标业务调用链的至少一个系统级调用链,目标业务调用链的至少一个系统级调用链是根据Agent将追踪序列号对应的各个环节的系统级日志进行串联,并存储到数据库中的;显示目标业务调用链的至少一个系统级调用链。
一种可能的实施方式中,还包括:根据基本信息,确定目标业务调用链的执行状态;响应于目标业务调用链的执行状态异常,确定目标业务调用链出现故障。
一种可能的实施方式中,还包括:在确定目标业务调用链出现故障后,根据目标业务调用链的追踪序列号,确定目标业务调用链的至少一个系统级调用链;基于系统级调用链,确定故障位置。
第二方面,本公开提供一种面向业务场景的调用链处理装置,包括:
第一显示模块,用于显示业务场景调用链查询界面,所述业务场景调用链查询界面包含用于输入待查询的业务场景的标识信息的第一控件、用于输入所述业务场景的处理时间的第二控件、用于输入业务信息的第三控件和用于触发查询的第四控件;
第二显示模块,用于响应于面向所述第四控件的第一交互操作,根据已输入的目标业务场景的相关信息,显示所述目标业务场景的业务调用链,所述相关信息包含标识信息、处理时间以及业务信息中的至少一种;
第三显示模块,用于响应于面向所述业务调用链中目标业务调用链的第二交互操作,显示所述目标业务调用链的至少一个系统级调用链。
一种可能的实施方式中,第二显示模块具体用于:获取服务总线的调用日志;根据已输入的目标业务场景的相关信息,对调用日志进行数据关联性分析,得到目标业务场景的业务调用链;显示目标业务场景的业务调用链。
一种可能的实施方式中,还包括分析模块,用于根据已输入的目标业务场景的相关信息,对服务总线的调用日志进行数据关联性分析,得到目标业务场景的多个能力族,能力族包含有相同业务信息的调用日志按时间排序,以业务调用链为键值对的键,以请求报文、响应报文及相关依赖信息为键值对的值。
一种可能的实施方式中,第三显示模块具体用于:响应于面向业务调用链中目标业务调用链的第二交互操作,显示目标业务调用链的基本信息,基本信息包含请求报文、响应报文及系统级调用链的追踪序列号;响应于面向追踪序列号的第三交互操作,显示目标业务调用链的至少一个系统级调用链。
一种可能的实施方式中,第三显示模块具体用于:响应于面向追踪序列号的第三交互操作,基于追踪序列号,获取目标业务调用链的至少一个系统级调用链,目标业务调用链的至少一个系统级调用链是根据Agent将追踪序列号对应的各个环节的系统级日志进行串联,并存储到数据库中的;显示目标业务调用链的至少一个系统级调用链。
一种可能的实施方式中,还包括确定模块,用于根据基本信息,确定目标业务调用链的执行状态;响应于目标业务调用链的执行状态异常,确定目标业务调用链出现故障。
一种可能的实施方式中,确定模块还用于:在确定目标业务调用链出现故障后,根据目标业务调用链的追踪序列号,确定目标业务调用链的至少一个系统级调用链;基于系统级调用链,确定故障位置。
第三方面,本公开提供一种电子设备,包括:
存储器和处理器;
存储器用于存储程序指令;
处理器用于调用所述存储器中的程序指令执行第一方面的面向业务场景的调用链处理方法。
第四方面,本公开一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序指令,计算机程序指令被执行时,实现第一方面的面向业务场景的调用链处理方法。
第五方面,本公开提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面的面向业务场景的调用链处理方法。
本公开提供一种面向业务场景的调用链处理方法、装置及介质,包括:显示业务场景调用链查询界面,业务场景调用链查询界面包含用于输入待查询的业务场景的标识信息的第一控件、用于输入业务场景的处理时间的第二控件、用于输入业务信息的第三控件和用于触发查询的第四控件;响应于面向第四控件的第一交互操作,根据已输入的目标业务场景的相关信息,显示目标业务场景的业务调用链,相关信息包含标识信息、处理时间以及业务信息中的至少一种;响应于面向业务调用链中目标业务调用链的第二交互操作,显示目标业务调用链的至少一个系统级调用链。通过本公开可以确定一个业务场景下的业务调用链,以及该业务调用链下的至少一个系统级调用链,将业务调用链和系统级调用级融合,从而可以更加统一、完整地展示业务场景的调用链信息。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开提供的基于Dapper的系统级调用链架构图;
图2为本公开一实施例提供的应用场景图;
图3-a为本公开一实施例提供的业务场景的调用链处理方法的流程图;
图3-b为本公开一实施例提供的界面示意图;
图4为本公开一实施例提供的前端服务的基本信息;
图5为本公开一实施例提供的系统级调用链示意图;
图6为本公开一实施例提供的业务场景的调用链处理系统的逻辑示意图;
图7为本公开一实施例提供的业务结构图;
图8为本公开一实施例的业务场景的调用链处理系统的结构示意图;
图9为本公开一实施例提供的面向业务场景的调用链处理装置的结构示意图;
图10为本公开一实施例提供的电子设备的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
目前,基于Dapper(一种对象映射器)可以实现分布式系统中各个被调用服务之间的串联。其中,通过唯一的追踪序列号(Trace identity,简称TraceId),将一次调用涉及到的各个服务串联为一条链路,并且可以通过前端展示层进行展示。如图1所示,图1为本公开提供的基于Dapper的系统级调用链架构图。
然而,发明人在研究中发现,以图1为例,Dapper仅可以确定前端服务1之下的后端服务1、后端服务2、后端服务3以及后端服务4串联而成的系统级调用链。若存在前端服务2,此时Dapper无法确定将前端服务1和前端服务2相互串联的业务级调用链,由于一个业务场景需要若干个前端服务配合实现,因此Dapper无法统一地将若干个前端服务确定串联起来。
因此,基于该问题,本公开提出了一种面向业务场景的调用链处理方法、装置及介质,通过将业务级调用链和系统级调用链结合,统一化地对外展示包括业务场景的前端服务和后端服务在内的调用链信息。
图2是本公开一实施例的应用场景图,图2中,包括电子设备201和服务器202,电子设备201通过与服务器202进行信息交互。其中,业务场景的前端服务和后端服务的确定,以及业务调用链和系统级调用链的构建是可以在服务器202端执行的,电子设备201的显示端可以用于触发查询业务调用链和系统级调用链,并显示在交互界面上。
电子设备201和服务器202可以通过有线的方式进行信息交互,也可以通过无线的方式进行信息交互。图2的应用场景中还可以包括数据存储设备,并且,电子设备201可以是电脑、手机或者平板的任意一种,本公开不对其加以限定。
接下来,通过具体实施例介绍面向业务场景的调用链处理方法、装置及介质。
图3-a为本公开一实施例提供的业务场景的调用链处理方法的流程图。
如图3-a所示,该方法包括:
S301、显示业务场景调用链查询界面,业务场景调用链查询界面包含用于输入待查询的业务场景的标识信息的第一控件、用于输入业务场景的处理时间的第二控件、用于输入业务信息的第三控件和用于触发查询的第四控件。
该业务场景调用链查询界面可以由任一具有显示功能的电子设备显示,电子设备可以是手机、电脑或者其他具备显示器的电子设备。
其中,业务场景的标识信息能够反映业务场景的具体类型,例如,业务场景可以是用户提交订单,用户更换自身信息,或者用户咨询业务信息等等。业务信息可以是一段序列号,该序列号可以包括业务场景办理的时间、业务场景的内容以及业务场景的优先级等等。
示例地,图3-b为本公开一实施例提供的界面示意图。如图3-b所示,第一控件301对应于业务场景的标识信息的输入框,第二控件302对应于业务场景的处理时间的输入框,第三控件303对应用于输入业务场景信息,第四控件304用于触发查询。该示例中,业务场景的标识信息为订单提交场景,业务场景的处理时间为2021-10-14,业务信息为2110140950976819。通过触发第四控件304查询后,会显示业务调用链,该业务调用链包含了3个前端服务,本公开不对业务调用链的具体内容进行限定。该前端服务中:“User”对应于获取用户,“Order”对应于用户请求,“Payment”对应于付款。
该图3-b中,第一控件301、第二控件302、第三控件303和第四控件304显示在业务场景调用链查询界面的第一区域,业务调用链显示在业务场景调用链查询界面的第二区域,但该版面形式仅为示例说明,不构成对本公开的限制。
S302、响应于面向第四控件的第一交互操作,根据已输入的目标业务场景的相关信息,显示目标业务场景的业务调用链,相关信息包含标识信息、处理时间以及业务信息中的至少一种。
业务调用链用于将业务场景对应的前端服务串联起来,并在交互界面上被统一展示。其中,业务调用链包括的前端服务可以是获取用户身份、修改用户密码、用户发生订单请求、用户修改订单请求、用户取消订单以及用户付款等等。
S303、响应于面向所述业务调用链中目标业务调用链的第二交互操作,显示所述目标业务调用链的至少一个系统级调用链。
需要说明的是,在本公开任一实施例中,第一交互操作和/或第二交互操作可以是点击屏幕,触碰屏幕、鼠标指针单击或者通过声音触发交互等等,对此本公开不予限制。
业务调用链中包含至少一个前端服务,由于每个前端服务都还会调用至少一个后端服务,因此目标业务调用链中,包含的每个前端服务都对应一个系统级调用链。
示例地,系统级调用链可以通过Dapper和该前端服务的追踪序列号来确定。
另外,业务调用链和系统级调用链可以同时显示在交互界面中,也可以分步显示在交互界面中,即通过对业务调用链进行操作后,显示对应的系统级调用链,本公开不加以限定。
本公开实施例中,提供了一种面向业务场景的调用链处理方法,该方法包括:显示业务场景调用链查询界面,业务场景调用链查询界面包含用于输入待查询的业务场景的标识信息的第一控件、用于输入业务场景的处理时间的第二控件、用于输入业务信息的第三控件和用于触发查询的第四控件;响应于面向第四控件的第一交互操作,根据已输入的目标业务场景的相关信息,显示目标业务场景的业务调用链,相关信息包含标识信息、处理时间以及业务信息中的至少一种;响应于面向业务调用链中目标业务调用链的第二交互操作,显示目标业务调用链的至少一个系统级调用链。通过本公开可以确定一个业务场景下的业务调用链,以及该业务调用链下的系统级调用链,将业务调用链和系统级调用级融合,可以更加统一、完整的展示业务场景的调用链信息。
一些实施例中,关于显示业务调用链的至少一个系统级调用链,可以包括:响应于面向所述业务调用链中目标业务调用链的第二交互操作,显示所述目标业务调用链的基本信息,所述基本信息包含请求报文、响应报文及系统级调用链的追踪序列号;响应于面向所述追踪序列号的第三交互操作,显示所述目标业务调用链的至少一个系统级调用链。
示例地,该实施例将系统级调用链和业务调用链分为了两步。即在业务调用链的基础上,通过交互操作确定系统级调用链。图4为本公开一实施例提供的前端服务的基本信息。如图4所示,图4中,在业务调用链中选择了“User”获取用户这一前端服务后,会显示获取用户这一前端服务的请求报文、响应报文以及该前端服务的追踪序列号。具体地,可以发现用户的姓名为张三、该前端服务的响应报文显示执行成功,并且,获取用户这一前端服务的追踪序列号为0af51f3516342229279986067db2a5。
本实施例中,通过对业务调用链上的前端服务进行选择(交互操作),可以确定每个前端服务的追踪序列号,并且可以为系统级调用链的查看提供入口。
基于上述实施例,进一步确定系统级调用链可以包括:响应于面向追踪序列号的第三交互操作,基于追踪序列号,获取目标业务调用链的至少一个系统级调用链,目标业务调用链的至少一个系统级调用链是根据Agent将追踪序列号对应的各个环节的系统级日志进行串联,并存储到数据库中的;显示目标业务调用链的至少一个系统级调用链。
图5为本公开一实施例提供的系统级调用链示意图。如图5所示,对于图4中追踪序列号为0af51f3516342229279986067db2a5的前端服务,经过第三交互操作后,可以确定该前端服务下的系统级调用链。该第三交互操作可以和第一交互操作或者第二交互操作相同,也可以不同。该系统级调用链中,前端服务“getUser”包括了“getName”、“getAge”两个后端服务,“getAge”调用了“logging”日志服务,“getName”则访问了一次“Redis”内存库,该调用链均通过“Pinpoint”实现。
基于图3-a、图3-b至图5,可以将业务调用链和系统级调用链结合,分层次的对外显示。其一,可以清楚查询一个业务场景下所包含的各个前端服务,该前端服务由业务调用链串联;其二,在业务调用链中,可以进一步确定每个前端服务的后端服务,后端服务通过系统级调用链串联。
另外,由于业务数据都是保存在日志中的,无法直观地根据业务场景确定前端服务。因此,在显示上述业务调用链和系统级调用链之前,需要先确定业务场景所包含的前端服务,进而以业务调用链的形式进行展示。一些实施例中,根据已输入的目标业务场景的相关信息,显示目标业务场景的业务调用链,包括:获取服务总线的调用日志;根据已输入的目标业务场景的相关信息,对调用日志进行数据关联性分析,得到目标业务场景的业务调用链;显示目标业务场景的业务调用链。
其中,服务总线记录的调用日志大致包含业务场景的处理时间、服务地址(也可以称为服务URL)、请求报文、响应报文、服务执行花费时间、追踪序列号等。通过基于输入的业务场景信息,在服务总线的调用日志中确定该业务场景的业务调用链。
进一步地,可以通过表1来介绍服务总线的调用日志。表1中,ID表示数字序号,Req_time表示业务场景的处理时间,Service_ucl表示服务URL,Req_info表示请求报文,Rsp_info表示响应报文,Proc_time表示服务执行花费时间(或者响应时间),TraceId表示追踪序列号。
表1
并且,表2进一步对表1中的字段进行详细说明,表2如下:
表2
字段名 | 字段类型 | 字段说明 |
ID | bigint | 数字序号 |
Req_time | datetime | 业务场景的处理时间 |
Service_url | string | 服务URL |
Req_info | string | 请求报文 |
Rsp_info | string | 响应报文 |
Proc_time | int | 处理时间(单位:毫秒) |
TraceId | string | 追踪序列号 |
一种可实现的实施方式中,上述根据已输入的目标业务场景的相关信息,对调用日志进行数据关联性分析,得到目标业务场景的业务调用链,可以包括:根据已输入的目标业务场景的相关信息,对服务总线的调用日志进行数据关联性分析,得到目标业务场景的多个能力族,能力族包含有相同业务信息的调用日志按时间排序,以业务调用链为键值对的键,以请求报文、响应报文及相关依赖信息为键值对的值。
示例地,数据关联性可以是根据业务场景信息,从服务总线中的调用日志中查询相关的前端服务。确定前端服务后,前端服务与能力族一一对应。具体地,通过分析单位时间内(一般的,设定为10分钟)服务总线的调用日志,将含有相同业务值的调用日志汇聚到一起。按时间排序,以服务URL为键,以请求、响应日志及其他依赖信息为值,形成初步的能力族。由表1和表2可知,一个服务URL对应一个前端服务,因此,前端服务组成的业务调用链也可以作为键。另外,由于以上三条日志中均有2110140950976819。而当业务场景信息也为2110140950976819时,可以匹配出上述3个服务URL,即三个前端服务,每个前端服务又对应一个能力族。能力族可以被存储在业务场景配置库中,该业务场景配置库中能力族的数据模型即为业务场景的数据模型,可以通过表3和表4来反映能力族的数据模型:
表3
表4
综上,通过上述方法可以确定前端服务,进而确定业务调用链。
可选地,将业务调用链和系统级调用链统一对外显示后,本公开的面向业务场景的调用链处理方法还可以包括:根据基本信息,确定目标业务调用链的执行状态;响应于目标业务调用链的执行状态异常,确定目标业务调用链出现故障。
由于在业务的办理过程中,一个业务场景往往会通过调用多个前端服务来完成一个完整的业务场景。当用户层报错时,用户仅能提供用户级的报错信息,因用户层主要是业务信息(例如订单号、业务号码等等不确定的信息),而业务信息无法与系统级调用链的产生实际关联关系,无法明确报错信息究竟是哪个前端服务或者后端服务,其次,基于Dapper实现的调用链仅可实现依据TraceId查询其中1个前端服务的系统级调用链信息。然而在实际应用中,一个业务场景涉及多个前端服务,每个前端服务对应多个系统级调用链。因此,当业务场景中的某个节点出现问题时,由于前端服务之间没有联系,往往很难确定故障源的具体位置。本公开可以基于图4中,从业务调用链中,基于每个前端服务的响应报文,确定该前端服务的执行状态,进而判断每个前端服务是否存在故障。
更进一步地,在确定目标业务调用链出现故障后,根据目标业务调用链的追踪序列号,确定目标业务调用链的至少一个系统级调用链;基于系统级调用链,确定故障位置。
当确定了具体存在故障的前端业务后,可以通过第三交互操作,确定前端业务对应的后端业务,并通过系统级业务调用链串联展示。示例地,以系统级调用链为图5为例,可以在图5中确定后端业务中故障源的具体位置。
本公开实施例中,借助于业务级调用链和系统级调用链的一体化,由于将前端服务也串联起来,因而可以快速地确定某业务场景故障的位置。
另外,基于上述的业务场景的调用链处理方法,本公开还可以提供一业务场景的调用链处理系统,图6为本公开一实施例提供的业务场景的调用链处理系统的逻辑示意图。如图6所示,业务场景的调用链处理系统可以将服务总线层的前端服务串联起来,构建业务调用链。并且,还可以针对业务调用链中的每个前端服务,确定每个前端服务的系统级调用链。例如,前端服务1的系统级调用链中包括了后端服务1、后端服务2、后端服务3以及后端服务4;前端服务2包括了后端服务5和后端服务6。将前端服务串联可以有效解决Dapper无法解决的问题。
另外,可以通过图7来介绍本公开一实施例的业务结构。如图7所示,用户层可以是用户设备安装的应用程序或者网页平台等等;API层即为企业级服务总线层,上面包括了多个前端服务,业务层则包括了多个业务中心,例如用户中心、订单中心以及商品中心等等,而每个业务中心又可以调用多个后端服务。
基于上述的业务结构中,通过微服务化,业务层可以拆分出多个业务中心,用户层可以是手机端APP或PC端网页系统,前端服务会注册到企业级服务总线,通信协议通常http/https+json、http/https+xml最为常见,一般情况下,业务中心内部的后端服务调用往往通过分布式服务框架协议(RPC方式)直接调用。基于这种业务结构,图8示出本公开一实施例的业务场景的调用链处理系统的结构示意图。参考图8,业务场景的调用链处理系统可以包括业务场景调用链控制台模块、日志汇集及存储模块、业务场景发现模块以及系统级调用链模块。其中,日志汇集及存储模块可以用于将服务总线的调用日志进行采集整理。其中,服务总线的调用日志可以分为服务总线日志及业务中心日志两部分,服务总线日志,主要记录了服务总线各服务自身执行日志及调用下级各中心服务的日志;业务中心日志,主要记录了业务中心各服务自身执行日志及调用其下游服务的日志。服务总线记录的日志大致包含业务场景的处理时间、服务URL、请求报文、响应报文、服务执行时间、追踪序列号等。日志汇集及存储模块实时地将日志采集、归集到数据仓库中。本公开采用Flume日志收集系统、Kafka消息系统以及Flink分布式数据流引擎,数据仓库采用ElasticSearch分布式引擎。Flink分布式数据流引擎可以将请求报文、响应报文的业务字段自动化摘录出来,放到数据仓库中。
另外,请求报文以及响应报文可能是JSON或XML格式,均统一将其中的业务字段转为“字段名_字段值”的数组中,后续作为业务场景发现模块的数据源。
业务场景发现模块用于基于数据关联性实时分析,确定业务场景的至少一个前端服务,于前文所述方法相同,此次不再赘述。
业务场景调用链控制台模块可以包含业务场景管理模块以及业务场景调用链查询及展现模块这两个模块。其中,业务场景管理模块用于对前端服务以及后端服务进行管理,例如,管理者等相关人员可以针对性地进行手动的干预和修改;业务场景调用链查询及展现模块用于基于3个查询条件,即业务场景标识、业务场景的处理时间、业务字段信息,从数据仓库中进行查询,得到服务URL对应的前端服务,并通过业务调用链展示在交互界面上。
系统级调用链模块用于根据每个前端服务的追踪序列号,确定每个前端服务的系统级调用链,并展示在交互界面上。
图4至图8的实施例可以相互结合使用,也可以独立使用,本公开不对其进行限定。
接下来,通过图9介绍本公开的面向业务场景的调用链处理装置900,包括:
第一显示模块901,用于显示业务场景调用链查询界面,业务场景调用链查询界面包含用于输入待查询的业务场景的标识信息的第一控件、用于输入业务场景的处理时间的第二控件、用于输入业务信息的第三控件和用于触发查询的第四控件;
第二显示模块902,用于响应于面向第四控件的第一交互操作,根据已输入的目标业务场景的相关信息,显示目标业务场景的业务调用链,相关信息包含标识信息、处理时间以及业务信息中的至少一种;
第三显示模块903,用于响应于面向业务调用链中目标业务调用链的第二交互操作,显示目标业务调用链的至少一个系统级调用链。
一种可能的实施方式中,第二显示模块902具体用于:获取服务总线的调用日志;根据已输入的目标业务场景的相关信息,对调用日志进行数据关联性分析,得到目标业务场景的业务调用链;显示目标业务场景的业务调用链。
一种可能的实施方式中,还包括业务场景发现模块(未标出),用于根据已输入的目标业务场景的相关信息,对服务总线的调用日志进行数据关联性分析,得到目标业务场景的多个能力族,能力族包含有相同业务信息的调用日志按时间排序,以业务调用链为键值对的键,以请求报文、响应报文及相关依赖信息为键值对的值。
一种可能的实施方式中,第三显示模块903具体用于:响应于面向业务调用链中目标业务调用链的第二交互操作,显示目标业务调用链的基本信息,基本信息包含请求报文、响应报文及系统级调用链的追踪序列号;响应于面向追踪序列号的第三交互操作,显示目标业务调用链的至少一个系统级调用链。
一种可能的实施方式中,第三显示模块903具体用于:响应于面向追踪序列号的第三交互操作,基于追踪序列号,获取目标业务调用链的至少一个系统级调用链,目标业务调用链的至少一个系统级调用链是根据Agent将追踪序列号对应的各个环节的系统级日志进行串联,并存储到数据库中的;显示目标业务调用链的至少一个系统级调用链。
一种可能的实施方式中,还包括确定模块(未标出),用于根据基本信息,确定目标业务调用链的执行状态;响应于目标业务调用链的执行状态异常,确定目标业务调用链出现故障。
一种可能的实施方式中,确定模块还用于:在确定目标业务调用链出现故障后,根据目标业务调用链的追踪序列号,确定目标业务调用链的至少一个系统级调用链;基于系统级调用链,确定故障位置。
补充说明的是,第一显示模块901、第二显示模块902和第三显示模块903,可以理解为对业务场景调用链查询及展现模块的功能的进一步划分,而业务场景调用链查询及展现模块的功能实现是结合业务场景管理模块、日志汇集及存储模块、业务场景发现模块以及系统级调用链模块来实现的。例如,第二显示模块902在显示目标业务场景的业务调用链时,服务总线的调用日志是通过日志汇集及存储模块获取的;并通过业务场景发现模块根据第一区域已输入的目标业务场景的相关信息,对调用日志进行数据关联性分析,得到目标业务场景的业务调用链。又例如,第三显示模块903在获取目标业务调用链的至少一个系统级调用链时,目标业务调用链的至少一个系统级调用链是由系统级调用链模块根据Agent将追踪序列号对应的各个环节的系统级日志进行串联,并存储到数据库中的。
本公开实施例提供的装置,可用于执行如前所述的实施例的方法,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,处理模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上处理模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessing unit,CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本公开实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘solid state disk(SSD))等。
图10为本公开一实施例提供的电子设备的结构示意图。示例性地,电子设备可以被提供为一计算机。参照图10,电子设备1000包括处理组件1001,其进一步包括一个或多个处理器,由存储器1002所代表的存储器资源,用于存储可由处理组件1001的执行的指令,例如应用程序,以及显示器1003。存储器1002中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1001被配置为执行指令,结合显示器1003以执行上述任一方法实施例。
电子设备1000还可以包括一个电源组件1004被配置为执行电子设备1000的电源管理,一个有线或无线网络接口1005被配置为将电子设备1000连接到网络,和一个输入输出(I/O)接口1006。电子设备1000可以操作基于存储在存储器1002的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本公开还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上面向业务场景的调用链处理方法的方案。
本公开还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上的面向业务场景的调用链处理方法的方案。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于面向业务场景的调用链处理装置中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。
Claims (10)
1.一种面向业务场景的调用链处理方法,其特征在于,包括:
显示业务场景调用链查询界面,所述业务场景调用链查询界面包含用于输入待查询的业务场景的标识信息的第一控件、用于输入所述业务场景的处理时间的第二控件、用于输入业务信息的第三控件和用于触发查询的第四控件;
响应于面向所述第四控件的第一交互操作,根据已输入的目标业务场景的相关信息,显示所述目标业务场景的业务调用链,所述相关信息包含标识信息、处理时间以及业务信息中的至少一种;
响应于面向所述业务调用链中目标业务调用链的第二交互操作,显示所述目标业务调用链的至少一个系统级调用链。
2.根据权利要求1所述的面向业务场景的调用链处理方法,其特征在于,所述根据已输入的目标业务场景的相关信息,显示所述目标业务场景的业务调用链,包括:
获取服务总线的调用日志;
根据已输入的目标业务场景的相关信息,对所述调用日志进行数据关联性分析,得到所述目标业务场景的业务调用链;
显示所述目标业务场景的业务调用链。
3.根据权利要求2所述的面向业务场景的调用链处理方法,其特征在于,所述根据已输入的目标业务场景的相关信息,对所述调用日志进行数据关联性分析,得到所述目标业务场景的业务调用链,包括:
根据已输入的目标业务场景的相关信息,对服务总线的调用日志进行数据关联性分析,得到所述目标业务场景的多个能力族,所述能力族包含有相同业务信息的调用日志按时间排序,以业务调用链为键值对的键,以请求报文、响应报文及相关依赖信息为键值对的值。
4.根据权利要求1至3中任一项所述的面向业务场景的调用链处理方法,其特征在于,所述响应于面向所述业务调用链中目标业务调用链的第二交互操作,显示所述目标业务调用链的至少一个系统级调用链,包括:
响应于面向所述业务调用链中目标业务调用链的第二交互操作,显示所述目标业务调用链的基本信息,所述基本信息包含请求报文、响应报文及系统级调用链的追踪序列号;
响应于面向所述追踪序列号的第三交互操作,显示所述目标业务调用链的至少一个系统级调用链。
5.根据权利要求4所述的面向业务场景的调用链处理方法,其特征在于,所述响应于面向所述追踪序列号的第三交互操作,显示所述目标业务调用链的至少一个系统级调用链,包括:
响应于面向所述追踪序列号的第三交互操作,基于所述追踪序列号,获取所述目标业务调用链的至少一个系统级调用链,所述目标业务调用链的至少一个系统级调用链是根据Agent将所述追踪序列号对应的各个环节的系统级日志进行串联,并存储到数据库中的;
显示所述目标业务调用链的至少一个系统级调用链。
6.根据权利要求4所述的面向业务场景的调用链处理方法,其特征在于,还包括:
根据所述基本信息,确定所述目标业务调用链的执行状态;
响应于所述目标业务调用链的执行状态异常,确定所述目标业务调用链出现故障。
7.根据权利要求6所述的面向业务场景的调用链处理方法,其特征在于,还包括:
在确定所述目标业务调用链出现故障后,根据所述目标业务调用链的追踪序列号,确定所述目标业务调用链的至少一个系统级调用链;
基于所述系统级调用链,确定故障位置。
8.一种面向业务场景的调用链处理装置,其特征在于,包括:
第一显示模块,用于显示业务场景调用链查询界面,所述业务场景调用链查询界面包含用于输入待查询的业务场景的标识信息的第一控件、用于输入所述业务场景的处理时间的第二控件、用于输入业务信息的第三控件和用于触发查询的第四控件;
第二显示模块,用于响应于面向所述第四控件的第一交互操作,根据已输入的目标业务场景的相关信息,显示所述目标业务场景的业务调用链,所述相关信息包含标识信息、处理时间以及业务信息中的至少一种;
第三显示模块,用于响应于面向所述业务调用链中目标业务调用链的第二交互操作,显示所述目标业务调用链的至少一个系统级调用链。
9.一种电子设备,其特征在于,包括:存储器和处理;其中:
存储器用于存储程序指令;
处理器用于调用存储器中的程序指令执行权利要求1至7中任一项的面向业务场景的调用链处理方法。
10.一种计算机可读存储介质,其特征在于,计算机可读存储介质中存储有计算机程序指令,计算机程序指令被执行时,实现权利要求1至7中任一项的面向业务场景的调用链处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210276219.9A CN114648323A (zh) | 2022-03-21 | 2022-03-21 | 面向业务场景的调用链处理方法、装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210276219.9A CN114648323A (zh) | 2022-03-21 | 2022-03-21 | 面向业务场景的调用链处理方法、装置及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114648323A true CN114648323A (zh) | 2022-06-21 |
Family
ID=81994836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210276219.9A Pending CN114648323A (zh) | 2022-03-21 | 2022-03-21 | 面向业务场景的调用链处理方法、装置及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114648323A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115904878A (zh) * | 2022-12-30 | 2023-04-04 | 支付宝(杭州)信息技术有限公司 | 业务变更处理方法、装置、设备及存储介质 |
-
2022
- 2022-03-21 CN CN202210276219.9A patent/CN114648323A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115904878A (zh) * | 2022-12-30 | 2023-04-04 | 支付宝(杭州)信息技术有限公司 | 业务变更处理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11789943B1 (en) | Configuring alerts for tags associated with high-latency and error spans for instrumented software | |
US11580680B2 (en) | Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items | |
CN108415832B (zh) | 接口自动化测试方法、装置、设备及存储介质 | |
US10776220B2 (en) | Systems and methods for monitoring distributed database deployments | |
US10169417B2 (en) | Detecting logical relationships based on structured query statements | |
CN110851465B (zh) | 数据查询方法及系统 | |
CN111506511A (zh) | 一种测试用例生成方法、装置、电子设备及介质 | |
CN111078695B (zh) | 计算企业内元数据关联关系的方法及装置 | |
CN114356921A (zh) | 数据处理方法、装置、服务器及存储介质 | |
CN111400170A (zh) | 一种数据权限测试方法及装置 | |
CN113011907A (zh) | 数据处理方法、装置、存储介质及设备 | |
CN111414410A (zh) | 数据处理方法、装置、设备和存储介质 | |
CN114648323A (zh) | 面向业务场景的调用链处理方法、装置及介质 | |
US20220179764A1 (en) | Multi-source data correlation extraction for anomaly detection | |
CN113138906A (zh) | 一种调用链数据采集方法、装置、设备及存储介质 | |
CN113010494A (zh) | 一种数据库审计方法、装置及数据库代理服务器 | |
CN109003181B (zh) | 可疑用户确定方法、装置、设备和计算机可读存储介质 | |
CN111488386A (zh) | 数据查询方法和装置 | |
CN110020166A (zh) | 一种数据分析方法及相关设备 | |
CN114281549A (zh) | 数据的处理方法及装置 | |
CN114296696A (zh) | 业务功能操作方法和装置、存储介质及电子设备 | |
CN111045983A (zh) | 核电站电子文件管理方法、装置、终端设备及介质 | |
CN114968696A (zh) | 指标监控方法、电子设备及芯片系统 | |
CN109828983A (zh) | Pg数据库处理方法、装置、电子设备及存储介质 | |
CN110750563A (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 |