全函数动态调用链路确定方法、装置及存储介质制造方法及图纸

技术编号:24853246 阅读:28 留言:0更新日期:2020-07-10 19:07
本申请公开了一种全函数动态调用链路确定方法、装置及存储介质,所述方法包括:接收终端发送的交易请求,所述交易请求携带至少两个交易信息;确定所述至少两个交易信息对应的目标区块链;确定所述目标区块链中的至少两个关键点函数;通过面向切面编程方式,在每个关键点函数注入代码进行函数动态链路跟踪;确定每个关键点函数的标识符以及每个关键点函数的子调用对应的标识符;根据每个关键点函数的标识符以及每个关键点函数的子调用对应的标识符,确定目标标识符集;根据所述目标标识符集,确定所述目标区块链中的全函数动态调用链路。本申请通过动态调用链路对不同函数进行整合,获取到数据处理的全流程。

【技术实现步骤摘要】
全函数动态调用链路确定方法、装置及存储介质
本申请涉及数据收集
,尤其涉及一种全函数动态调用链路确定方法、装置及存储介质。
技术介绍
随着业务高速发展,要满足业务高性能高可用的要求,业务程序会引入各种并发处理或异步处理方式来解决问题。但是这些高性能处理方式,导致了区块链的区块或交易处理全流程被分割成不同部分,难以快速地获取其数据处理的全流程,以便分析出数据处理过程可能存在的问题。因此,有必要提供一种全函数动态调用链路确定方法、装置及存储介质,从而通过每个关键点函数及其子调用对应的唯一标识符实现不同函数的关联,并通过动态调用链路对不同函数进行整合,获取到数据处理的全流程。
技术实现思路
本申请提供了一种全函数动态调用链路确定方法、装置及存储介质,可以通过每个关键点函数及其子调用对应的唯一标识符实现不同函数的关联,并通过动态调用链路对不同函数进行整合,获取到数据处理的全流程。一方面,本申请提供了一种全函数动态调用链路确定方法,所述方法包括:接收终端发送的交易请求,所述交易请求携带至少两个交易信息;确定所述至少两个交易信息对应的目标区块链;确定所述目标区块链中的至少两个关键点函数;通过面向切面编程方式,在每个关键点函数注入代码进行函数动态链路跟踪;确定每个关键点函数的标识符以及每个关键点函数的子调用对应的标识符;根据所述每个关键点函数的标识符以及所述每个关键点函数的子调用对应的标识符,确定目标标识符集;根据所述目标标识符集,确定所述目标区块链中的全函数动态调用链路。另一方面提供了一种全函数动态调用链路确定装置,所述装置包括:交易请求接收模块,用于接收终端发送的交易请求,所述交易请求携带至少两个交易信息;目标区块链确定模块,用于确定所述至少两个交易信息对应的目标区块链;关键点函数确定模块,用于确定所述目标区块链中的至少两个关键点函数;代码注入模块,用于通过面向切面编程方式,在每个关键点函数注入代码进行函数动态链路跟踪;标识符确定模块,用于确定每个关键点函数的标识符以及每个关键点函数的子调用对应的标识符;目标标识符集确定模块,用于根据每个关键点函数的标识符以及每个关键点函数的子调用对应的标识符,确定目标标识符集;调用链路确定模块,用于根据所述目标标识符集,确定所述目标区块链中的全函数动态调用链路。另一方面提供了一种计算机存储介质,所述计算机存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如上所述的全函数动态调用链路确定方法。本申请提供的全函数动态调用链路确定方法、装置及存储介质,具有如下技术效果:(1)本申请通过AOP注入,在无需改动源代码下确保业务不被影响,也保证所影响的性能在一个可接受的范围内。(2)本申请通过AOP实现关键点函数的唯一标识符获取与输出,从而可形成全函数动态调用链路。(3)对于不同部分进行独立的函数动态调用链路的记录与跟踪,并用数据标识符把不同部分但相关联的函数动态调用链路串联起来,形成以数据处理为维度的全函数动态调用链路,从而便于对数据处理流程进行分析。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。图1是本申请实施例提供的一种全函数动态调用链路确定系统的示意图;图2是本申请实施例提供的一种全函数动态调用链路确定方法的流程示意图;图3是本申请实施例提供的一种区块链系统的结构示意图;;图4是本申请实施例提供的区块结构示意图;图5是本申请实施例提供的确定每个关键点函数的标识符以及每个关键点函数的子调用对应的标识符的方法的流程示意图;图6是本申请实施例提供的通过AOP进行代码注入的流程图;图7是本申请实施例提供的函数动态调用链路示意图;图8是本申请实施例提供的实时动态调用链路;图9是本申请实施例提供的一种全函数动态调用链路确定装置的结构示意图;图10是本申请实施例提供的一种服务器的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。请参阅图1,图1是本申请实施例提供的一种全函数动态调用链路确定系统的示意图,如图1所示,该全函数动态调用链路确定系统可以至少包括服务器01和客户端02。具体的,本说明书实施例中,所述服务器01可以包括一个独立运行的服务器,或者分布式服务器,或者由多个服务器组成的服务器集群。服务器01可以包括有网络通信单元、处理器和存储器等等。具体的,所述服务器01可以用于确定全函数动态调用链路。具体的,本说明书实施例中,所述客户端02可以包括智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、智能可穿戴设备等类型的实体设备,也可以包括运行于实体设备中的软体,例如一些服务商提供给用户的网页页面,也可以为该些服务商提供给用户的应用。具体的,所述客户端02可以用于向所述服务器01发送交易请求,并展示全函数动态调用链路。以下介绍本申请的一种全函数动态调用链路确定方法,图2是本申请实施例提供的一种全函数动态调用链路确定方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2所示,所述方法可以包括:S201:接收终端发送的交易请求,所述交易请求携带至少两个交易信息。具体的,在本说明书实施例中,服务器可以接收终端发送的交易请求,所述交易请求可以为交易上链请求。在本说明书实施例中,本文档来自技高网...

