CN115883343A - 一种微服务的链路追踪方法及系统 - Google Patents

一种微服务的链路追踪方法及系统 Download PDF

Info

Publication number
CN115883343A
CN115883343A CN202211563312.4A CN202211563312A CN115883343A CN 115883343 A CN115883343 A CN 115883343A CN 202211563312 A CN202211563312 A CN 202211563312A CN 115883343 A CN115883343 A CN 115883343A
Authority
CN
China
Prior art keywords
interface
actual
rate
sampling
sampling rate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211563312.4A
Other languages
English (en)
Inventor
黎梓安
魏文生
阮伟标
安雨顺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianyi Cloud Technology Co Ltd
Original Assignee
Tianyi Cloud Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tianyi Cloud Technology Co Ltd filed Critical Tianyi Cloud Technology Co Ltd
Priority to CN202211563312.4A priority Critical patent/CN115883343A/zh
Publication of CN115883343A publication Critical patent/CN115883343A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请提供了一种微服务的链路追踪方法及系统,通过对获取链路追踪服务中的监控统计数据进行分析判断,生成对应的策略配置信息,将策略信息配置下发采样端,采样端重新加载配置,从而实现动态调整链路追踪的采样策略。本申请利用监控统计数据,根据方法生成采样策略,利用链路追踪服务提供的策略下发能力,从而实现动态调整链路追踪的采样策略,减少人工配置的成本。

Description

