[发明专利]方法调用链跟踪方法、电子装置及计算机可读存储介质在审
申请号: | 201810854255.2 | 申请日: | 2018-07-30 |
公开(公告)号: | CN110780883A | 公开(公告)日: | 2020-02-11 |
发明(设计)人: | 陈青龙 | 申请(专利权)人: | 网宿科技股份有限公司 |
主分类号: | G06F8/60 | 分类号: | G06F8/60 |
代理公司: | 11573 北京华智则铭知识产权代理有限公司 | 代理人: | 刘荣鑫 |
地址: | 200030 上海市徐汇区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 方法调用 调用链 计算机可读存储介质 跟踪 电子装置 调用请求 配置项 输出 设置配置 记录 重构 拦截 引入 应用 | ||
1.一种方法调用链跟踪方法,其特征在于,所述方法包括:
设置当前应用是否进行方法调用链跟踪的配置项;
在方法调用前进行拦截,根据所述配置项判断是否需要输出所述方法的调用链信息;及
当判断出需要输出所述调用链信息时,在执行所述方法的调用请求前记录所述方法的调用链信息,在完成所述方法的调用请求后输出所记录的调用链信息。
2.如权利要求1所述的方法调用链跟踪方法,其特征在于,所述配置项中通过printMethodCallChain参数控制是否需要输出所述调用链信息,当所述参数值为true时,表示需要输出所述调用链信息;当所述参数值为false时,表示不需要输出所述调用链信息。
3.如权利要求1或2所述的方法调用链跟踪方法,其特征在于,所述在方法调用前进行拦截,根据所述配置项判断是否需要输出所述方法的调用链信息包括:
当接收到所述方法的调用请求时,根据所述配置项判断是否需要输出所述调用链信息;
当判断出需要输出所述调用链信息时,缓存所述方法调用请求的请求ID;
在执行所述方法的调用请求之前进行拦截,判断是否缓存有所述请求ID,以确定是否需要输出所述调用链信息。
4.如权利要求3所述的方法调用链跟踪方法,其特征在于,所述当判断出需要输出所述调用链信息时,在执行所述方法的调用请求前记录所述方法的调用链信息,在完成所述方法的调用请求后输出所记录的调用链信息包括:
当判断出缓存有所述请求ID时,记录所述方法的调用链信息,然后执行所述方法的调用请求;
处理完所述方法的调用请求后,判断是否缓存有所述请求ID;
当判断出缓存有所述请求ID时,输出所记录的所述调用链信息。
5.如权利要求4所述的方法调用链跟踪方法,其特征在于,所述方法还包括:
在输出所记录的所述调用链信息后,移除缓存中的所述请求ID。
6.如权利要求1所述的方法调用链跟踪方法,其特征在于,通过Spring-AOP框架的切片拦截对所述方法进行拦截。
7.一种电子装置,其特征在于,所述电子装置包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的方法调用链跟踪程序,所述方法调用链跟踪程序被所述处理器执行时实现如下方法:
设置当前应用是否进行方法调用链跟踪的配置项;
在方法调用前进行拦截,根据所述配置项判断是否需要输出所述方法的调用链信息;及
当判断出需要输出所述调用链信息时,在执行所述方法的调用请求前记录所述方法的调用链信息,在完成所述方法的调用请求后输出所记录的调用链信息。
8.如权利要求7所述的电子装置,其特征在于,所述配置项中通过printMethodCallChain参数控制是否需要输出所述调用链信息,当所述参数值为true时,表示需要输出所述调用链信息;当所述参数值为false时,表示不需要输出所述调用链信息。
9.如权利要求7或8所述的电子装置,其特征在于,所述在方法调用前进行拦截,根据所述配置项判断是否需要输出所述方法的调用链信息包括:
当接收到所述方法的调用请求时,根据所述配置项判断是否需要输出所述调用链信息;
当判断出需要输出所述调用链信息时,缓存所述方法调用请求的请求ID;
在执行所述方法的调用请求之前进行拦截,判断是否缓存有所述请求ID,以确定是否需要输出所述调用链信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网宿科技股份有限公司,未经网宿科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810854255.2/1.html,转载请声明来源钻瓜专利网。