CN109885458A - 基于cat的监控方法、装置、计算机系统及存储介质 - Google Patents
基于cat的监控方法、装置、计算机系统及存储介质 Download PDFInfo
- Publication number
- CN109885458A CN109885458A CN201910040200.2A CN201910040200A CN109885458A CN 109885458 A CN109885458 A CN 109885458A CN 201910040200 A CN201910040200 A CN 201910040200A CN 109885458 A CN109885458 A CN 109885458A
- Authority
- CN
- China
- Prior art keywords
- calling
- failure
- error
- pel
- information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000012544 monitoring process Methods 0.000 title claims abstract description 20
- 238000010586 diagram Methods 0.000 claims abstract description 51
- 230000007257 malfunction Effects 0.000 claims abstract description 31
- 230000008569 process Effects 0.000 claims abstract description 21
- 238000012806 monitoring device Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 230000006399 behavior Effects 0.000 claims 1
- 230000008859 change Effects 0.000 description 6
- 230000004888 barrier function Effects 0.000 description 3
- 239000003086 colorant Substances 0.000 description 3
- 230000003862 health status Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000005389 magnetism Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种基于CAT的监控方法、装置、计算机系统及存储介质,该监控方法包括:S1,获取各系统对应的实时打点信息,包含调用链信息;S2,根据调用链信息生成各系统之间的调用关系拓扑图;S3,判断是否有系统出错,若有执行步骤S4;S4,对故障系统对应的图元进行标记;S5,判断是否有调用系统对故障系统的调用过程出错,若有则执行步骤S6;S6,对故障系统对应的图元与调用出错的调用系统对应的图元之间的链路进行标记;S7,判断是否有调用系统本身出错,若有,执行步骤S8;S8,将本身出错的调用系统作为新的故障系统,返回步骤S4。本发明生成所有系统间的调用关系拓扑图,在某系统故障时,可准确展示故障影响的范围。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及基于CAT的监控方法、装置、计算机系统及存储介质。
背景技术
CAT(Central Application Tracking)是基于Java的实时应用监控平台,CAT的监控过程通过打点来实现。具体地,在CAT监控平台中集成有客户端jar包,通过jar包在系统运行的各个环节埋入一些点,当程序执行到相应的环节时便会触发打点,并记录下系统的打点信息,当这些数据满足一定条件后,便打包发送到CAT服务端。CAT服务端实时采集各系统的打点信息,并保存在自己的内存中。每当到一小时结束后(一般在每小时02分时)将内存里的打点信息进行持久化,保存到本地磁盘或者hadoop中;同时,将这些打点信息按小时维度进行统计,并制成报表保存到数据库中。在制报表时,考虑到性能开销,CAT监控服务端以小时为单位生成报表,将以小时为单位的报表汇总进行按日、按周、按月维度的统计,再生在日报表、周报表、月报表。CAT报表主要包括以下内容:每一类事件的总次数、错误次数、错误比例、最小时长、最大时长、平均时长、95线(表示95%请求完成的时间)、99线(表示99%请求完成的时间)、标准差、频率。
其中,各系统的打点信息包含系统对应的调用链信息,系统的调用链信息包含所有与该系统存在调用关系的系统信息,CAT根据系统的调用链信息可生成该系统对应的拓扑图。目前,CAT仅生成单系统对应的拓扑图,即,一拓扑图只针对一个系统,展示该系统以及与其存在调用关系的其它所有系统的拓扑关系,但不能展示所有系统间的完整拓扑关系。当某个系统发生故障时,也不能在拓扑图上,根据系统间的拓扑关系准确显示故障影响的范围。
发明内容
针对上述现有技术的不足,本发明的目的在于提供一种基于CAT的监控方法、装置、计算机系统及存储介质,可以生成所有系统间的调用关系拓扑图,在其中某系统发生故障时,可在拓扑图上准确展示故障影响的范围,便于用户了解整个系统群的健康状况。
为了实现上述目的,本发明提供一种基于CAT的监控方法,包括以下步骤:
步骤S1,获取各系统对应的实时打点信息,所述打点信息包含所述系统对应的调用链信息以及所述系统执行操作是否出错的信息;
步骤S2,根据每一个所述系统对应的调用链信息生成各系统之间的调用关系拓扑图;
步骤S3,根据所述各系统的打点信息,判断所述各系统中,是否有系统出错,若有,则将出错的系统作为故障系统,并执行步骤S4,否则,结束流程;
步骤S4,在生成的所述调用关系拓扑图上,对所述故障系统对应的图元进行标记;
步骤S5,根据所述故障系统对应的调用链信息,判断所述故障系统的各调用系统中是否有调用系统对所述故障系统的调用出错,若有,则执行步骤S6,否则,结束流程;
步骤S6,在所述调用关系拓扑图上,对所述故障系统对应的图元与调用出错的各所述调用系统对应的图元之间的链路进行标记;
步骤S7,根据调用出错的各所述调用系统的打点信息,判断调用出错的各所述调用系统中是否有调用系统本身出错,若有,执行步骤S8,否则,结束流程;
步骤S8,将本身出错的所述调用系统作为新的故障系统,并返回所述步骤S4。
进一步地,所述步骤S2通过如下步骤实现:
步骤S21,分别针对所述各系统,确定对应的图元,其中,一个系统对应一个图元;
步骤S22,根据所述各系统的调用链信息,确定所述各图元之间的链路;
步骤S23,根据确定的所述各图元以及各图元之间的链路,生成所述调用关系拓扑图。
进一步地,在所述步骤S4中,根据所述故障系统的出错率不同,对所述故障系统对应的图元进行不同的标记。
进一步地,所述步骤S4通过如下步骤获取所述故障系统的出错率:根据所述故障系统的打点信息获取所述故障系统执行相应操作的出错次数和总次数,并将所述故障系统执行相应操作的出错次数与总次数的百分比作为所述故障系统的出错率。
进一步地,在所述步骤S6中,根据调用出错的所述调用系统对所述故障系统的调用出错率不同,对所述故障系统对应的图元与调用出错的所述调用系统对应的图元之间的链路进行不同的标记。
进一步地,所述步骤S6通过如下步骤获取调用出错的所述调用系统对所述故障系统的调用出错率:根据所述故障系统对应的调用链信息,获取调用出错的所述调用系统对所述故障系统的出错调用次数和总调用次数,并将所述出错调用次数和总调用次数的百分比作为所述调用出错率。
进一步地,每隔预定时间,根据所述各系统对应的实时打点信息生成对应的报表。
本发明提供一种基于CAT的监控装置,包括:
打点信息获取模块,用于获取各系统对应的实时打点信息,所述打点信息包含系统对应的调用链信息以及所述系统执行相应操作是否出错的信息;
拓扑图生成模块,用于根据每一个所述系统对应的所述调用链信息生成各系统之间的调用关系拓扑图;
故障系统判断模块,用于根据所述各系统的打点信息判断所述各系统中是否有系统出错,若有,则将出错的系统作为故障系统;
故障系统标记模块,用于在生成的所述调用关系拓扑图上,对所述故障系统对应的图元进行标记;
调用出错判断模块,用于根据所述故障系统对应的调用链信息判断调用所述故障系统的各调用系统中,是否有调用系统对故障系统的调用出错;
链路标记模块,用于在有所述调用系统对故障系统的调用出错时,在所述调用关系拓扑图上对所述故障系统对应的图元与调用出错的所述调用系统对应的图元之间的链路进行标记;
调用系统出错判断模块,用于根据调用出错的各所述调用系统的打点信息判断调用出错的各所述调用系统中,是否有调用系统本身出错,若有,则将本身出错的所述调用系统作为新的故障系统传输至所述故障系统标记模块。
进一步地,所述拓扑图生成模块包括:
图元确定单元,用于分别针对所述各系统,确定对应的图元,其中,一个系统对应一个图元;
链路确定单元,用于根据所述各系统的调用链信息,确定所述各图元之间的链路;
拓扑图生成单元,用于根据确定的所述各图元以及各图元之间的链路,生成所述调用关系拓扑图。
进一步地,所述故障系统标记模块根据所述故障系统的出错率不同,对所述故障系统对应的图元进行不同的标记。
进一步地,所述故障系统标记模块根据所述故障系统的打点信息获取所述故障系统执行相应操作的出错次数和总次数,并将所述故障系统执行相应操作的出错次数与总次数的百分比作为所述故障系统的出错率。
进一步地,所述链路标记模块根据调用出错的所述调用系统对所述故障系统的调用出错率不同,对所述故障系统对应的图元与调用出错的所述调用系统对应的图元之间的链路进行不同的标记。
进一步地,所述链路标记模块根据所述故障系统对应的调用链信息,获取出错的所述调用系统对所述故障系统的出错调用次数和总调用次数,并将所述出错调用次数和总调用次数的百分比作为所述调用出错率。
进一步地,所述监控装置还包括:报表生成模块,用于每隔预定时间,根据所述各系统对应的实时打点信息生成对应的报表。
为了实现上述目的,本发明还提供一种计算机系统,包括至少一个计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述至少一个计算机设备的处理器执行所述计算机程序时实现前述方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,所述存储介质上存储有计算机程序,其特征在于,所述存储介质存储的计算机程序被处理器执行时实现前述方法的步骤。
通过采用上述技术方案,本发明带来如下有益效果:
本发明基于CAT的监控方法能够生成所有系统之间的调用关系拓扑图,当某系统发生故障时,可根据系统间的调用关系数据,在调用关系拓扑图上准确展示故障影响的范围,便于用户了解整个系统群的健康状况。此外,本发明能够展示任意时间维度的报表,从而方便用户查看任意时段的数据,满足用户需求。
附图说明
图1为本发明基于CAT的监控方法的一个实施例的流程图;
图2为本发明一个实施例生成的调用关系拓扑图;
图3为本发明基于CAT的监控装置的一个实施例的结构框图;
图4为本发明中拓扑图生成模块的一个实施例的结构框图;
图5为本发明中计算机设备的一个实施例的硬件架构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
参阅图1,示出了本发明基于CAT的监控方法的具体流程,包括如下步骤:
步骤S1,获取各系统对应的实时打点信息。众所周知,CAT平台中集成有客户端jar包,通过jar包在每个系统运行的各个环节埋入一些点,当程序执行到相应的环节时便会触发打点,且CAT平台将记录下对应的实时打点信息。在本发明中,首先对这些打点信息进行采集,以为后续处理步骤提供数据源,其中,一个系统的打点信息包含该系统对应的所有调用链信息,此处调用链信息是指该系统调用其它哪些系统、其它哪些系统调用该系统的信息以及相应调用过程是否出错的信息,如系统A设用系统C时,将在传输的数据中加入特定标志的形式反馈给CAT平台,于是CAT平台便采集到A调用C的信息以及该调用过程是否出错的信息。除了调用链信息外,打点信息还包括系统执行操作是否出错的信息以及相应的出错次数和总次数。
步骤S2,根据每一个系统对应的调用链信息生成包含所有系统的调用关系拓扑图。具体来说,首先,对调用链信息进行解析得到特定的数据结构,如解析成XML数据结构,在XML数据结构中将展示所有的系统以及各系统分别调用了其它哪些系统,针对各系统,分别确定对应的图元,其中,一个系统对应一个图元;然后,根据各系统的调用链信息,确定各图元之间的链路;最后,根据确定的各图元以及各图元之间的链路,绘制调用关系拓扑图,优选采用GoJS绘制该调用关系拓扑图。
例如,假设有八个系统,分别为系统A~系统G,对应的调用链信息为系统A调用系统C,系统B调用系统D和E,系统C、D、E调用系统F,系统F调用系统G、H。首先,针对每一个系统分别确定对应的图元,如确定系统A~G一一对应于图元A~G;然后,根据调用链信息确定图元A与图元C之间有链路,图元B与图元D、E之间分别有链路,图元C、D、E与图元F之间分别有链路,图元F与图元G、H之间分别有链路;最后,根据前面确定的各图元以及各图元之间的链路,生成图如图2所示的调用关系拓扑图。
步骤S3,根据各系统的打点信息判断各系统中,是否有系统出错,若有,则将出错的系统作为故障系统,并执行步骤S4,否则,结束流程。
步骤S4,在生成的调用关系拓扑图上,对故障系统对应的图元进行标记。标记时,可以采用现有的图形、颜色、文字和/或数字标记方法进行标记。其中,图形、文字和/或数字标记方法是指在对应的图元上或图元周围增加图形、文字和/或数字标记,颜色标记方法是指将对应的图元调整为预定的颜色,其中,颜色改变通过更改拓扑图上图元对应的颜色属性实现。在本发明中,为了更加直观显示,优选采用颜色进行标记,并且根据故障系统的出错率不同,将故障系统对应的图元标记成不同的颜色,以便向用户展示故障的程度。其中获取故障系统的出错率的步骤如下:根据故障系统的打点信息获取故障系统执行相应操作的出错次数和总次数,并将故障系统执行相应操作的出错次数与总次数的百分比作为故障系统的出错率。
例如,如图2所示,假设各系统正常工作时,调用关系拓扑图上对应的各图元设置为绿色。倘若判断到系统F出错,则根据出错率调整其对应的图元F的颜色,比如,当系统F的出错率小于5%时,在调用关系拓扑图上将图元F标记成黄色,以提醒用户系统F出错;当系统F的出错率大于5%时,在调用关系拓扑图上将图元F标记成红色,以警告用户系统F出错率大。其中,系统F出错率的步骤如下:根据故障系统F的打点信息获取故障系统F执行相应操作的出错次数和总次数,并将故障系统F执行相应操作的出错次数与总次数的百分比作为故障系统F的出错率。
步骤S5,应该理解,当一系统故障时,其调用系统对该系统的调用过程很可能出错,其中系统与其调用系统的关系是被调用与调用的关系。本步骤根据故障系统的调用链信息,可以判断故障系统的各调用系统中,是否有调用系统对该故障系统的调用过程出错,若有,则执行步骤S6,否则,结束流程。
步骤S6,在调用关系拓扑图上,对故障系统对应的图元与调用出错的各调用系统对应的图元之间的链路进行标记。标记时,同样可以采用现有的图形、颜色、文字和/或数字标记方法进行标记。其中,图形、文字和/或数字标记方法是指在对应的链路上或链路周围增加图形、文字和/或数字标记,颜色标记方法是指将对应的链路调整为预定的颜色,其中,颜色改变通过更改拓扑图上链路对应的颜色属性实现。在本发明中,为了更加直观显示,优选采用颜色进行标记,并且根据调用的出错率不同,将对应的链路标记成不同的颜色,以便向用户展示故障的程度。其中,获取调用出错率的步骤如下:根据故障系统对应的调用链信息,获取调用出错的调用系统对故障系统的出错调用次数和总调用次数,并将出错调用次数和总调用次数的百分比作为调用出错率。
例如,如图2所示,假设调用过程无异常时,调用关系拓扑图上对应的各链路设置为绿色。倘若经判断,故障系统F的调用系统D在调用故障系统F时出错,则根据出错率调整图元D与图元F之间的链路颜色。比如,当调用时的出错率小于5%时,在调用关系拓扑图上将图元D与图元F之间的链路标记成黄色,以提醒用户调用出错;当调用时的出错率大于5%时,在调用关系拓扑图上将图元D与图元F之间的链路标记成红色,以警告用户对应的调用过程出错率大。其中,系统D调用故障系统F时出错的出错率按如下过程计算:首先根据系统F的调用链信息获取系统D调用故障系统F的出错调用次数和总调用次数,并将系统D调用故障系统F的出错调用次数和总调用次数的百分比作为调用出错率。
步骤S7,根据调用出错的各调用系统的打点信息,判断调用故障系统出错的各调用系统中,是否有调用系统本身出错,若有,执行步骤S8,否则,结束流程。
步骤S8,将本身出错的调用系统作为新的故障系统,返回执行步骤S4,重复标记过程,直到在调用关系拓扑图上,将所有故障系统对应的图元、以及所有出错的调用过程对应的链路全部标记出来。
例如,如图2所示,系统D调用系统F,若系统F出错,那么系统D本身也可能由于调用了系统F导致出错。若经判断,系统D出错,则将系统D作为新的故障系统,返回步骤S4,继续对新的故障系统D进行标记,并判断新的故障系统的各调用系统中,是否有调用系统对故障系统D的调用过程出错,以及是否有调用系统本身出错,并进行相应标记。如此往复,直到在调用关系拓扑图上将所有故障系统对应的图元、以及所有出错的调用过程对应的链路全部标记出来。从而,用户便可清楚、直观地观察到故障影响的范围,便于了解整个系统群的健康状况。
此外,参阅前面背景技术,目前CAT监控平台以小时为单位生成报表。然而,在某些实际情况下,用户需要查看分钟维度的报表,例如需查看某天上午8点10分至8点15分的报表,而现有的以小时为单位生成的报表,将无法满足用户的需求。对此,本发明的监控方法增加了以下步骤:以1分钟为单位生成当前分钟内各系统的实时打点信息对应的报表。本发明生成的报表主要内容包括:每一类事件的总次数、错误次数、错误比例、最小时长、最大时长、平均时长、95线、99线、标准差和频率。展示报表时,通过识别用户输入的起始时间和截止时间获得指定时间范围,进而从数据库获得指定时间范围内的报表数据并展示在页面上,若用户未指定截止时间,则代表截止时间是当前时间。考虑到通过CAT服务端生成分钟维度的报表必将造成CAT额外的性能开销,因此本步骤不再由CAT服务端完成,而是额外的增加一个分钟维度报表生成模块来执行。根据实际需要,也可以设定每2分钟、5分钟、或10分钟生成一次报表,即,具体分钟数可根据用户需求自行设定,一般不超过10分钟。
实施例二
参阅图3,示出了本发明基于CAT的监控装置10,包括:
打点信息获取模块11,用于获取各系统对应的实时打点信息,打点信息包含系统对应的调用链信息以及系统执行相应操作是否出错的信息;
拓扑图生成模块12,用于根据每一个系统对应的调用链信息生成所有系统之间的调用关系拓扑图;
故障系统判断模块13,用于根据各系统的打点信息判断各系统中是否有系统出错,若有,则将出错的系统作为故障系统;
故障系统标记模块14,用于在生成的调用关系拓扑图上,对故障系统对应的图元进行标记;
调用出错判断模块15,用于根据故障系统的调用链信息判断调用故障系统的各调用系统中,是否有调用系统对故障系统的调用出错;
链路标记模块16,用于在有调用系统对故障系统的调用出错时,在调用关系拓扑图上对故障系统对应的图元与调用出错的调用系统对应的图元之间的链路进行标记;
调用系统出错判断模块17,用于根据调用出错的各调用系统的打点信息判断调用出错的各调用系统中,是否有调用系统出错,若有,则将本身出错的调用系统作为新的故障系统输入到故障系统标记模块14。
本发明的监控装置可以在调用关系拓扑图上将所有故障系统对应的图元、以及所有出错的调用关系对应的链路全部标记出来。从而,用户便可清楚、直观地观察到故障影响的范围,进而了解整个系统群的健康状况。
其中,如图4所示,上述拓扑图生成模块12包括:
图元确定单元121,用于分别针对各系统,确定对应的图元,其中,一个系统对应一个图元;
链路确定单元122,用于根据各系统的调用链信息,确定各图元之间的链路;
拓扑图生成单元123,用于根据确定的各图元以及各图元之间的链路,生成调用关系拓扑图。
在本实施例中,故障系统标记模块14首先根据故障系统的打点信息获取故障系统执行相应操作的出错次数和总次数,并将故障系统执行相应操作的出错次数与总次数的百分比作为故障系统的出错率,而后,故障系统标记模块14根据故障系统的出错率不同,对故障系统对应的图元进行不同的标记。
在本实施例中,链路标记模块16首先根据故障系统对应的调用链信息,获取出错的调用系统对所述故障系统的出错调用次数和总调用次数,并将出错调用次数和总调用次数的百分比作为调用出错率,而后链路标记模块16根据调用故障系统出错的系统对故障系统的调用出错率不同,对故障系统对应的图元与调用出错的调用系统对应的图元之间的链路进行不同的标记。
在本实施例中,故障系统标记模块14和链路标记模块16均采用图形、颜色、文字和/或数字标记方法对图元或链路进行标记。其中,图形、文字和/或数字标记方法是指在对应的图元/链路上或图元/链路周围增加图形、文字和/或数字标记,颜色标记方法是指将对应的图元/链路调整为预定的颜色,其中,颜色改变通过更改拓扑图上图元/链路上对应的颜色属性实现。在本发明中,为了更加直观显示,优选采用颜色进行标记,并且根据故障系统的出错率不同,将故障系统对应的图元标记成不同的颜色,以便向用户展示故障的程度。
此外,参阅前面背景技术,目前CAT监控平台以小时为单位生成报表。然而,在某些实际情况下,用户需要查看分钟维度的报表,例如需查看某天上午8点10分至8点15分的报表,而现有的以小时为单位生成的报表,将无法满足用户的需求。对此,如图3所示,本发明基于CAT的监控装置设置了报表生成模块18,用于每隔预定分钟数,根据各系统对应的实时打点信息生成对应的报表。考虑到生成分钟维度的报表必将造成CAT额外的性能开销,因此报表生成模块18并不集成于CAT服务端,而是在CAT服务端外设置的一个独立模块。
根据实际需要,可以设定每1分钟、2分钟、5分钟、或10分钟生成一次报表,即,具体分钟数可根据用户需求自行设定,一般不超过10分钟。
实施例三
本实施例提供一种计算机系统,其包括至少一个计算机设备,该计算机设备可以是执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备20至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器22,如图5所示。需要指出的是,图5仅示出了具有组件21-22的计算机设备20,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器21(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备20的内部存储单元,例如该计算机设备20的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备20的外部存储设备,例如该计算机设备20上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器21还可以既包括计算机设备20的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备20的操作系统和各类应用软件,例如实施例二的基于CAT的监控装置10的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备20的总体操作。本实施例中,至少一个计算机设备的处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行基于CAT的监控装置10,以实现实施例一的基于CAT的监控方法。
实施例四
本实施例还提供一种计算机可读存储介质,该存储介质如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储基于CAT的监控装置10,被处理器执行时实现实施例一的基于CAT的监控方法。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于CAT的监控方法,其特征在于,包括以下步骤:
步骤S1,获取各系统对应的实时打点信息,所述打点信息包含所述系统对应的调用链信息以及所述系统执行操作是否出错的信息;
步骤S2,根据每一个所述系统对应的调用链信息生成各系统之间的调用关系拓扑图;
步骤S3,根据所述各系统的打点信息,判断所述各系统中,是否有系统出错,若有,则将出错的系统作为故障系统,并执行步骤S4,否则,结束流程;
步骤S4,在生成的所述调用关系拓扑图上,对所述故障系统对应的图元进行标记;
步骤S5,根据所述故障系统对应的调用链信息,判断所述故障系统的各调用系统中是否有调用系统对所述故障系统的调用出错,若有,则执行步骤S6,否则,结束流程;
步骤S6,在所述调用关系拓扑图上,对所述故障系统对应的图元与调用出错的各所述调用系统对应的图元之间的链路进行标记;
步骤S7,根据调用出错的各所述调用系统的打点信息,判断调用出错的各所述调用系统中是否有调用系统本身出错,若有,执行步骤S8,否则,结束流程;
步骤S8,将本身出错的所述调用系统作为新的故障系统,并返回所述步骤S4。
2.根据权利要求1所述的基于CAT的监控方法,其特征在于,所述步骤S2通过如下步骤实现:
步骤S21,分别针对所述各系统,确定对应的图元,其中,一个系统对应一个图元;
步骤S22,根据所述各系统的调用链信息,确定所述各图元之间的链路;
步骤S23,根据确定的所述各图元以及各图元之间的链路,生成所述调用关系拓扑图。
3.根据权利要求1所述的基于CAT的监控方法,其特征在于,在所述步骤S4中,根据所述故障系统的出错率不同,对所述故障系统对应的图元进行不同的标记。
4.根据权利要求3所述的基于CAT的监控方法,其特征在于,所述步骤S4通过如下步骤获取所述故障系统的出错率:根据所述故障系统的打点信息获取所述故障系统执行相应操作的出错次数和总次数,并将所述故障系统执行相应操作的出错次数与总次数的百分比作为所述故障系统的出错率。
5.根据权利要求1所述的基于CAT的监控方法,其特征在于,在所述步骤S6中,根据调用出错的所述调用系统对所述故障系统的调用出错率不同,对所述故障系统对应的图元与调用出错的所述调用系统对应的图元之间的链路进行不同的标记。
6.根据权利要求5所述的基于CAT的监控方法,其特征在于,所述步骤S6通过如下步骤获取调用出错的所述调用系统对所述故障系统的调用出错率:根据所述故障系统对应的调用链信息,获取调用出错的所述调用系统对所述故障系统的出错调用次数和总调用次数,并将所述出错调用次数和总调用次数的百分比作为所述调用出错率。
7.根据权利要求1所述的基于CAT的监控方法,其特征在于,每隔预定时间,根据所述各系统对应的实时打点信息生成对应的报表。
8.一种基于CAT的监控装置,其特征在于,包括:
打点信息获取模块,用于获取各系统对应的实时打点信息,所述打点信息包含系统对应的调用链信息以及所述系统执行相应操作是否出错的信息;
拓扑图生成模块,用于根据每一个所述系统对应的所述调用链信息生成各系统之间的调用关系拓扑图;
故障系统判断模块,用于根据所述各系统的打点信息判断所述各系统中是否有系统出错,若有,则将出错的系统作为故障系统;
故障系统标记模块,用于在生成的所述调用关系拓扑图上,对所述故障系统对应的图元进行标记;
调用出错判断模块,用于根据所述故障系统对应的调用链信息判断调用所述故障系统的各调用系统中,是否有调用系统对故障系统的调用出错;
链路标记模块,用于在有所述调用系统对故障系统的调用出错时,在所述调用关系拓扑图上对所述故障系统对应的图元与调用出错的所述调用系统对应的图元之间的链路进行标记;
调用系统出错判断模块,用于根据调用出错的各所述调用系统的打点信息判断调用出错的各所述调用系统中,是否有调用系统本身出错,若有,则将本身出错的所述调用系统作为新的故障系统传输至所述故障系统标记模块。
9.一种计算机系统,包括至少一个计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述至少一个计算机设备的处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述存储介质上存储有计算机程序,其特征在于,所述存储介质存储的计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910040200.2A CN109885458A (zh) | 2019-01-16 | 2019-01-16 | 基于cat的监控方法、装置、计算机系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910040200.2A CN109885458A (zh) | 2019-01-16 | 2019-01-16 | 基于cat的监控方法、装置、计算机系统及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109885458A true CN109885458A (zh) | 2019-06-14 |
Family
ID=66926137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910040200.2A Pending CN109885458A (zh) | 2019-01-16 | 2019-01-16 | 基于cat的监控方法、装置、计算机系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109885458A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110489262A (zh) * | 2019-08-05 | 2019-11-22 | 北京字节跳动网络技术有限公司 | 系统出错模块的自动定位方法、系统、介质和电子设备 |
CN111586092A (zh) * | 2020-03-25 | 2020-08-25 | 深圳壹账通智能科技有限公司 | 全链路监控方法、系统及cat客户端 |
CN112346930A (zh) * | 2020-10-30 | 2021-02-09 | 银盛支付服务股份有限公司 | 一种基于cat监控全链路方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107330034A (zh) * | 2017-06-26 | 2017-11-07 | 百度在线网络技术(北京)有限公司 | 一种日志分析方法和装置、计算机设备、存储介质 |
CN107632924A (zh) * | 2017-09-08 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 告警应用可视化展示方法、系统、设备及存储介质 |
CN108183927A (zh) * | 2017-11-22 | 2018-06-19 | 链家网(北京)科技有限公司 | 一种分布式系统中链路调用的监控方法及系统 |
CN108234168A (zh) * | 2016-12-15 | 2018-06-29 | 腾讯科技(深圳)有限公司 | 一种基于业务拓扑的数据展示方法及系统 |
CN108322351A (zh) * | 2018-03-05 | 2018-07-24 | 北京奇艺世纪科技有限公司 | 生成拓扑图的方法和装置、故障确定方法和装置 |
CN108462750A (zh) * | 2018-03-22 | 2018-08-28 | 平安好房(上海)电子商务有限公司 | 分布式调用追踪方法、业务系统、监控系统及存储介质 |
-
2019
- 2019-01-16 CN CN201910040200.2A patent/CN109885458A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108234168A (zh) * | 2016-12-15 | 2018-06-29 | 腾讯科技(深圳)有限公司 | 一种基于业务拓扑的数据展示方法及系统 |
CN107330034A (zh) * | 2017-06-26 | 2017-11-07 | 百度在线网络技术(北京)有限公司 | 一种日志分析方法和装置、计算机设备、存储介质 |
CN107632924A (zh) * | 2017-09-08 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 告警应用可视化展示方法、系统、设备及存储介质 |
CN108183927A (zh) * | 2017-11-22 | 2018-06-19 | 链家网(北京)科技有限公司 | 一种分布式系统中链路调用的监控方法及系统 |
CN108322351A (zh) * | 2018-03-05 | 2018-07-24 | 北京奇艺世纪科技有限公司 | 生成拓扑图的方法和装置、故障确定方法和装置 |
CN108462750A (zh) * | 2018-03-22 | 2018-08-28 | 平安好房(上海)电子商务有限公司 | 分布式调用追踪方法、业务系统、监控系统及存储介质 |
Non-Patent Citations (2)
Title |
---|
任天: "CAT监控系统服务端的设计与实现", 《中国优秀博硕士学位论文全文数据库(硕士)(信息科技辑)》 * |
美团技术团队: "深度剖析开源分布式监控CAT", 《HTTPS://ZHUANLAN.ZHIHU.COM/P/23351994》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110489262A (zh) * | 2019-08-05 | 2019-11-22 | 北京字节跳动网络技术有限公司 | 系统出错模块的自动定位方法、系统、介质和电子设备 |
CN111586092A (zh) * | 2020-03-25 | 2020-08-25 | 深圳壹账通智能科技有限公司 | 全链路监控方法、系统及cat客户端 |
CN112346930A (zh) * | 2020-10-30 | 2021-02-09 | 银盛支付服务股份有限公司 | 一种基于cat监控全链路方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109885458A (zh) | 基于cat的监控方法、装置、计算机系统及存储介质 | |
CN110166290A (zh) | 基于日志文件的告警方法及装置 | |
US20060256714A1 (en) | Message abnormality automatic detection device, method and program | |
CN110213068A (zh) | 一种消息中间件的监控方法及相关设备 | |
CN109299156A (zh) | 电子装置、基于XGBoost的电力数据异常预测方法及存储介质 | |
CN106161085B (zh) | 消息总线的监控系统及方法 | |
CN109146095A (zh) | 多业务系统问题的处理方法和装置 | |
CN110413488A (zh) | 服务器使用率预警方法及装置 | |
CN103220173A (zh) | 一种报警监控方法及监控系统 | |
CN110086648A (zh) | 工单的生成方法、装置、计算机设备及存储介质 | |
CN106656646A (zh) | 智能流量提醒方法、装置以及相应的移动终端 | |
CN109669835A (zh) | MySQL数据库监控方法、装置、设备及可读存储介质 | |
CN108449313A (zh) | 电子装置、互联网服务系统风险预警方法及存储介质 | |
CN103646437A (zh) | 基于ic卡和gsm通信方式的学生考勤方法及系统 | |
CN106371983A (zh) | 基于数据开发的报警方法和装置 | |
CN112437001B (zh) | 保证消息可靠性投递与消费方法、装置 | |
CN109410068A (zh) | 电子装置、基于XGBoost的电力数据缺失值填充方法及存储介质 | |
CN110147378A (zh) | 数据核对方法、装置、计算机设备及存储介质 | |
CN110069925A (zh) | 软件监测方法、系统及计算机可读存储介质 | |
US20110320971A1 (en) | Cross-domain business service management | |
CN109447674A (zh) | 电子装置、保险代理人目标服务区域确定方法及存储介质 | |
CN109783310A (zh) | It设备的多维动态安全监控方法及其监控装置 | |
WO2019227622A1 (zh) | 呼叫中心的任务跟踪方法、装置、设备及存储介质 | |
CN108038127A (zh) | 一种数据同步的方法、装置、终端设备及存储介质 | |
CN104486047B (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: 20190614 |