基于数据库的全链路追踪方法、设备、存储介质和产品与流程
- 国知局
- 2024-12-06 12:17:04
本申请涉及分布式存储,尤其涉及基于数据库的全链路追踪方法、设备和、存储介质和产品。
背景技术:
1、全链路追踪是一种用于监控和分析分布式存储系统中请求的链路追踪工具。该工具能够追踪请求流转路径,整合监控数据,从而实现端到端的数据监控。通过全链路追踪技术,能够快速定位问题,优化监控性能,提高用户使用体验。
2、当前,全链路追踪技术在互联网微服务开发过程中发展迅速。现有的全链路追踪技术主要基于日志收集、数据统计和分析等方法,实现对用户行为及系统性能等方面的监控和优化。例如,现有技术提供了一种基于消息总线的数据全链路追踪方法及系统,该数据全链路追踪方法包括以下步骤:消费者获取追踪消息;消费者向kafka消息总线发布追踪消息;kafka消息总线向大数据服务发送追踪消息;大数据服务若判定追踪消息为符合预设条件的信息,则大数据服务通过kafka消息总线向订阅服务发送订阅信息。
3、上述全链路追踪方案,虽然能够实现在分布式系统中对整个数据处理过程的全链路追踪和监控。然而,当前的全链路追踪技术主要是针对应用的调用链路进行记录。应用行为的变化通常会导致业务数据的变化,这样在某些业务数据变更时就需要记录变更前后的数据变化,但是现有的全链路追踪机制主要记录应用的调用链路,无法追踪业务变更前后的数据变化,这就导致全链路追踪技术追踪到的数据并不完整。
4、上述内容仅用于辅助理解本申请的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
1、本申请的主要目的在于提供基于数据库的全链路追踪方法、设备介质和产品,旨在解决现有技术方案提供的全链路追踪技术无法记录数据变更日志,追踪到的链路和数据并不完整的技术问题。
2、为实现上述目的,本申请提供了一种基于数据库的全链路追踪方法,包括:
3、使用链路追踪机制追踪外部应用程序对数据库的调用链路,得到应用链路日志;
4、使用日志处理机制记录数据库的数据变更情况,得到数据变更日志,其中,数据变更情况为数据库响应调用链路产生;
5、根据数据变更情况关联应用链路日志和数据变更日志,得到全链路追踪日志。
6、优选的,上述全链路追踪方法中,使用链路追踪机制追踪外部应用程序对数据库的调用链路,得到应用链路日志的步骤,包括:
7、获取外部应用程序对数据库的调用请求;
8、使用链路追踪机制的追踪前端,将追踪标记注入调用请求;
9、使用追踪标记追踪调用请求沿调用链路的传递过程,实时记录应用链路日志;
10、当调用请求沿调用链路传递完成时,使用链路追踪机制的追踪后端将携带追踪标记的调用请求发送至数据库;,同时使用追踪后端上传应用链路日志至日志处理中心。
11、优选的,上述全链路追踪方法中,使用日志处理机制记录数据库的数据变更情况,得到数据变更日志的步骤,包括:
12、在数据库的数据表中添加追踪标记字段,在数据库对应的持久化对象添加数据映射注解,其中,数据映射注解与数据表相对应;
13、使用sql拦截器拦截调用请求,从调用请求中提取追踪标记;
14、使用sql拦截器,按照数据映射注解将追踪标记写入追踪标记字段中。
15、优选的,上述全链路追踪方法中,使用日志处理机制记录数据库的数据变更情况,得到数据变更日志的步骤,包括:
16、使用日志处理机制监听数据库的数据变更情况,其中,数据变更情况包括追踪标记;
17、使用数据映射注解记录数据变更情况,得到数据变更日志;
18、从所述数据变更情况对应的追踪标记字段中查找追踪标记,将追踪标记写入数据变更日志。
19、优选的,上述全链路追踪方法中,根据数据变更情况,关联应用链路日志和数据变更日志,得到全链路追踪日志的步骤,包括:
20、使用kafka机制订阅应用链路日志和数据变更日志;
21、匹配应用链路日志和数据变更日志的追踪标记;
22、当应用链路日志和数据变更日志的追踪标记匹配成功时,使用追踪标记关联应用链路日志和数据变更日志,得到全链路追踪日志。
23、优选的,上述全链路追踪方法中,根据数据变更情况,关联应用链路日志和数据变更日志,得到全链路追踪日志的步骤,包括:
24、从数据库对应的元数据信息库中调用关于数据变更情况的元数据信息;
25、结合元数据信息、应用链路日志和数据变更日志,构建全链路追踪日志。
26、优选的,上述全链路追踪方法中,使用日志处理机制记录数据库的数据变更情况,得到数据变更日志的步骤,包括:
27、使用binlog机制监听数据库的数据变更情况;
28、当监听到数据库存在数据变更时备份数据库中数据,得到数据备份日志;
29、解析数据备份日志,得到数据库的变更前数据;
30、生成变更前数据的数据快照。
31、为实现上述目的,本申请还提供了一种基于数据库的全链路追踪设备,设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序配置为实现如上述任一项技术方案提供的基于数据库的全链路追踪方法的步骤。
32、为实现上述目的,本申请还提供了一种存储介质,存储介质为计算机可读存储介质,存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任一项技术方案提供的基于数据库的全链路追踪方法的步骤。
33、为实现上述目的,本申请还提供了一种计算机程序产品,计算机程序产品包括计算机程序,计算机程序被处理器执行时实现如上述任一项技术方案提供的基于数据库的全链路追踪方法的步骤。
34、本申请提出的一个或多个技术方案,至少具有以下技术效果:
35、本申请实施例提供的技术方案,使用链路追踪机制追踪外部应用程序对数据库的调用链路,从而得到应用链路日志;结合日志处理机制记录数据库中的数据变更情况,从而得到数据变更日志,其中,数据变更情况为数据库相应调用链路产生的;因此结合该数据变更情况,就能够关联上述应用链路日志和数据变更日志,将数据变更日志和应用链路日志统一结合到全链路追踪日志中,从而实现日志的全链路打通。另外,日志处理机制是数据库自带的处理机制,其链路清晰,日志的逻辑处理过程基于进程外计算,对系统无影响。综上,本申请实施例提供的技术方案能够记录数据变更日志,追踪到业务变更前后的数据变化,使得追踪到的链路和数据能够统一结合到一个日志中。通过上述方式能够解决现有技术提供的全链路追踪技术无法记录数据变更日志,追踪到的链路和数据并不完整的技术问题。
技术特征:1.一种基于数据库的全链路追踪方法,其特征在于,包括:
2.如权利要求1所述的方法,其特征在于,所述使用链路追踪机制追踪外部应用程序对数据库的调用链路,得到应用链路日志的步骤,包括:
3.如权利要求2所述的方法,其特征在于,所述使用日志处理机制记录所述数据库的数据变更情况,得到数据变更日志的步骤,包括:
4.如权利要求3所述的方法,其特征在于,所述使用日志处理机制记录所述数据库的数据变更情况,得到数据变更日志的步骤,包括:
5.如权利要求4所述的方法,其特征在于,所述根据所述数据变更情况关联所述应用链路日志和数据变更日志,得到全链路追踪日志的步骤,包括:
6.如权利要求1所述的方法,其特征在于,所述根据所述数据变更情况关联所述应用链路日志和数据变更日志,得到全链路追踪日志的步骤,包括:
7.如权利要求1所述的方法,其特征在于,所述使用日志处理机制记录所述数据库的数据变更情况,得到数据变更日志的步骤,包括:
8.一种基于数据库的全链路追踪设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序配置为实现如权利要求1至7中任一项所述的基于数据库的全链路追踪方法的步骤。
9.一种存储介质,其特征在于,所述存储介质为计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的基于数据库的全链路追踪方法的步骤。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的基于数据库的全链路追踪方法的步骤。
技术总结本申请公开了基于数据库的全链路追踪方法、设备、存储介质和产品,涉及分布式存储技术领域。其中,基于数据库的全链路追踪方法包括:使用链路追踪机制追踪外部应用程序对数据库的调用链路,得到应用链路日志;使用日志处理机制记录数据库的数据变更情况,得到数据变更日志,其中,数据变更情况为数据库响应调用链路产生;根据数据变更情况,关联应用链路日志和数据变更日志,得到全链路追踪日志。本申请的技术方案能够解决现有方案提供的全链路追踪技术无法根据业务变更前后的数据变化,追踪到的链路和数据并不完整的问题。技术研发人员:孙永,陶剑浩受保护的技术使用者:招商银行股份有限公司技术研发日:技术公布日:2024/12/2本文地址:https://www.jishuxx.com/zhuanli/20241204/340437.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表