[发明专利]一种基于有向无环图结构的分析链路调用方法及系统在审
申请号: | 202011512651.0 | 申请日: | 2020-12-20 |
公开(公告)号: | CN112527619A | 公开(公告)日: | 2021-03-19 |
发明(设计)人: | 徐军;李学;何宁波;章书乐;李军;詹开洪;彭涛 | 申请(专利权)人: | 大唐互联科技(武汉)有限公司;大唐融合通信股份有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34;G06F11/30 |
代理公司: | 武汉红观专利代理事务所(普通合伙) 42247 | 代理人: | 李杰梅 |
地址: | 430000 湖北省武汉市经济技术开发区神*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 无环图 结构 分析 调用 方法 系统 | ||
1.一种基于有向无环图结构的分析链路调用方法,其特征在于,所述方法包括:
通过应用组件管理系统为每个加入到微服务的组件分配一个唯一的组件标识符;
每个组件根据分配的唯一应用标识符,利用字节码增强技术,将链路追踪代码注入到分布式应用的程序中;
利用链路追踪代码,采集微服务平台中组件响应请求时的链路调用详细过程以及堆栈信息;
根据各分布式组件、链路调用过程以及调用堆栈信息区分各分布式组件之间的调用关系,以形成有向无环结构的链路调用完整过程。
2.根据权利要求1所述基于有向无环图结构的分析链路调用方法,其特征在于,所述通过应用组件管理系统为每个加入到微服务的组件分配一个唯一的组件标识符之后还包括:
在每个组件的运行日志中加入调用链的事务标识。
3.根据权利要求1所述基于有向无环图结构的分析链路调用方法,其特征在于,通过应用组件管理系统为每个加入到微服务的组件分配一个唯一的组件标识符具体为:
应用组件管理系统录入组件的基本信息后,给组件分配唯一的组件标识符;
分布式部署时,相同的组件部署在不同的服务器上时,以组件标识符号相同但应用名称不同的方式进行组合管理;不同的组件应用标识符互不相同。
4.根据权利要求3所述基于有向无环图结构的分析链路调用方法,其特征在于,利用链路追踪代码,采集微服务平台中组件响应请求时的链路调用详细过程以及堆栈信息具体包括:
组件启动的时候通过读取配置文件加载组件的标识符;
组件启动时加载注入的链路追踪代码;
当微服务平台响应用户请求时,注入的拦截器代码根据组件的标识符进行分布式链路程序采集。
5.根据权利要求4所述基于有向无环图结构的分析链路调用方法,其特征在于,在分布式组件各个结点之间相互调用即发生消息传递时,注入的增强代码添加组件标识符作为消息之间的关联,以追踪组件之间、结点之间的链路调用过程及堆栈信息。
6.根据权利要求2所述基于有向无环图结构的分析链路调用方法,其特征在于,所述形成链路调用完整过程之后还包括:
实时收集组件运行日志,并进行解析、转换、存储、展示。
7.根据权利要求5所述基于有向无环图结构的分析链路调用方法,其特征在于,所述实时收集组件运行日志,实时收集组件运行日志,并进行解析、转换、存储、展示具体包括:
通过Filebeat实时收集组件运行日志,通过Logstash解析Filebeat收集到的数据;
Logstash通过预定义的数据模板将集组件运行日志数据按照模板进行解析后存储至Elasticsearch;
通过Kibana将Elasticsearch将收集到的数据进行展示。
8.一种基于有向无环图结构的分析链路调用系统,其特征在于,所述系统包括:
组件标识模块:用于通过应用组件管理系统为每个加入到微服务的组件分配一个唯一的组件标识符;
代码注入模块:用于为每个组件根据分配的唯一应用标识符,利用字节码增强技术,将链路追踪代码注入到分布式应用的程序中;
链路追踪模块:用于利用链路追踪代码,采集微服务平台中组件响应请求时的链路调用详细过程以及堆栈信息;根据各分布式组件、链路调用过程以及调用堆栈信息区分各分布式组件之间的调用关系,以形成有向无环结构的链路调用完整过程。
9.根据权利要求8所述一种基于有向无环图结构的分析链路调用系统,其特征在于,所述系统还包括:
日志收集模块:用于在每个组件的运行日志中加入调用链的事务标识,当微服务平台响应用户请求时,实时收集组件运行日志,将收集到的日志存储并进行展示。
10.根据权利要求8所述一种基于有向无环图结构的分析链路调用系统,其特征在于,所述链路追踪模块具体包括:
启动加载单元:用于在组件启动的时候通过读取配置文件加载组件的标识符;组件启动时加载注入的链路追踪代码;
信息采集单元:用于当微服务平台响应用户请求时,注入的拦截器代码根据组件的标识符进行分布式链路程序采集;在分布式组件各个结点之间相互调用即发生消息传递时,注入的增强代码添加组件标识符作为消息之间的关联,以追踪组件之间、结点之间的链路调用过程及堆栈信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大唐互联科技(武汉)有限公司;大唐融合通信股份有限公司,未经大唐互联科技(武汉)有限公司;大唐融合通信股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011512651.0/1.html,转载请声明来源钻瓜专利网。