CN113688012A - 调用链监控系统及方法 - Google Patents
调用链监控系统及方法 Download PDFInfo
- Publication number
- CN113688012A CN113688012A CN202111055649.XA CN202111055649A CN113688012A CN 113688012 A CN113688012 A CN 113688012A CN 202111055649 A CN202111055649 A CN 202111055649A CN 113688012 A CN113688012 A CN 113688012A
- Authority
- CN
- China
- Prior art keywords
- call
- call chain
- log
- calling
- kafka
- 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
Links
- 238000012544 monitoring process Methods 0.000 title claims abstract description 65
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000012423 maintenance Methods 0.000 claims abstract description 18
- 238000004458 analytical method Methods 0.000 claims abstract description 10
- 238000004364 calculation method Methods 0.000 claims abstract description 10
- 238000004590 computer program Methods 0.000 claims description 18
- 238000003860 storage Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 6
- 230000002085 persistent effect Effects 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- IXJYMUFPNFFKIB-FMONCPFKSA-N pomp protocol Chemical compound S=C1N=CNC2=C1NC=N2.O=C1C=C[C@]2(C)[C@H]3C(=O)C[C@](C)([C@@](CC4)(O)C(=O)CO)[C@@H]4[C@@H]3CCC2=C1.C=1N=C2N=C(N)N=C(N)C2=NC=1CN(C)C1=CC=C(C(=O)N[C@@H](CCC(O)=O)C(O)=O)C=C1.C([C@H](C[C@]1(C(=O)OC)C=2C(=C3C([C@]45[C@H]([C@@]([C@H](OC(C)=O)[C@]6(CC)C=CCN([C@H]56)CC4)(O)C(=O)OC)N3C=O)=CC=2)OC)C[C@@](C2)(O)CC)N2CCC2=C1NC1=CC=CC=C21 IXJYMUFPNFFKIB-FMONCPFKSA-N 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种调用链监控系统及方法,可用于分布式技术领域,该系统包括:分布式微服务子系统,用于获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,将贴源后的调用链日志推送给产品运行监控子系统的Kafka;产品运行监控子系统:Kafka,用于存储调用链日志;解析模块,用于基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka;计算模块,用于计算展示指标数据并存回Kafka;运维服务端模块,用于生成调用关系数据。本发明可以监控多个调用环节的调用链。
Description
技术领域
本发明涉及分布式技术领域,尤其涉及一种调用链监控系统及方法。
背景技术
在银行等大型企业中,为适应海量数据及海量交易的处理需求,部分产品(如核心银行)会采用“微服务+单元化”的部署架构。在单元化架构下,业务数据被划分到多个单元,每个服务会部署多个单元,每笔交易根据一定的客户要素(如核心客户号)路由到特定单元。因此,在追踪调用关系数据时,不仅需要知道交易经过哪些服务,还需要知道服务所在的部署单元。传统的调用链追踪工具只能体现一笔交易经过哪些微服务,无法体现微服务所属的单元以及产品,不利于运维人员精准定位问题。
发明内容
本发明实施例提出一种调用链监控系统,用以监控多个调用环节的调用链,该系统包括:
分布式微服务子系统和产品运行监控子系统;其中,
分布式微服务子系统,用于获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,将贴源后的调用链日志推送给产品运行监控子系统的Kafka;
产品运行监控子系统包括Kafka、解析模块、计算模块和运维服务端模块,其中,Kafka,用于存储调用链日志;
解析模块,用于从Kafka中提取调用链日志;基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,所述单元化码表用于存储各调用环节之间的关联关系;
计算模块,用于根据解析后的调用链日志,计算展示指标数据并存回Kafka;
运维服务端模块,用于根据解析后的调用链日志和指标数据,生成调用关系数据。
本发明实施例提出一种调用链监控方法,用以监控多个调用环节的调用链,该方法包括:
从Kafka中提取调用链日志,所述调用链日志是分布式微服务子系统获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,然后将贴源后的调用链日志推送至Kafka的;
基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,所述单元化码表用于存储各调用环节之间的关联关系;
根据解析后的调用链日志,计算展示指标数据并存回Kafka;
根据解析后的调用链日志和指标数据,生成调用关系数据。
本发明实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述调用链监控方法。
本发明实施例还提出了一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述调用链监控方法的计算机程序。
在本发明实施例中,分布式微服务子系统,用于获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,将贴源后的调用链日志推送给产品运行监控子系统的Kafka;产品运行监控子系统包括Kafka、解析模块、计算模块和运维服务端模块,其中,Kafka用于存储调用链日志;解析模块,用于从Kafka中提取调用链日志;基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,所述单元化码表用于存储各调用环节之间的关联关系;计算模块,用于根据解析后的调用链日志,计算展示指标数据并存回Kafka;运维服务端模块,用于根据解析后的调用链日志和指标数据,生成调用关系数据。在上述过程中,可获取每条业务请求对应的调用链日志,通过贴源各调用环节信息,使得调用链日志可追踪每条业务请求涉及到的调用环节和指标数据,实现多调用环节追踪。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中调用链监控系统的示意图;
图2为本发明实施例中调用链监控系统的原理图;
图3为本发明实施例中调用链监控系统的另一示意图;
图4为本发明实施例中贴源后的调用链日志示例;
图5为本发明实施例中解析后的调用链日志示例;
图6为本发明实施例中计算的展示指标数据示例;
图7为本发明实施例中树形链路结构的调用关系数据的示意图;
图8为本发明实施例中表结构的调用关系数据的示意图;
图9为本发明实施例中单元级的拓扑结构的调用关系数据的示意图;
图10为本发明实施例中微服务级的拓扑结构的调用关系数据的示意图;
图11为本发明实施例中调用链监控方法的流程图;
图12为本发明实施例中计算机设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
在本说明书的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
首先对本发明涉及到的术语进行解释。
调用链:分布式微服务架构下,一笔交易会经过多个微服务的处理。调用链追踪技术可通过traceid和spanid机制,获取一笔交易服务间调用的树形关系,以便快速定位问题及了解服务间依赖拓扑。
TraceId:用来标识每个调用链的唯一ID,称为调用链标识,TraceId在整个调用链路上传递,保持不变。
SpanId:调用链中的每一个环节为一个Span,每一个Span有一个SpanId来标识,称为环节标识,前后Span间形成父子关系,环节可以是应用、微服务或单元。
单元化架构:单元化架构就是把单元作为系统部署的基本单位,在全站所有机房中部署数个单元,每个机房里的单元数目不定,任意一个单元都部署了系统所需的所有核心业务应用,数据则是全量数据按照某种维度(或多个维度)划分后的一部分。
单元:也称为DCN(Data Center Node,数据中心节点),指一个能完成所有核心(关键)业务操作的自包含集合,在这个集合中包含了核心业务所需的所有服务,以及分配给这个单元的数据。可以通俗的理解为,一个DCN,即为一个银行的线上虚拟分行,这个虚拟分行只承载银行某个业务的一部分客户。通过一定的数据分片键(比如客户号,机构号,业务领域等)和分片规则(比如分段,Hash,随机,最小客户量等),将不同的数据划分到不同的DCN内。一旦某个DCN所承载的数据达到规定的上限,可以通过部署新的DCN,来实现容量的水平扩展,保证业务的持续快速发展。
部署组:是TSF执行应用批量部署的逻辑概念,一个部署组内包括多个应用实例,每个应用实例上运行相同的应用程序。
TSF:Tencent Service Framework,腾讯分布式微服务框架,是一个围绕着应用和微服务的PaaS平台,提供应用全生命周期管理、数据化运营和立体监控等功能。在本发明中,当应用部署到TSF平台后,TSF平台基于zipkin获取服务间调用链,并将调用链日志(Tracelog)推送给POMP,以供后续处理。
POMP:企业自研的产品运行监控平台,其中包括调用链监控功能。在本发明中,POMP在TSF投递的tracelog基础上,进行二次加工,为用户提供适配单元化架构的调用链监控功能。
产品:企业特有概念,指对外提供一定功能或服务的一个系统。一个产品通常包含多个模块(对应运行态的多个服务)。在单元化架构下,产品会部署多个单元,每个单元内部署该产品的全部微服务。
图1为本发明实施例中调用链监控系统的示意图,如图1所示,该系统包括:分布式微服务子系统101和产品运行监控子系统102;其中,
分布式微服务子系统101,用于获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,将贴源后的调用链日志推送给产品运行监控子系统的Kafka;
产品运行监控子系统102包括Kafka1021、解析模块1022、计算模块1023和运维服务端模块1024,其中,
Kafka1021,用于存储调用链日志;
解析模块1022,用于从Kafka中提取调用链日志;基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,所述单元化码表用于存储各调用环节之间的关联关系;
计算模块1023,用于根据解析后的调用链日志,计算展示指标数据并存回Kafka;
运维服务端模块1024,用于根据解析后的调用链日志和指标数据,生成调用关系数据。
具体实施时,图2为本发明实施例中调用链监控系统的原理图,分布式微服务子系统基于TSF平台开发,产品运行监控子系统基于POMP开发。分布式微服务子系统是基于Zipkin埋点获取每条业务请求在微服务之间的调用关系数据
图3为本发明实施例中调用链监控系统的另一示意图,在一实施例中,产品运行监控子系统还包括运维展示端模块1025,用于展示所述调用关系数据。
在一实施例中,所述调用关系数据包括调用链标识traceid和调用链中每个调用环节的环节标识spanid;
所述调用关系数据采用如下至少一种结构表示:树形链路结构,拓扑结构,表结构。
在一实施例中,所述展示指标包括各调用环节的平均响应时间和/或平均成功率。
在计算展示指标时,按维度进行聚合,形成每秒的指标数据,可以是按照调用环节维度,例如,包括微服务的平均响应时间和/或平均成功率,以及单元的平均响应时间和/或平均成功率。
在一实施例中,所述系统还包括自动部署子系统103,用于引用分布式微服务子系统提供的SDK,将各产品的应用部署到分布式微服务子系统。
在一实施例中,产品运行监控子系统还包括配置管理模块1026,用于存储单元化码表。
在一实施例中,所述系统还包括单元化管理子系统104,用于建立产品的单元化部署模型,并推送至产品运行监控子系统的配置管理模块的单元化码表中。
上述推送过程是实时进行的,保证数据同步。
上述建立单元化部署模型可以通过页面导航的方式引导用户建立。
在一实施例中,产品运行监控子系统还包括存储模块1027,用于从Kafka中读取解析后的调用链日志和指标数据,持久化到ES中存储;
运维服务端模块具体用于:从ES中查询解析后的调用链日志和指标数据,并形成调用关系数据。
在上述实施例中,调用关系数据不仅能体现微服务间调用关系,还能精确标识微服务所在单元和产品。
在一实施例中,所述调用环节包括集群、产品、单元、部署组和应用。当然,可以理解的是还可以有其他调用环节,如地域等。
下面给出一个具体实施例来说明本发明提出的系统的具体应用。
首先,单元化管理子系统将各个产品的单元化部署模型推送至产品运行监控子系统的配置管理模块的单元化码表中。
分布式微服务子系统获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志tracelog,并在调用链日志中贴源部署组信息,然后将贴源后的调用链日志tracelog推送给产品运行监控子系统的Kafka,贴源后的调用链日志示例见图4。
解析模块从Kafka中提取调用链日志;基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节(单元、产品等)信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,解析后的调用链日志示例见图5。
计算模块根据解析后的调用链日志,计算每秒一条的展示指标数据并存回Kafka,例如serviceA的每秒平均处理耗时、每秒平均成功率。计算的展示指标数据示例见图6。
运维服务端模块根据解析后的调用链日志和指标数据,生成树形链路结构的调用关系数据,其中,一个业务请求每经过一个微服务,该微服务会作为client和作为server各打印一笔调用链日志,并在每个调用链日志中记录traceid、spanid、parentspanid(父调用环节的调用环节标识)。图7为本发明实施例中树形链路结构的调用关系数据的示意图,可以展示经过的微服务(service1、service2、service3、service4、service5)之间的调用关系,微服务所属的单元和产品,每个微服务的平均响应时间,这样,当一个微服务部署在多个单元时,可知道该笔交易失败的微服务具体在哪个单元下,从而便于运维人员精准排查问题。
图8为本发明实施例中表结构的调用关系数据的示意图。图9为本发明实施例中单元级的拓扑结构的调用关系数据的示意图,图10为本发明实施例中微服务级的拓扑结构的调用关系数据的示意图。
可见,本发明实施例提出的系统可以展示多个级别的调用关系数据。
综上所述,在本发明实施例提出的系统中,分布式微服务子系统,用于获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,将贴源后的调用链日志推送给产品运行监控子系统的Kafka;产品运行监控子系统包括Kafka、解析模块、计算模块和运维服务端模块,其中,Kafka用于存储调用链日志;解析模块,用于从Kafka中提取调用链日志;基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,所述单元化码表用于存储各调用环节之间的关联关系;计算模块,用于根据解析后的调用链日志,计算展示指标数据并存回Kafka;运维服务端模块,用于根据解析后的调用链日志和指标数据,生成调用关系数据。在上述过程中,可获取每条业务请求对应的调用链日志,通过贴源各调用环节信息,使得调用链日志可追踪每条业务请求涉及到的调用环节和指标数据,实现多调用环节追踪。
本发明实施例还提出一种调用链监控方法,其原理与调用链监控系统类似,这里不再赘述。
图11为本发明实施例中调用链监控方法的流程图,具体包括:
步骤1101,从Kafka中提取调用链日志,所述调用链日志是分布式微服务子系统获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,然后将贴源后的调用链日志推送至Kafka的;
步骤1102,基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,所述单元化码表用于存储各调用环节之间的关联关系;
步骤1103,根据解析后的调用链日志,计算展示指标数据并存回Kafka;
步骤1104,根据解析后的调用链日志和指标数据,生成调用关系数据。
在一实施例中,所述方法还包括:
展示所述调用关系数据。
在一实施例中,所述调用关系数据包括调用链标识和调用链中每个调用环节的环节标识;
所述调用关系数据采用如下至少一种结构表示:树形链路结构,拓扑结构,表结构。
在一实施例中,所述展示指标包括各调用环节的平均响应时间和/或平均成功率。
在一实施例中,所述方法还包括:
将各产品的应用进行部署。
在一实施例中,所述方法还包括存储单元化码表。
在一实施例中,所述方法还包括:
建立产品的单元化部署模型,并存储至单元化码表中。
在一实施例中,所述方法还包括:
从Kafka中读取解析后的调用链日志和指标数据,持久化到ES中存储;
从ES中查询解析后的调用链日志和指标数据,并形成调用关系数据。
在一实施例中,所述调用环节包括集群、产品、单元、部署组和应用。
综上所述,在本发明实施例提出的方法中,从Kafka中提取调用链日志,所述调用链日志是分布式微服务子系统获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,然后将贴源后的调用链日志推送至Kafka的;基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,所述单元化码表用于存储各调用环节之间的关联关系;根据解析后的调用链日志,计算展示指标数据并存回Kafka;根据解析后的调用链日志和指标数据,生成调用关系数据。在上述过程中,可获取每条业务请求对应的调用链日志,通过贴源各调用环节信息,使得调用链日志可追踪每条业务请求涉及到的调用环节和指标数据,实现多调用环节追踪。
本发明的实施例还提供一种计算机设备,图12为本发明实施例中计算机设备的示意图,该计算机设备能够实现上述实施例中的调用链监控方法中全部步骤,所述计算机设备具体包括如下内容:
处理器(processor)1201、存储器(memory)1202、通信接口(CommunicationsInterface)1203和通信总线1204;
其中,所述处理器1201、存储器1202、通信接口1203通过所述通信总线1204完成相互间的通信;所述通信接口1203用于实现服务器端设备、检测设备以及用户端设备等相关设备之间的信息传输;
所述处理器1201用于调用所述存储器1202中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的调用链监控方法中的全部步骤。
本发明的实施例还提供一种计算机可读存储介质,能够实现上述实施例中的调用链监控方法中全部步骤,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的调用链监控方法的全部步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序业务系统。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序业务系统的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序业务系统的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种调用链监控系统,其特征在于,包括:分布式微服务子系统和产品运行监控子系统;其中,
分布式微服务子系统,用于获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,将贴源后的调用链日志推送给产品运行监控子系统的Kafka;
产品运行监控子系统包括Kafka、解析模块、计算模块和运维服务端模块,其中,
Kafka,用于存储调用链日志;
解析模块,用于从Kafka中提取调用链日志;基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,所述单元化码表用于存储各调用环节之间的关联关系;
计算模块,用于根据解析后的调用链日志,计算展示指标数据并存回Kafka;
运维服务端模块,用于根据解析后的调用链日志和指标数据,生成调用关系数据。
2.如权利要求1所述的调用链监控系统,其特征在于,产品运行监控子系统还包括运维展示端模块,用于展示所述调用关系数据。
3.如权利要求1所述的调用链监控系统,其特征在于,所述调用关系数据包括调用链标识和调用链中每个调用环节的环节标识;
所述调用关系数据采用如下至少一种结构表示:树形链路结构,拓扑结构,表结构。
4.如权利要求1所述的调用链监控系统,其特征在于,所述展示指标包括各调用环节的平均响应时间和/或平均成功率。
5.如权利要求1所述的调用链监控系统,其特征在于,还包括自动部署子系统,用于引用分布式微服务子系统提供的SDK,将各产品的应用部署到分布式微服务子系统。
6.如权利要求1所述的调用链监控系统,其特征在于,产品运行监控子系统还包括配置管理模块,用于存储单元化码表。
7.如权利要求6所述的调用链监控系统,其特征在于,还包括单元化管理子系统,用于建立产品的单元化部署模型,并推送至产品运行监控子系统的配置管理模块的单元化码表中。
8.如权利要求1所述的调用链监控系统,其特征在于,产品运行监控子系统还包括存储模块,用于从Kafka中读取解析后的调用链日志和指标数据,持久化到ES中存储;
运维服务端模块具体用于:从ES中查询解析后的调用链日志和指标数据,并形成调用关系数据。
9.如权利要求1所述的调用链监控系统,其特征在于,所述调用环节包括集群、产品、单元、部署组和应用。
10.一种调用链监控方法,其特征在于,包括:
从Kafka中提取调用链日志,所述调用链日志是分布式微服务子系统获取每条业务请求在微服务之间的调用关系数据,生成每条业务请求对应的调用链日志,并在调用链日志中贴源部署组信息,然后将贴源后的调用链日志推送至Kafka的;
基于调用链日志中贴源的部署组信息,从单元化码表查询各调用环节信息,将查询到的各调用环节信息贴源到调用链日志,形成解析后的调用链日志并存回Kafka,所述单元化码表用于存储各调用环节之间的关联关系;
根据解析后的调用链日志,计算展示指标数据并存回Kafka;
根据解析后的调用链日志和指标数据,生成调用关系数据。
11.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求10所述方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求10所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111055649.XA CN113688012A (zh) | 2021-09-09 | 2021-09-09 | 调用链监控系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111055649.XA CN113688012A (zh) | 2021-09-09 | 2021-09-09 | 调用链监控系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113688012A true CN113688012A (zh) | 2021-11-23 |
Family
ID=78585765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111055649.XA Pending CN113688012A (zh) | 2021-09-09 | 2021-09-09 | 调用链监控系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113688012A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114996002A (zh) * | 2022-05-24 | 2022-09-02 | 北京达佳互联信息技术有限公司 | 服务器资源分配方法、装置、电子设备及存储介质 |
CN115129491A (zh) * | 2022-07-08 | 2022-09-30 | 盐城金堤科技有限公司 | 微服务请求消息跟踪方法、生成方法、装置、介质及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111459766A (zh) * | 2019-11-14 | 2020-07-28 | 国网浙江省电力有限公司信息通信分公司 | 一种面向微服务系统的调用链跟踪与分析方法 |
CN112422335A (zh) * | 2020-11-10 | 2021-02-26 | 普元信息技术股份有限公司 | 技术中台中基于微服务架构实现业务链路分析的方法、系统、装置及存储介质 |
CN112433991A (zh) * | 2020-11-20 | 2021-03-02 | 苏宁金融科技(南京)有限公司 | 一种问题定位方法和装置 |
CN112612675A (zh) * | 2020-12-25 | 2021-04-06 | 山东经伟晟睿数据技术有限公司 | 微服务架构下的分布式大数据日志链路跟踪方法及系统 |
CN113132143A (zh) * | 2019-12-31 | 2021-07-16 | 深圳云天励飞技术有限公司 | 服务调用追踪方法及相关产品 |
-
2021
- 2021-09-09 CN CN202111055649.XA patent/CN113688012A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111459766A (zh) * | 2019-11-14 | 2020-07-28 | 国网浙江省电力有限公司信息通信分公司 | 一种面向微服务系统的调用链跟踪与分析方法 |
CN113132143A (zh) * | 2019-12-31 | 2021-07-16 | 深圳云天励飞技术有限公司 | 服务调用追踪方法及相关产品 |
CN112422335A (zh) * | 2020-11-10 | 2021-02-26 | 普元信息技术股份有限公司 | 技术中台中基于微服务架构实现业务链路分析的方法、系统、装置及存储介质 |
CN112433991A (zh) * | 2020-11-20 | 2021-03-02 | 苏宁金融科技(南京)有限公司 | 一种问题定位方法和装置 |
CN112612675A (zh) * | 2020-12-25 | 2021-04-06 | 山东经伟晟睿数据技术有限公司 | 微服务架构下的分布式大数据日志链路跟踪方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114996002A (zh) * | 2022-05-24 | 2022-09-02 | 北京达佳互联信息技术有限公司 | 服务器资源分配方法、装置、电子设备及存储介质 |
CN115129491A (zh) * | 2022-07-08 | 2022-09-30 | 盐城金堤科技有限公司 | 微服务请求消息跟踪方法、生成方法、装置、介质及设备 |
CN115129491B (zh) * | 2022-07-08 | 2024-03-05 | 盐城天眼察微科技有限公司 | 微服务请求消息跟踪方法、生成方法、装置、介质及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107193894B (zh) | 数据处理方法、个体识别方法及相关装置 | |
CN109710703A (zh) | 一种血缘关系网络的生成方法及装置 | |
CN108959337A (zh) | 大数据获取方法、装置、设备及存储介质 | |
CN108282527A (zh) | 生成服务实例的分布式系统和方法 | |
CN109739919A (zh) | 一种用于电力系统的前置机和采集系统 | |
CN113688012A (zh) | 调用链监控系统及方法 | |
CN111858608A (zh) | 一种数据管理方法、装置、服务器和存储介质 | |
CN111061696A (zh) | 一种交易报文日志的解析方法及装置 | |
CN108156225A (zh) | 基于容器云平台的微应用监控系统和方法 | |
CN112416488A (zh) | 一种用户画像实现的方法、装置、计算机设备及计算机可读存储介质 | |
CN112579552A (zh) | 日志存储及调用方法、装置及系统 | |
CN114092246A (zh) | 金融交易链路的问题定位方法及装置 | |
CN115994079A (zh) | 测试方法、装置、电子设备、存储介质及程序产品 | |
CN110266610B (zh) | 流量识别方法、装置、电子设备 | |
CN111414567B (zh) | 数据处理方法、装置 | |
CN117827784A (zh) | 噪音日志的过滤方法、系统 | |
CN111538616A (zh) | 异常定位方法、装置、系统与计算机可读存储介质 | |
CN110909072B (zh) | 一种数据表建立方法、装置及设备 | |
CN113992664B (zh) | 一种集群通信的方法、相关装置及存储介质 | |
CN115328457A (zh) | 基于参数配置的表单页面实现方法和装置 | |
CN114124766A (zh) | 基于模拟数据的测试方法及装置 | |
CN112035613B (zh) | 基于多轮对话的信息推送方法及装置、存储介质、电子装置 | |
CN111352824A (zh) | 测试方法、装置及计算机设备 | |
CN109783559A (zh) | 房产交易数据的获取方法、装置、电子设备以及存储介质 | |
CN114153490A (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 |