一种微服务的链路追踪方法及系统
技术领域
本申请涉及微服务、云计算以及链路追踪技术领域,具体涉及一种微服务的链路追踪方法及系统。
背景技术
在微服务架构中,请求在各服务之间流转,调用链错综复杂,一旦出现了问题和异常,很难追查定位。为了快速发现是哪个环节的问题并解决类似的问题,通常会使用链路追踪实现服务问题追踪定位。例如:Jaeger,Zipkin、Open Tracing、Sky Walking等。通过链路追踪服务,可以查询到请求在服务间的调用关系,查询对应每个环节耗费的时间,从而帮助对复杂微服务架构系统的故障定位和性能分析。
但在微服务数量多,请求量大的情况下,如果采样所有请求的调用链信息,需要的计算成本和存储成本非常高。链路追踪服务通过提供控制采样率,速率限制的方式,从而缩减采样的调用链信息数据量。但这种的控制方式,需要人工对每个接口进行配置,例如:A接口是使用采用率控制,配置采用率是多少;B接口使用速率限制,每秒限速是多少;要对新增的接口进行配置等,这样的配置不仅耗时,维护起来还十分不便。
发明内容
为了解决链路追踪服务的采样率需要人工配置,速率控制策略难以维护的问题,本申请提出了一种微服务的链路追踪方法及系统,通过对获取链路追踪服务中的监控统计数据进行分析判断,生成对应的策略配置信息,将策略信息配置下发采样端,采样端重新加载配置,从而实现动态调整链路追踪的采样策略。本申请所采用的技术方案如下:
一种微服务的链路追踪方法,该方法包括:
步骤1、链路追踪系统按照预设的调整策略频率,通过链路追踪服务查询接口周期性获取监控统计数据;
步骤2、通过所述监控统计数据获取接口的实际采样率和存储模块的空间占用率,根据接口的业务请求数来更新接口的实际采样率,根据存储模块的空间占用率来更新接口的期望采样数。
进一步的,在步骤1之前还包括,进行模型的初始化参数配置,包括:
调整策略频率t,单位为时间;
新增接口的默认采样率d,初始默认值为100%;
接口的实际采样率Pd,单位为百分比;
最小采样率dmin,初始默认值为10%;
接口的实际采样数Pc,单位为次;
最小每秒接口采样数Cmin,单位为次;
期望采样数C,单位为次;
所能接受的偏移值Offset,初始默认值为5%;
空间占用率的期望增长速率S,单位为MB/s。
进一步的,在步骤2中,根据接口的业务请求数来更新接口的实际采样率,包括:若接口为新增接口,则将实际采样率更新为默认采样率d,返回步骤1,并等待下一个周期。
进一步的,在步骤2中,根据接口的业务请求数来更新接口的实际采样率,包括:若接口不为新增接口,则进行采样率判断,若实际采样率Pd<dmin,则将实际采样率更新为dmin,返回步骤1,并等待下一个周期;若实际采样率Pd≥dmin,则进行采样数判断,若实际采样数Pc<Cmin,则将实际采样数Pc设置为1,进行全部采集,返回步骤1,并等待下一个周期;若实际采样数Pc≥Cmin,则将实际采样数与期望范围进行比较,若Pc>C(1+Offset),则减小实际采样率Pd,返回步骤1,并等待下一个周期;若Pc<C(1-Offset),则增加实际采样率Pd,返回步骤1,并等待下一个周期;若C(1-Offset)≤Pc≤C(1-Offset),则保持实际采样率Pd不变,返回步骤1,并等待下一个周期。
进一步的,在步骤2中,根据存储模块的空间占用率来更新接口的实际采样数,包括:通过监控统计数据,获取到链路追踪系统的存储模块空间占用En1,将存储模块空间占用率En1与上一个周期时存储模块空间占用En2进行比较,计算存储模块空间占用率的增长速率Ep=(En2-En1)/t,并将计算得到的增长速率Ep与初始化参数配置中预设的空间占用率的期望增长速率S进行比较,若Ep>S,则减小期望采样数C,返回步骤1,并等待下一个周期。
一种微服务的链路追踪系统,该系统包括采样策略更新单元和链路追踪服务单元;
采样策略更新单元,用于根据监控统计数据生成对应的采样策略,并动态调整采样策略,并通过链路追踪服务支持的方式,提供给链路追踪服务单元;
链路追踪服务单元,用于监听配置文件中采样策略的变化,获取调整后的采样策略,并更新到服务端。
进一步的,所述采样策略更新单元通过所述监控统计数据获取接口的实际采样率和存储模块的空间占用率,根据接口的业务请求数来更新接口的实际采样率,根据存储模块的空间占用率来更新接口的期望采样数。
进一步的,根据接口的业务请求数来更新接口的实际采样率,包括:若接口为新增接口,则将实际采样率更新为默认采样率d,返回步骤1,并等待下一个周期。
进一步的,根据接口的业务请求数来更新接口的实际采样率,包括:若接口不为新增接口,则进行采样率判断,若实际采样率Pd<dmin,则将实际采样率更新为dmin,返回步骤1,并等待下一个周期;若实际采样率Pd≥dmin,则进行采样数判断,若实际采样数Pc<Cmin,则将实际采样数Pc设置为1,进行全部采集,返回步骤1,并等待下一个周期;若实际采样数Pc≥Cmin,则将实际采样数与期望范围进行比较,若Pc>C(1+Offset),则减小实际采样率Pd,返回步骤1,并等待下一个周期;若Pc<C(1-Offset),则增加实际采样率Pd,返回步骤1,并等待下一个周期;若C(1-Offset)≤Pc≤C(1-Offset),则保持实际采样率Pd不变,返回步骤1,并等待下一个周期。
进一步的,根据存储模块的空间占用率来更新接口的实际采样数,包括:通过监控统计数据,获取到链路追踪系统的存储模块空间占用En1,将存储模块空间占用率En1与上一个周期时存储模块空间占用En2进行比较,计算存储模块空间占用率的增长速率Ep=(En2-En1)/t,并将计算得到的增长速率Ep与初始化参数配置中预设的空间占用率的期望增长速率S进行比较,若Ep>S,则减小期望采样数C,返回步骤1,并等待下一个周期。
通过本申请实施例,可以获得如下技术效果:
(1)针对微服务数量多,请求量大的情况下,解决了链路追踪服务需要大量人工进行配置采样率,以及采样策略难以维护的问题;
(2)利用监控统计数据,根据方法生成采样策略,利用链路追踪服务提供的策略下发能力,从而实现动态调整链路追踪的采样策略,减少人工配置的成本。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为链路追踪方法的流程示意图;
图2为根据存储模块占用空间速率来调整接口采样数的流程示意图;
图3为上报和策略下发流程的示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本申请保护的范围。
本申请的链路追踪方法的流程示意图如图1所示,该方法通过链路追踪服务查询接口,循环获取一段时间的监控统计数据,对数据进行分析,并根据模型生成对应的策略配置信息,从而实现动态调整链路追踪的采样策略。该方法包括如下步骤:
步骤1、链路追踪系统按照预设的调整策略频率t,通过链路追踪服务查询接口周期性获取监控统计数据;
在步骤1之前还包括,进行模型的初始化参数配置,包括:
调整策略频率t,单位为时间;
新增接口的默认采样率d,初始默认值为100%;
接口的实际采样率Pd,单位为百分比;
最小采样率dmin,初始默认值为10%;
接口的实际采样数Pc,单位为次;
最小每秒接口采样数Cmin,单位为次;
期望采样数C,单位为次;
所能接受的偏移值Offset,初始默认值为5%;
空间占用率的期望增长速率S,单位为MB/s。
步骤2、通过所述监控统计数据获取接口的实际采样率和存储模块的空间占用率,根据接口的业务请求数来更新接口的实际采样率,根据存储模块的空间占用率来更新接口的期望采样数。
图1为链路追踪方法的流程示意图,在步骤2中,根据接口的业务请求数来更新接口的实际采样率,包括:
若接口为新增接口,则将实际采样率更新为默认采样率d,返回步骤1,并等待下一个周期;
若接口不为新增接口,则进行采样率判断,若实际采样率Pd<dmin,则将实际采样率更新为dmin,返回步骤1,并等待下一个周期;若实际采样率Pd≥dmin,则进行采样数判断,若实际采样数Pc<Cmin,则将实际采样数Pc设置为1,进行全部采集,返回步骤1,并等待下一个周期;若实际采样数Pc≥Cmin,则将实际采样数与期望范围进行比较,若Pc>C(1+Offset),则减小实际采样率Pd,返回步骤1,并等待下一个周期;若Pc<C(1-Offset),则增加实际采样率Pd,返回步骤1,并等待下一个周期;若C(1-Offset)≤Pc≤C(1-Offset),则保持实际采样率Pd不变,返回步骤1,并等待下一个周期。
图2为根据存储模块占用空间速率来调整接口采样数的流程示意图,在步骤2中,根据存储模块的空间占用率来更新接口的实际采样数,包括:
通过监控统计数据,获取到链路追踪系统的存储模块空间占用En1,将存储模块空间占用率En1与上一个周期时存储模块空间占用En2进行比较,计算存储模块空间占用率的增长速率Ep=(En2-En1)/t,并将计算得到的增长速率Ep与初始化参数配置中预设的空间占用率的期望增长速率S进行比较,若Ep>S,则减小期望采样数C,返回步骤1,并等待下一个周期。
链路追踪系统,该系统包括采样策略更新单元、链路追踪服务单元
采样策略更新单元,用于根据监控统计数据生成对应的采样策略,并动态调整采样策略,并通过链路追踪服务支持的方式,提供给链路追踪服务单元;
链路追踪服务单元,用于监听配置文件中采样策略的变化,获取调整后的采样策略,并更新到服务端。
所述链路追踪服务支持的方式包括配置文件更新或者http服务。
图3为上报和策略下发流程的示意图。在图3中,jaeger-collect通过监听策略文件的变化,从而调整采样策略。服务端再下发策略到各个采集端,采集端接收到新的策略后,会进行重新加载,从而实现动态调整链路追踪的采样策略。
上报流程:在使用Jaeger作为微服务的链路追踪服务系统中,后端存储使用ElasticSearch,jaeger-agent采样策略配置成为remote即为配置下发模式,Jaeger服务,ElasticSearch服务可以通过暴露metric接口给Prometheus。
动态调整链路追踪的采样策略系统,在每一个周期中,通过查询Prometheus来获取一段时间内的监控统计数据,所述监控统计数据包括微服务中各个请求数,例如获取用户信息等,以及获取存储模块占用空间。
通过监控统计数据,利用本申请的方法会生成采样策略。采样策略写到jaeger-collect的配置文件中,jaeger-collect通过监听配置文件中采样策略的变化,监听到变化之后就重新加载,没有变化就保持不变。
采样策略下发流程:jaeger-collect会把新的采样策略下发到jaeger-agent中,从而实现链路追踪的采样策略的动态调整。
综上所述,本申请的方法通过获取微服务请求链路数据,后端存储的监控数据,根据本申请的方法,生成采样策略。本申请的系统,通过利用链路追踪服务的策略下发机制,实现策略动态生成,以及动态调整采样端的采样策略。针对微服务数量多,请求量大的情况下,解决了链路追踪服务需要大量人工进行配置采样率,以及采样策略难以维护的问题。利用监控统计数据,根据方法生成采样策略,利用链路追踪服务提供的策略下发能力,从而实现动态调整链路追踪的采样策略,减少人工配置的成本。
虽然以上描述了本申请的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本申请的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本申请的原理和实质的前提下,可以对这些实施方式作出多种变更或修改,但这些变更和修改均落入本申请的保护范围。

