[发明专利]一种分布式服务框架中的全链路堆栈信息跟踪方法在审
申请号: | 201910047891.9 | 申请日: | 2019-01-18 |
公开(公告)号: | CN109901915A | 公开(公告)日: | 2019-06-18 |
发明(设计)人: | 陈旋;王冲;赵琪 | 申请(专利权)人: | 江苏艾佳家居用品有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F11/07 |
代理公司: | 南京正联知识产权代理有限公司 32243 | 代理人: | 邓唯 |
地址: | 211100 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式服务框架 堆栈信息 跟踪 链路信息 链路 切面 实时记录系统 分布式服务 定位问题 反射机制 耗时信息 记录系统 请求链路 唯一标识 系统瓶颈 复杂度 超时 堆栈 架构 跨度 拦截 关联 应用 | ||
1.一种分布式服务框架中的全链路堆栈信息跟踪方法,用于针对所有web请求,分别执行如下步骤,实现全链路堆栈信息跟踪,其特征在于,包括如下步骤:
步骤A. 针对web请求进行拦截,并由该web请求的头文件中,获取该web请求的唯一标识traceId,然后进入步骤B;
步骤B. 针对响应该web请求的线程,触发开启该线程的执行器,并创建该线程的StackTrace信息,然后进入步骤C;
步骤C. 拦截该web请求所对应所有方法的执行,并记录该web请求执行过程中的各指定类型信息,其中,各指定类型信息包括对应所有方法的执行顺序信息,然后进入步骤D;
步骤D. 根据该web请求执行过程中所有方法的执行顺序信息,获得该web请求执行过程所对应的堆栈执行层级关系,然后进入步骤E;
步骤E. 根据该web请求执行过程所对应的堆栈执行层级关系,拦截该web请求所对应所有方法执行过程中的异常信息,并存储。
2.根据权利要求1所述一种分布式服务框架中的全链路堆栈信息跟踪方法,其特征在于:还包括步骤F如下,执行完步骤E之后,进入步骤F;
步骤F. 获取该web请求所对应所有方法执行过程中、sql的执行结果与耗时。
3.根据权利要求1或2所述一种分布式服务框架中的全链路堆栈信息跟踪方法,其特征在于:所述步骤A中,通过实现spring框架的HandlerInterceptor接口,针对web请求进行拦截。
4.根据权利要求1或2所述一种分布式服务框架中的全链路堆栈信息跟踪方法,其特征在于:所述步骤A中,若web请求的头文件中没有该web请求的唯一标识traceId,则生成该web请求的唯一标识traceId。
5.根据权利要求1或2所述一种分布式服务框架中的全链路堆栈信息跟踪方法,其特征在于:所述步骤B中,触发开启该线程的执行器,先清除该线程所关联的堆栈执行信息,再创建该线程的StackTrace信息。
6. 根据权利要求1或2所述一种分布式服务框架中的全链路堆栈信息跟踪方法,其特征在于:所述步骤C中,通过 MethodInterceptor接口,拦截该web请求所对应所有方法的执行。
7.根据权利要求1或2所述一种分布式服务框架中的全链路堆栈信息跟踪方法,其特征在于:所述步骤C中,通过java的反射机制,记录该web请求执行过程中的各指定类型信息。
8.根据权利要求7所述一种分布式服务框架中的全链路堆栈信息跟踪方法,其特征在于:所述步骤C中,所述的各指定类型信息还包括类名、方法名、参数、返回结果、执行时间、异常信息。
9.根据权利要求1或2所述一种分布式服务框架中的全链路堆栈信息跟踪方法,其特征在于:所述步骤D中,根据该web请求执行过程中所有方法的执行顺序信息,以树状结构,结合数字排序方法,获得该web请求执行过程所对应的堆栈执行层级关系。
10.根据权利要求2所述一种分布式服务框架中的全链路堆栈信息跟踪方法,其特征在于:所述步骤F中,通过mybatis的拦截器,获取该web请求所对应所有方法执行过程中、sql的执行结果与耗时。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏艾佳家居用品有限公司,未经江苏艾佳家居用品有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910047891.9/1.html,转载请声明来源钻瓜专利网。