请求链路跟踪方法和业务请求处理方法技术

技术编号:28741264 阅读:20 留言:0更新日期:2021-06-06 15:51
本申请涉及请求链路跟踪领域,具体涉及一种请求链路跟踪方法和业务请求处理方法。所述请求链路跟踪方法包括:在接收到任一个服务节点上传的链路跟踪数据后,将接收到的链路跟踪数据进行存储,在接收到请求链路跟踪命令时,获取与该请求链路跟踪命令关联的请求链路的链路跟踪标识,根据该请求链路的链路跟踪标识从预存的所有链路跟踪数据中获取与该请求链路相关的链路跟踪数据,根据获取到的与该请求链路相关的链路跟踪数据进行请求链路信息展示。本发明专利技术实施例能够实现基于业务透明的唯一标识(ID)对业务请求的全链路进行追踪。标识(ID)对业务请求的全链路进行追踪。标识(ID)对业务请求的全链路进行追踪。

【技术实现步骤摘要】
请求链路跟踪方法和业务请求处理方法


[0001]本申请涉及请求链路跟踪
,特别是涉及一种请求链路跟踪方法、业务请求处理方法、数据跟踪设备和服务节点、计算机设备和存储介质。

技术介绍

[0002]随着业务越来越复杂,系统也随之进行各种拆分,特别是随着微服务架构和容器技术的兴起,看似简单的一个应用,后台可能有几十个甚至几百个服务在支撑,在集群化部署环境下,每个服务同样存在几十个甚至几百个部署节点。在复杂的服务化架构系统中,几乎每一个前端的业务请求都会形成一个复杂的分布式服务调用链路,在这种场景中,当请求变慢或者不可用时,无法快速得知是哪个后台服务引起的,因此,需要对业务请求的调用链路进行跟踪,从而在出现故障时能够更快地定位出故障位置。
[0003]ELK为当前行业内解决全链路日志采集监控的主流开源技术方法,ELK是Elasticsearch、Logstash、Kibana的三者首字母组合而成。
[0004]其中,Elasticsearch是实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能。是一套开放REST和JAVA API等结构提供高效搜索功能,可扩展的分布式系统。
[0005]Logstash是一个用来搜集、分析、过滤日志的工具。它支持几乎任何类型的日志,包括系统日志、错误日志和自定义应用程序日志。它可以从许多来源接收日志,这些来源包括syslog、MQ和JMX,它能够以多种方式输出数据,包括电子邮件、websockets和Elasticsearch。
[0006]Kibana是一个基于Web的图形界面,用于搜索、分析和可视化存储在Elasticsearch指标中的日志数据。它利用Elasticsearch的REST接口来检索数据,不仅允许用户创建他们自己的数据的定制仪表板视图,还允许他们以特殊的方式查询和过滤数据。
[0007]然而,ELK主要解决的是日志采集和监控问题,其无法实现基于业务透明的唯一标识(或唯一ID)对业务请求的全链路(即业务请求对应的整条请求链路)进行追踪。

技术实现思路