Claims (10)

1.一种微服务的链路追踪方法,其特征在于,该方法包括:
步骤1、链路追踪系统按照预设的调整策略频率,通过链路追踪服务查询接口周期性获取监控统计数据;
步骤2、通过所述监控统计数据获取接口的实际采样率和存储模块的空间占用率,根据接口的业务请求数来更新接口的实际采样率,根据存储模块的空间占用率来更新接口的期望采样数。
2.根据权利要求1所述的方法,其特征在于,在步骤1之前还包括,进行模型的初始化参数配置,包括:
调整策略频率t,单位为时间;
新增接口的默认采样率d,初始默认值为100%;
接口的实际采样率Pd,单位为百分比;
最小采样率dmin,初始默认值为10%;
接口的实际采样数Pc,单位为次;
最小每秒接口采样数Cmin,单位为次;
期望采样数C,单位为次;
所能接受的偏移值Offset,初始默认值为5%;
空间占用率的期望增长速率S,单位为MB/s。
3.根据权利要求1所述的方法,其特征在于,在步骤2中,根据接口的业务请求数来更新接口的实际采样率,包括:若接口为新增接口,则将实际采样率更新为默认采样率d,返回步骤1,并等待下一个周期。
4.根据权利要求3所述的方法,其特征在于,在步骤2中,根据接口的业务请求数来更新接口的实际采样率,包括:若接口不为新增接口,则进行采样率判断,若实际采样率Pd<dmin,则将实际采样率更新为dmin,返回步骤1,并等待下一个周期;若实际采样率Pd≥dmin,则进行采样数判断,若实际采样数Pc<Cmin,则将实际采样数Pc设置为1,进行全部采集,返回步骤1,并等待下一个周期;若实际采样数Pc≥Cmin,则将实际采样数与期望范围进行比较,若Pc>C(1+Offset),则减小实际采样率Pd,返回步骤1,并等待下一个周期;若Pc<C(1-Offset),则增加实际采样率Pd,返回步骤1,并等待下一个周期;若C(1-Offset)≤Pc≤C(1-Offset),则保持实际采样率Pd不变,返回步骤1,并等待下一个周期。
5.根据权利要求4所述的方法,其特征在于,在步骤2中,根据存储模块的空间占用率来更新接口的实际采样数,包括:通过监控统计数据,获取到链路追踪系统的存储模块空间占用En1,将存储模块空间占用率En1与上一个周期时存储模块空间占用En2进行比较,计算存储模块空间占用率的增长速率Ep=(En2-En1)/t,并将计算得到的增长速率Ep与初始化参数配置中预设的空间占用率的期望增长速率S进行比较,若Ep>S,则减小期望采样数C,返回步骤1,并等待下一个周期。
6.一种微服务的链路追踪系统,其特征在于,该系统包括采样策略更新单元和链路追踪服务单元;
采样策略更新单元,用于根据监控统计数据生成对应的采样策略,并动态调整采样策略,并通过链路追踪服务支持的方式,提供给链路追踪服务单元;
链路追踪服务单元,用于监听配置文件中采样策略的变化,获取调整后的采样策略,并更新到服务端。
7.根据权利要求6所述的系统,其特征在于,所述采样策略更新单元通过所述监控统计数据获取接口的实际采样率和存储模块的空间占用率,根据接口的业务请求数来更新接口的实际采样率,根据存储模块的空间占用率来更新接口的期望采样数。
8.根据权利要求7所述的系统,其特征在于,根据接口的业务请求数来更新接口的实际采样率,包括:若接口为新增接口,则将实际采样率更新为默认采样率d,返回步骤1,并等待下一个周期。
9.根据权利要求8所述的系统,其特征在于,根据接口的业务请求数来更新接口的实际采样率,包括:若接口不为新增接口,则进行采样率判断,若实际采样率Pd<dmin,则将实际采样率更新为dmin,返回步骤1,并等待下一个周期;若实际采样率Pd≥dmin,则进行采样数判断,若实际采样数Pc<Cmin,则将实际采样数Pc设置为1,进行全部采集,返回步骤1,并等待下一个周期;若实际采样数Pc≥Cmin,则将实际采样数与期望范围进行比较,若Pc>C(1+Offset),则减小实际采样率Pd,返回步骤1,并等待下一个周期;若Pc<C(1-Offset),则增加实际采样率Pd,返回步骤1,并等待下一个周期;若C(1-Offset)≤Pc≤C(1-Offset),则保持实际采样率Pd不变,返回步骤1,并等待下一个周期。
10.根据权利要求1所述的系统,其特征在于,根据存储模块的空间占用率来更新接口的实际采样数,包括:通过监控统计数据,获取到链路追踪系统的存储模块空间占用En1,将存储模块空间占用率En1与上一个周期时存储模块空间占用En2进行比较,计算存储模块空间占用率的增长速率Ep=(En2-En1)/t,并将计算得到的增长速率Ep与初始化参数配置中预设的空间占用率的期望增长速率S进行比较,若Ep>S,则减小期望采样数C,返回步骤1,并等待下一个周期。
CN202211563312.4A 2022-12-07 2022-12-07 一种微服务的链路追踪方法及系统 Pending CN115883343A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211563312.4A CN115883343A (zh) 2022-12-07 2022-12-07 一种微服务的链路追踪方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211563312.4A CN115883343A (zh) 2022-12-07 2022-12-07 一种微服务的链路追踪方法及系统