【技术保护点】
1.一种全函数动态调用链路确定方法,其特征在于,所述方法包括:/n接收终端发送的交易请求,所述交易请求携带至少两个交易信息;/n确定所述至少两个交易信息对应的目标区块链;/n确定所述目标区块链中的至少两个关键点函数;/n通过面向切面编程方式,在每个关键点函数注入代码进行函数动态链路跟踪;/n确定每个关键点函数的标识符以及每个关键点函数的子调用对应的标识符;/n根据所述每个关键点函数的标识符以及所述每个关键点函数的子调用对应的标识符,确定目标标识符集;/n根据所述目标标识符集,确定所述目标区块链中的全函数动态调用链路。/n

【技术特征摘要】
1.一种全函数动态调用链路确定方法,其特征在于,所述方法包括:
接收终端发送的交易请求,所述交易请求携带至少两个交易信息;
确定所述至少两个交易信息对应的目标区块链;
确定所述目标区块链中的至少两个关键点函数;
通过面向切面编程方式,在每个关键点函数注入代码进行函数动态链路跟踪;
确定每个关键点函数的标识符以及每个关键点函数的子调用对应的标识符;
根据所述每个关键点函数的标识符以及所述每个关键点函数的子调用对应的标识符,确定目标标识符集;
根据所述目标标识符集,确定所述目标区块链中的全函数动态调用链路。


2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定每个关键点函数的特征值;
基于所述每个关键点函数的特征值,确定存在关联关系的目标关键点函数;
相应的,所述根据所述每个关键点函数的标识符以及所述每个关键点函数的子调用对应的标识符,确定目标标识符集包括:
根据每个目标关键点函数的标识符以及每个目标关键点函数的子调用对应的标识符,确定目标标识符集。


3.根据权利要求2所述的方法,其特征在于,所述根据每个目标关键点函数的标识符以及每个目标关键点函数的子调用对应的标识符,确定目标标识符集包括:
根据每个目标关键点函数的标识符以及每个目标关键点函数的子调用对应的标识符,确定每个目标关键点函数对应的标识符集;
基于所述每个目标关键点函数对应的标识符集,确定目标标识符集。


4.根据权利要求1所述的方法,其特征在于,所述确定每个关键点函数的标识符以及每个关键点函数的子调用对应的标识符包括:
通过反射机制获取每个关键点函数的标识符;
根据所述每个关键点函数的标识符,确定所述每个关键点函数的子调用对应的标识符。


5.根据权利要求4所述的方法,其特征在于,所述根据所述每个关键点函数的标识符,确定所述每个关键点函数的子调用对应的标识符包括:
根据所述每个关键点函数的标识符,确定所述每个关键点函数的一次子调用对应的标识符;
根据所述每个关键点函数的N次子调用对应的标识符,确定所述每个关键点函数的N+1次子调用对应的标识符,N=1,2,……,M,M≥3且M为正整数。


6.根据权利要求1所述的方法,其特征在于,所述关键点函...

【专利技术属性】
技术研发人员:周勇钧
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1