[0008]本专利技术针对现有技术的缺点,提供了一种请求链路跟踪方法、业务请求处理方法、数据跟踪设备和服务节点、计算机设备和存储介质,本专利技术实施例能够实现基于业务透明的唯一标识(ID)对业务请求的全链路进行追踪。
[0009]本专利技术根据第一方面提供了一种请求链路跟踪方法,在一个实施例中,该方法应用于服务化系统中的数据跟踪设备,该服务化系统包括多个用户设备、由多个服务节点构成的分布式系统和数据跟踪设备;该方法包括:
[0010]在接收到任一个服务节点上传的链路跟踪数据后,将接收到的链路跟踪数据进行存储,链路跟踪数据是该服务节点响应于来自任一个用户设备或任一个其他服务节点的业务请求执行与业务请求相应的业务操作,在执行完业务操作后生成的与该业务请求和该业
务操作相关的数据;
[0011]在接收到请求链路跟踪命令时,获取与该请求链路跟踪命令关联的请求链路的链路跟踪标识,根据该请求链路的链路跟踪标识从预存的所有链路跟踪数据中获取与该请求链路相关的链路跟踪数据,根据获取到的与该请求链路相关的链路跟踪数据进行请求链路信息展示。
[0012]在一个实施例中,将接收到的链路跟踪数据进行存储的步骤,包括:
[0013]获取接收到的链路跟踪数据对应的链路跟踪标识;
[0014]在存储接收到的链路跟踪数据时,建立链路跟踪标识和该接收到的链路跟踪数据的关联信息;
[0015]根据该请求链路的链路跟踪标识从预存的所有链路跟踪数据中获取与该请求链路相关的链路跟踪数据的步骤,包括:
[0016]获取与该请求链路的链路跟踪标识对应的预先建立的关联信息;
[0017]根据关联信息从预存的所有链路跟踪数据中获取与该请求链路的链路跟踪标识对应的所有链路跟踪数据。
[0018]在一个实施例中,根据获取到的与该请求链路相关的链路跟踪数据进行请求链路信息展示的步骤,包括:
[0019]根据获取到的与该请求链路相关的链路跟踪数据生成请求链路图;
[0020]展示请求链路图。
[0021]本专利技术根据第二方面提供了一种业务请求处理方法,在一个实施例中,该方法应用于服务化系统中的任一个服务节点,该服务化系统包括多个用户设备、由多个服务节点构成的分布式系统和数据跟踪设备;该方法包括:
[0022]接收来自任一个该用户设备或任一个其他服务节点的业务请求;
[0023]执行与该业务请求相应的业务操作;
[0024]在执行完该业务操作后生成与该业务请求和该业务操作相关的链路跟踪数据;
[0025]将生成的该链路跟踪数据上传到该数据跟踪设备。
[0026]在一个实施例中,执行与该业务请求相应的业务操作,包括:
[0027]若确定该业务请求来自任一个用户设备,则生成用于跟踪该业务请求对应的请求链路的链路跟踪标识和用于表征该业务请求在其对应的请求链路中的位置的位置跟踪标识,确定完成业务操作所需调用的所有其他服务节点以及各个其他服务节点的调用顺序,根据各个其他服务节点的调用顺序生成与各个其他服务节点对应的从属于该位置跟踪标识的新的位置跟踪标识,向各个其他服务节点发送根据链路跟踪标识和该其他服务节点对应的新的位置跟踪标识生成的新的业务请求;
[0028]若确定该业务请求来自任一个其他服务节点,则获取该业务请求关联的链路跟踪标识以及由该其他服务节点生成的位置跟踪标识,在确定完成业务操作需要调用其他服务节点时,确定所需调用的各个其他服务节点的调用顺序,根据各个其他服务节点的调用顺序生成与各个其他服务节点对应的从属于位置跟踪标识的新的位置跟踪标识,向各个其他服务节点发送根据链路跟踪标识和该其他服务节点对应的新的位置跟踪标识生成的新的业务请求。
[0029]在一个实施例中,在执行完该业务操作后生成与该业务请求和该业务操作相关的
链路跟踪数据的步骤,包括:
[0030]若确定该业务请求来自任一个用户设备,则在执行完该业务操作后,根据该业务操作相关的操作执行信息与链路跟踪标识、位置跟踪标识生成该业务操作相关的链路跟踪数据;
[0031]若确定该业务请求来自任一个其他服务节点,则在执行完该业务操作后,根据该业务操作相关的操作执行信息与链路跟踪标识、位置跟踪标识生成该业务操作相关的链路跟踪数据。
[0032]本专利技术根据第三方面提供了一种数据跟踪设备,在一个实施例中,该数据跟踪设备包括:
[0033]数据存储模块,用于在接收到任一个服务节点上传的链路跟踪数据后,将接收到的链路跟踪数据进行存储,链路跟踪数据是该服务节点响应于来自任一个用户设备或任一个其他服务节点的业务请求执行与业务请求相应的业务操作,在执行完业务操作后生成的与该业务请求和该业务操作相关的数据;
[0034]请求链路跟踪模块,用于在接收到请求链路跟踪命令时,获取与该请求链路跟踪命令关联的请求链路的链路本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种请求链路跟踪方法,其特征在于,所述方法应用于服务化系统中的数据跟踪设备,所述服务化系统包括多个用户设备、由多个服务节点构成的分布式系统和数据跟踪设备;所述方法包括:在接收到任一个所述服务节点上传的链路跟踪数据后,将接收到的链路跟踪数据进行存储,所述链路跟踪数据是该服务节点响应于来自任一个所述用户设备或任一个其他服务节点的业务请求执行与所述业务请求相应的业务操作,在执行完所述业务操作后生成的与所述业务请求和所述业务操作相关的数据;在接收到请求链路跟踪命令时,获取与所述请求链路跟踪命令关联的请求链路的链路跟踪标识,根据所述请求链路的链路跟踪标识从预存的所有链路跟踪数据中获取与所述请求链路相关的链路跟踪数据,根据获取到的与所述请求链路相关的链路跟踪数据进行请求链路信息展示。2.如权利要求1所述的请求链路跟踪方法,其特征在于,所述将接收到的链路跟踪数据进行存储的步骤,包括:获取接收到的链路跟踪数据对应的链路跟踪标识;在存储所述接收到的链路跟踪数据时,建立所述链路跟踪标识和所述接收到的链路跟踪数据的关联信息;所述根据所述请求链路的链路跟踪标识从预存的所有链路跟踪数据中获取与所述请求链路相关的链路跟踪数据的步骤,包括:获取与所述请求链路的链路跟踪标识对应的预先建立的关联信息;根据所述关联信息从预存的所有链路跟踪数据中获取与所述请求链路的链路跟踪标识对应的所有链路跟踪数据。3.如权利要求1所述的请求链路跟踪方法,其特征在于,所述根据获取到的与所述请求链路相关的链路跟踪数据进行请求链路信息展示的步骤,包括:根据获取到的与所述请求链路相关的链路跟踪数据生成请求链路图;展示所述请求链路图。4.一种业务请求处理方法,其特征在于,所述方法应用于服务化系统中的任一个服务节点,所述服务化系统包括多个用户设备、由多个服务节点构成的分布式系统和数据跟踪设备;所述方法包括:接收来自任一个所述用户设备或任一个其他服务节点的业务请求;执行与所述业务请求相应的业务操作;在执行完所述业务操作后生成与所述业务请求和所述业务操作相关的链路跟踪数据;将生成的所述链路跟踪数据上传到所述数据跟踪设备。5.如权利要求1所述的请求链路跟踪方法,其特征在于,所述执行与所述业务请求相应的业务操作,包括:若所述业务请求来自任一个所述用户设备,则生成用于跟踪所述业务请求对应的请求链路的链路跟踪标识和用于表征所述业务请求在其对应的请求链路中的位置的位置跟踪标识,确定完成业务操作所需调用的所有其他服务节点以及各个所述其他服务节点的调用顺序,根据各个所述其他服务节点的调用顺序生成与各个所述其他服务节点对应的从属于
所述位置跟踪标识的新的位置跟踪标识,向各...

【专利技术属性】
技术研发人员:王勤司孝波钱津津张久涛秦刚
申请(专利权)人:江苏苏宁云计算有限公司
类型:发明
国别省市:

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

1