Publications (1)

Publication Number Publication Date
CN115883343A true CN115883343A (zh) 2023-03-31

Family

ID=85766321

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211563312.4A Pending CN115883343A (zh) 2022-12-07 2022-12-07 一种微服务的链路追踪方法及系统

Country Status (1)

Country Link
CN (1) CN115883343A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116471213A (zh) * 2023-06-09 2023-07-21 北京随信云链科技有限公司 链路追踪方法、链路追踪系统及介质
CN117097635A (zh) * 2023-10-12 2023-11-21 腾讯科技(深圳)有限公司 调用链路采样方法、装置、存储介质及设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116471213A (zh) * 2023-06-09 2023-07-21 北京随信云链科技有限公司 链路追踪方法、链路追踪系统及介质
CN116471213B (zh) * 2023-06-09 2023-09-15 北京随信云链科技有限公司 链路追踪方法、链路追踪系统及介质
CN117097635A (zh) * 2023-10-12 2023-11-21 腾讯科技(深圳)有限公司 调用链路采样方法、装置、存储介质及设备
CN117097635B (zh) * 2023-10-12 2024-01-05 腾讯科技(深圳)有限公司 调用链路采样方法、装置、存储介质及设备

Similar Documents

Publication Publication Date Title
CN115883343A (zh) 一种微服务的链路追踪方法及系统
US10044567B2 (en) System and method for determining optimal bandwidth for streaming to a client device in an adjustable bit rate video system
WO2021004063A1 (zh) 一种缓存服务器的带宽调度方法及装置
EP3621342B1 (en) Method and device for acquiring network resource, and scheduling server
CN104243405A (zh) 一种请求处理方法、装置及系统
US20140207425A1 (en) System, Method and Apparatus for Adaptive Virtualization
CN110149377A (zh) 一种视频服务节点资源分配方法、系统、装置及存储介质
CN113515545A (zh) 数据查询方法、装置、系统、电子设备以及存储介质
CN112257868A (zh) 构建和训练用于预测客流量的集成预测模型的方法及装置
US20220107750A1 (en) Method, electronic device, and computer program product for processing data
CN104184765A (zh) 一种请求控制方法及客户端装置和服务器端装置
CN108337302B (zh) 基于通信调度的无线网络缓存方法、装置、设备及介质
CN110874314A (zh) 压测方法、装置、设备和介质
CN103259824A (zh) 分布式数据存储系统中数据路由的同步方法和装置
CN109600432B (zh) 内容中心移动边缘网络用户动态接入方法
TWI766387B (zh) 一種具延遲感知負載平衡的反向代理方法和存儲裝置
CN114143377B (zh) 资源请求的配置方法、服务端、客户端、设备和存储介质
CN114925313A (zh) 一种基于分布式链路追踪动态采样率的自适应方法及系统
CN112035413B (zh) 元数据信息查询方法、装置及存储介质
CN113535673B (zh) 生成配置文件及数据处理的方法和装置
CN112751926A (zh) 一种集群中工作节点的管理方法、系统及相关装置
CN114448808A (zh) 一种削峰方法、装置及电子设备
CN111694717A (zh) 一种确定系统承压能力值的方法和装置
CN114201113B (zh) 多对象存储桶的选择方法、装置及处理器
CN114257521B (zh) 流量预测方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination