CN112346930A - 一种基于cat监控全链路方法及系统 - Google Patents

一种基于cat监控全链路方法及系统 Download PDF

Info

Publication number
CN112346930A
CN112346930A CN202011197503.4A CN202011197503A CN112346930A CN 112346930 A CN112346930 A CN 112346930A CN 202011197503 A CN202011197503 A CN 202011197503A CN 112346930 A CN112346930 A CN 112346930A
Authority
CN
China
Prior art keywords
link
cat
calling
messagetree
monitoring
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
CN202011197503.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.)
Yinsheng Payment Service Co Ltd
Original Assignee
Yinsheng Payment Service 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 Yinsheng Payment Service Co Ltd filed Critical Yinsheng Payment Service Co Ltd
Priority to CN202011197503.4A priority Critical patent/CN112346930A/zh
Publication of CN112346930A publication Critical patent/CN112346930A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明实施例提供一种基于CAT监控全链路方法,包括以下步骤:步骤一:定义调用链路的消息格式;步骤二:解析调用链路的日志;步骤三:封装调用链路拓扑图;本发明实施例便于直观监控各条链路的节点信息,提高异常链路的定位效率。

Description

一种基于CAT监控全链路方法及系统
技术领域
本发明涉及监控技术领域,更具体地说,涉及到一种基于CAT监控全链路方法及系统。
背景技术
目前cat监控系统不能展示一个请求的完成链路,只能展示当前应用的埋点日志信息。对于分析一个请求在整个分布式系统的调用过程比较困难。也不能展示各个系统之间的调用关系,当分布式系统中的某个应用抛出异常时,无法确定该异常是由哪个子系统触发的。当某个子系统有多个实例时,也无法确定是哪个实例出了异常。例如,某个SQL查询耗时,导致的数据库连接被占用,数据库连接被占用又可能导致业务查询超时,和该查询相关的系统可能由于等待导致线程阻塞,最终系统线程池耗尽,牵连出相关联的子系统出现大面积报错。对于定位问题、以及系统恢复是非常艰巨。
本发明内容
为了克服现有技术的不足,本发明提供一种基于CAT监控全链路方法用来解决某个链路单一节点信息无法直观监控全链路异常的问题。
本发明解决其技术问题所采用的技术方案是:一种基于CAT监控全链路方法,包括以下步骤:
步骤一:定义调用链路的消息格式;
步骤二:解析调用链路的日志;
步骤三:封装调用链路拓扑图。
具体地,定义调用链路的消息格式,所述步骤包括:
组件信息埋点;
定义远程调用RemoteCall的Event类型消息;
cat监控系统定义rootMessageId,parentMessageId,childMessageId。
具体地,解析调用链路的日志,所述步骤包括:
解析各个子系统的MessageTree的message。
具体地,解析各个子系统的MessageTree的message,所述步骤包括:
从根开始解析,通过MessageTree的getRootMessageId获取根MessageTree;
通过接口查询根MessageTree;
通过RemoteCall埋点信息id查询下一个MessageTree;
循环递归调用并解析Event类型数据信息。
优选地,定义ChainNode对象以及LinkNode对象封装Event类型数据信息。
优选地,组件信息通过Event类型进行封装。
具体地,封装调用链路拓扑图,所述步骤包括:
将节点信息在节点的下方进行展示,用label标签进行存储数据;
把节点详细信息用title属性进行存储;
对不同组件类型进行分类;
对异常信息进行颜色标记。
优选地,调用链路对应的监控系统使用MessageTree进行一次调用。
一种基于CAT监控全链路系统,所述系统包括:
定义单元,用于定义调用链路的消息格式;
解析单元,用于解析调用链路的日志;
封装单元,用于封装调用链路拓扑图。
本发明的有益效果是:通过定义调用链路的消息格式,解析调用链路的日志,封装调用链路拓扑图,便于直观监控各条链路的节点信息,提高异常链路的定位效率。
附图说明
图1是一种基于CAT监控全链路方法的流程示意图。
图2是一种基于CAT监控全链路系统的功能模块图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
以下结合具体实施例对本发明的具体实现进行详细描述:
实施例一:
图1示出了本发明实施例一提供的一种基于CAT监控全链路方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
在步骤S101中:定义调用链路的消息格式;
具体地,定义调用链路的消息格式,所述步骤包括:
组件信息埋点;
定义远程调用RemoteCall的Event类型消息;
cat监控系统定义rootMessageId,parentMessageId,childMessageId。
在步骤S102中:解析调用链路的日志;
具体地,解析调用链路的日志,所述步骤包括:
解析各个子系统的MessageTree的message
具体地,解析各个子系统的MessageTree的message,所述步骤包括:
从根开始解析,通过MessageTree的getRootMessageId获取根MessageTree;
通过接口查询根MessageTree;
通过RemoteCall埋点信息id查询下一个MessageTree;
循环递归调用并解析Event类型数据信息。
在步骤S103中:封装调用链路拓扑图。
优选地,定义ChainNode对象以及LinkNode对象封装Event类型数据信息。
优选地,组件信息通过Event类型进行封装。
具体地,封装调用链路拓扑图,所述步骤包括:
将节点信息在节点的下方进行展示,用label标签进行存储数据。
把节点详细信息用title属性进行存储;
对不同组件类型进行分类;
对异常信息进行颜色标记。
优选地,调用链路对应的监控系统使用MessageTree进行一次调用。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
实施例二:
图2示出了本发明实施例二提供的一种基于CAT监控全链路系统的结构,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
定义单元201,用于定义调用链路的消息格式;
解析单元202,用于解析调用链路的日志;
封装单元203,用于封装调用链路拓扑图。
在本申请实施例中,通过定义调用链路的消息格式,解析调用链路的日志,封装调用链路拓扑图,便于直观监控各条链路的节点信息,提高异常链路的定位效率;各单元的具体实施方式可参考实施例一的描述,在此不再赘述。
定义调用链路消息格式:
(1)cat监控系统把一次调用用MessageTree来描述,一次完整的请求由多个MessageTree关联起来。因此,解析全链路需要先解析MessageTree,并把多个MessageTree串联起来;
(2)MessageTree是消息树,消息树是由不同的消息类型组成的,主要的消息类型有Transaction、Event、Heartbeat、Metric等,其中Transaction可以包含其它消息类型以及自身,因此把Transaction类型的消息定义为拓扑图中的节点,其它消息类型为节点中的信息;
(3)在分布式系统调用中,用Transaction定义一次调用的过程,用Event定义调用过程中的信息,如ip、端口、服务接口等信息,通过Transaction的addChild方法,把Event类型消息加入当前Transaction;
(4)组件信息埋点,如redis,zookeeper,kafka,database等,在调用的时候通过定义Event来标识不同的组件类型,并收集组件的ip,端口,方法等信息;
(5)定义远程调用RemoteCall的Event类型消息,该Event的数据是被调用的ree的id,用来标识子系统之间的调用关系;
(6)cat监控系统定义了三个消息id,rootMessageId,parentMessageId,childMessageId。通过这三个id,在系统调用时贯穿整个链路。rootMessageId是最根的id,一般由起始的调用端生成,在整个调用了链路中不会改变,用来标识一个链路的唯一id。
解析调用链路日志:
(1)解析调用链路就是解析每个子系统的MessageTree的message,要从根开始解析,通过MessageTree的getRootMessageId可以获取到根MessageTree,再通过接口查询出根MessageTree。从根消息出发,再通过RemoteCall埋点信息id,查询出下一个MessageTree,循环递归调用并解析Event类型数据信息;
(2)定义两个对象用来封装解析出来的结果,ChainNode对象用来封装节点信息,主要有节点id,应用名、IP、端口、方法名、调用耗时、调用状态等;LinkNode对象用来封装节点关系信息,以及节点调用耗时、状态颜色等;
(3)组件解析,组件的信息都通过Event类型来封装了,并且定义了不同类型的组件,在解析的时候定义了不同组件类型的解析器,把识别出来的组件类型丢入对应的解析器中解析,最终把数据放入ChainNode中。
封装调用链路拓扑图:
(1)解析过程把最原始的数据解析出来,要在界面展示还需要对原始数据进行处理;
(2)把节点信息的ip,端口,应用名在节点的下方展示,用label标签来存数据;
(3)把节点的详细信息用title属性来存储,如ip、端口、服务名、调用时间、耗时、智能分析结果等;
(4)对不同对组件类型进行分类,如dubbo、redis、http、database等;
(5)对异常信息进行颜色标记,正常的请求节点用绿色标记状态,异常的节点信息用红色进行标记,异常的调用链路用红色进行标记。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各实施例的单元及算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。
专业技术人员可以对每个特定的应用来使用不同的方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉技术领域的人员在本发明揭露的技术范围内,可轻易想到变化或者替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (9)

1.一种基于CAT监控全链路方法,其特征在于,包括以下步骤:
步骤一:定义调用链路的消息格式;
步骤二:解析调用链路的日志;
步骤三:封装调用链路拓扑图。
2.根据权利要求1所述的一种基于CAT监控全链路方法,其特征在于,定义调用链路的消息格式,所述步骤包括:
组件信息埋点;
定义远程调用RemoteCall的Event类型消息;
cat监控系统定义rootMessageId,parentMessageId,childMessageId。
3.根据权利要求1所述的一种基于CAT监控全链路方法,其特征在于,解析调用链路的日志,所述步骤包括:
解析各个子系统的MessageTree的message。
4.根据权利要求3所述的一种基于CAT监控全链路方法,其特征在于,解析各个子系统的MessageTree的message,所述步骤包括:
从根开始解析,通过MessageTree的getRootMessageId获取根MessageTree;
通过接口查询根MessageTree;
通过RemoteCall埋点信息id查询下一个MessageTree;
循环递归调用并解析Event类型数据信息。
5.根据权利要求1所述的一种基于CAT监控全链路方法,其特征在于,定义ChainNode对象以及LinkNode对象封装Event类型数据信息。
6.根据权利要求1所述的一种基于CAT监控全链路方法,其特征在于,组件信息通过Event类型进行封装。
7.根据权利要求1所述的一种基于CAT监控全链路方法,其特征在于,封装调用链路拓扑图,所述步骤包括:
将节点信息在节点的下方进行展示,用label标签进行存储数据;
把节点详细信息用title属性进行存储;
对不同组件类型进行分类;
对异常信息进行颜色标记。
8.根据权利要求1所述的一种基于CAT监控全链路方法,其特征在于,调用链路对应的监控系统使用MessageTree进行一次调用。
9.一种基于CAT监控全链路系统,其特征在于,所述系统包括:
定义单元,用于定义调用链路的消息格式;
解析单元,用于解析调用链路的日志;
封装单元,用于封装调用链路拓扑图。
CN202011197503.4A 2020-10-30 2020-10-30 一种基于cat监控全链路方法及系统 Pending CN112346930A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011197503.4A CN112346930A (zh) 2020-10-30 2020-10-30 一种基于cat监控全链路方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011197503.4A CN112346930A (zh) 2020-10-30 2020-10-30 一种基于cat监控全链路方法及系统

Publications (1)

Publication Number Publication Date
CN112346930A true CN112346930A (zh) 2021-02-09

Family

ID=74355525

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011197503.4A Pending CN112346930A (zh) 2020-10-30 2020-10-30 一种基于cat监控全链路方法及系统

Country Status (1)

Country Link
CN (1) CN112346930A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113760652A (zh) * 2021-08-13 2021-12-07 济南浪潮数据技术有限公司 基于应用的全链路监控的方法、系统、设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103763153A (zh) * 2014-01-10 2014-04-30 迈普通信技术股份有限公司 自动将设备链路信息转换为拓扑图形的方法及系统
CN109885458A (zh) * 2019-01-16 2019-06-14 深圳壹账通智能科技有限公司 基于cat的监控方法、装置、计算机系统及存储介质
CN110708212A (zh) * 2019-09-10 2020-01-17 中国平安财产保险股份有限公司 分布式系统中调用链路的追踪方法及装置
WO2020200031A1 (zh) * 2019-04-04 2020-10-08 华为技术有限公司 一种链路故障监控方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103763153A (zh) * 2014-01-10 2014-04-30 迈普通信技术股份有限公司 自动将设备链路信息转换为拓扑图形的方法及系统
CN109885458A (zh) * 2019-01-16 2019-06-14 深圳壹账通智能科技有限公司 基于cat的监控方法、装置、计算机系统及存储介质
WO2020200031A1 (zh) * 2019-04-04 2020-10-08 华为技术有限公司 一种链路故障监控方法及装置
CN110708212A (zh) * 2019-09-10 2020-01-17 中国平安财产保险股份有限公司 分布式系统中调用链路的追踪方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113760652A (zh) * 2021-08-13 2021-12-07 济南浪潮数据技术有限公司 基于应用的全链路监控的方法、系统、设备和存储介质
CN113760652B (zh) * 2021-08-13 2023-12-26 济南浪潮数据技术有限公司 基于应用的全链路监控的方法、系统、设备和存储介质

Similar Documents

Publication Publication Date Title
CN109947746B (zh) 一种基于etl流程的数据质量管控方法和系统
CN107707376B (zh) 一种监控和告警的方法和系统
CN104699759B (zh) 一种数据库自动化运行维护方法
WO2019223062A1 (zh) 系统异常的处理方法和系统
CN109783322A (zh) 一种企业信息系统运行状态的监控分析系统及其方法
US6816576B2 (en) Tree hierarchy and description for generated logs
CN105610648B (zh) 一种运维监控数据的采集方法及服务器
US20050091356A1 (en) Method and machine-readable medium for using matrices to automatically analyze network events and objects
CN111125444A (zh) 大数据任务调度管理方法、装置、设备及存储介质
EP0549677A1 (en) NETWORK MANAGEMENT SYSTEM USING MODEL BASED INTELLIGENCE.
US11310140B2 (en) Mitigating failure in request handling
CN112698915A (zh) 多集群统一监控告警方法、系统、设备及存储介质
CN114430365B (zh) 故障根因分析方法、装置、电子设备和存储介质
CN110968479A (zh) 一种针对应用程序的业务级全链路监控方法及服务器
CN112286754A (zh) 一种模块化构建it资源巡检自动化的实现方法及其系统
CN112346930A (zh) 一种基于cat监控全链路方法及系统
CN114531338A (zh) 一种基于调用链数据的监控告警和溯源方法及系统
CN114595075A (zh) 一种基于分布式调度的网络编排中异步任务执行方法
CN117135030A (zh) 告警关联分析方法、装置、终端设备以及存储介质
CN112965793B (zh) 一种面向标识解析数据的数据仓库任务调度方法和系统
CN113535034B (zh) 故障告警的方法、装置、系统和介质
CN115705259A (zh) 故障处理方法、相关设备及存储介质
CN111983960A (zh) 一种监控系统及方法
CN112035315A (zh) 网页数据监控方法、装置、计算机设备及存储介质
CN113761015B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210209