一种监控系统报警方法、监控系统和监控装置与流程

文档序号:14993340发布日期:2018-07-20 22:57阅读:186来源:国知局

本发明涉及监控技术,更具体地,涉及一种监控系统报警方法、监控系统和监控装置。



背景技术:

监控系统可以采集和存储监控对象(如集群、主机、网卡、数据库等)的数据,通过分析、统计等处理得到相应的指标(如cpu使用率、网络流量、数据库中某个字段的取值、日志中的关键字等等),实时验证这些指标是否满足预期,如判定有指标不满足预期(也即该指标满足报警规则中的报警条件)时进行报警,例如报警规则规定主机的cpu使用率超过95%时进行报警,如果主机的cpu使用率达到98%,则判定该指标不符合预期或者说该指标满足报警规则中的报警条件而触发报警。本申请将用于报警判定的指标称为监控指标(也可称为监控项)。监控系统在报警时会向用户发送通知并展示报警信息。

在监控的场景下,目前业界收到的报警信息包括报警的时间和导致报警的监控指标。在相关的针对集群或服务的监控运维场景下,在集群或服务上设置了报警规则之后,实际监控时会对该集群的每台机器的每个指标进行分析和检查,如果有不满足预期的监控指标则发送报警,在报警信息中会向用户展示是哪个监控指标导致的报警,还会展示是哪个监控对象的该监控指标导致的报警。监控维度是确定导致报警的监控对象的定位信息,如监控维度配置为集群-主机-磁盘时,报警信息中会显示导致报警的监控指标属于哪个集群中哪个主机的哪个磁盘。

但是,上述监控系统的报警信息对于定位和解决问题是不够的。特别是在监控指标多,依赖复杂的场景,例如云计算领域的多个云产品融合构成的大规模系统中,上述监控系统的报警信息没有太大的作用。因为一个监控指标不符合预期有多种可能引起,用户通过报警信息并不能确定引起报警的真正问题。

例如,用户搭建了一个对外服务的站点,背后对应了多台服务器,还有负载均衡等设备。用户针对该网站首页的状态、网站请求量和访问响应时间添加了监控,传统监控系统报警的时候只会通知用户网站挂了,或者哪台机器的请求量暴跌、或者哪台机器的访问响应时间超长。然而导致网站挂了或请求量暴跌或访问响应时间超长的原因可能有多种,例如某一台或多台服务器宕机,相关的进程被杀掉了,网卡流量达到配额,负载均衡产品转发出错,用户依赖的存储产品故障等等。用户收到了报警之后还需要自己登陆服务器或云产品控制台去一步步排查问题,这就不可避免地浪费了很多时间,对正处于报警或故障中的用户非常不便的,而且用户排查时相应指标的数据可能已经发生变化,难以复现报警当时的场景而确定问题的所在。

如上所述,相关技术的监控系统报警方法存在以下主要问题:

报警信息中只是单一指标的展示,无法结合多个指标分析。例如用户设置了cpu使用率的报警,只能产生哪个集群哪个机器的cpu使用率超过阈值发生报警的报警信息,无法展现出系统负载,内存,进程,网络等其它配合排查问题的相关指标。用户也无法自定义自己感兴趣的展示指标。

报警信息中只是单一监控对象的展示,无法结合其他关联的对象分析。例如某一台机器的网站请求量暴跌时,只能给出该机器的相关指标,用户无法了解其他对象的状态如其他机器、负载均衡设备的情况,但该机器的网站请求量暴跌也可能是其他机器或负载均衡设备故障引起的。

此外,关技术的监控系统报警方法还存在一些其他问题,例如:

报警信息的展示格式固定,如只能通过文本方式展示,不方便用户直观地发现问题。

应用场景单调,只能处理集群/服务-主机-指标这样的监控报警场景,对应于云上复杂的场景,用户自定义的场景都无法满足。



技术实现要素:

有鉴于此,本发明实施例提供了一种监控系统报警方法,包括:

监控系统检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件;

所述监控系统进行报警并向用户展示报警信息,所述报警信息包括所述第一监控指标的信息和不同于所述第一监控指标的第一关联指标的信息。

本发明实施例还提供了一种监控系统,包括数据处理模块、报警分析模块和报警模块,其中:

所述报警分析模块设置为:检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件时向所述报警模块发送报警通知,将从所述数据处理模块获取的报警信息发送给所述报警模块;

所述报警模块设置为:接收到所述报警通知后进行报警,向用户展示所述报警信息;其中,所述报警信息包括所述第一监控指标的信息和不同于所述第一监控指标的第一关联指标的信息。

本发明实施例还提供了一种监控装置,包括存储器和处理器,其中:

所述存储器设置为:保存程序代码;

所述处理器设置为:读取所述程序代码以执行以下处理:

检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件时进行报警并向用户展示报警信息,所述报警信息包括所述第一监控指标的信息和不同于所述第一监控指标的第一关联指标的信息。

上述方案在报警时除了向用户展示导致报警的监控指标之外,还向用户展示其他的关联指标,可以更好地展示报警现场,帮助用户快速定位问题、解决问题。

附图说明

图1是本发明实施例一监控报警方法的流程图;

图2是本发明实施例一监控系统的模块图;

图3是本发明实施例二监控报警方法的整体处理流程图;

图4是本发明实施例二的一个示例性的监控报警方法的流程图;

图5是本发明实施例三监控报警方法的流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

实施例一

在监控的场景下,如何在报警时展现用户所有感兴趣的指标,方便用户在收到报警信息的第一时间了解到系统的所有相关信息,一目了然知道到底是系统的哪个环节出了问题,如何修复,从而将用户解决问题的成本降到最低。本实施例提供了一种监控系统报警方法和监控系统、监控装置来解决这些问题。

需要说明的是,本实施例流程描述的是一次报警过程,其中的“第一监控对象”、“第一监控指标”和“第一报警规则”、“第一关联指标”等是此次报警判定涉及的监控对象、监控指标、报警规则和关联指标,并不是表示本实施例局限于某些特殊的监控对象、监控指标、报警规则和关联指标。其他如“第一监控指标关联对象”、“第一关联指标关联对象”等术语也是类似的。

如图1所示,本实施例监控系统报警方法包括:

步骤110,监控系统检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件;

本实施例的监控系统以多个云产品融合构成的大规模系统的监控系统为例,但本发明也可以用于简单系统的监控系统,例如,由少数几台机器构成的服务系统甚至单机系统。

本申请中,监控对象可以是被监控系统中的任何对象,可以是物理实体如集群、系统、机架、设备(如服务器、负载均衡设备等)、装置(如网卡、电源、存储器等)等等,也可以是软件实体如计算机操作系统、应用、数据表、进程等等,还可以软硬件一起构成逻辑实体,如虚拟机、数据库、功能模块、功能组件等等。展示对象、关联对象也是如此。

步骤120,所述监控系统进行报警并向用户展示报警信息,所述报警信息包括所述第一监控指标的信息和不同于所述第一监控指标的第一关联指标的信息。

进行报警时,可以直接将报警信息发送给用户,用户接收到报警通知时即向用户展示报警信息,也可以将报警信息的地址信息如链接发送给用户,用户通过点击地址信息进入报警信息的展示页面。

在报警信息中向用户同时展示第一监控指标和第一关联指标的信息,是为了更好地展示报警现场,用户接收到报警后,可以将第一监控指标和第一关联指标结合起来进行多种指标的结合分析,快速定位问题和解决问题。需要说明的是,虽然在某一次报警中展示的第一关联指标不同于第一监控指标,但对某一指标而言,并不具有固定的身份,可能在此次报警是第一关联指标,而在其他报警则成为第一监控指标。例如,在某次报警中,cpu使用率是第一监控指标,内存使用率是第一关联指标;而在随后的一次报警中,内存使用率成为第一监控指标,cpu使用率成为第一关联指标。

本实施例中,监控系统向用户提供自定义关联指标的接口。用户可以通过该接口自行定义需要在报警信息中与监控指标一起展示的关联指标,上述第一关联指标是所述报警对应的关联指标。用户自定义关联指标具有很大的灵活性和便利性,用户可以根据个人经验,通过所述接口增加、删除、修改和查看关联指标,使其满足自己的需要。在另一实施例中,考虑到用户自定义关联指标要求用户掌握一定的专业技能,而某些用户可能并不具有这样的技能,需要在报警信息中与监控指标一起展示的关联指标是系统(指监控系统)默认配置的。用户自定义之外的配置方式均认为是系统默认的,如监控系统的后台维护人员配置、监控系统的生产者配置的关联指标等。在又一实施例中,将两种方式结合起来,监控系统中即存在系统默认的关联指标,用户也可以自定义关联指标。

对于简单的系统,因为指标有限,不管是什么报警都可以定义一组相同的指标作为关联指标,在这种情况下,不同报警对应的关联指标是相同的,不需要分别配置,也不需要根据对应关系来查找以得到所述第一关联指标。而本实施例应用于复杂系统,指标非常多,不同的报警需要了解的关联指标可能是不同的。因此,关联指标需要分别配置并建立与报警的对应关系。关联指标与报警的对应关系通过关联指标与报警特征信息的对应关系来体现,包括但不局限于以下两种方式:

关联指标与报警规则对应。以用户自定义关联指标为例,用户可以针对一个或多个报警规则定义一组指标(包括一个或多个指标)作为该一个或多个报警规则对应的关联指标。在这种情况下,本实施例中所述报警对应的关联指标包括所述第一报警规则对应的关联指标。

关联指标与监控指标对应。也以用户自定义关联指标为例,用户可以针对一个或多个监控指标定义一组指标(包括一个或多个指标)作为该一个或多个监控指标对应的关联指标。在这种情况下,本实施例中所述报警对应的关联指标包括所述第一监控指标对应的关联指标。

上述两种对应方式也可以在监控系统同时存在,即配置与报警规则对应的关联指标,也配置与监控指标对应的关联指标。在这种情况下,则本实施例中所述报警对应的关联指标包括所述第一报警规则对应的关联指标和所述第一监控指标对应的关联指标。

本实施例中,所述第一监控指标的信息包括第一监控指标展示对象上所述第一监控指标的数据(如cpu使用率的值、访问响应时间的值等)。本申请中,展示对象用于表示要在报警信息中展示哪些对象的指标。监控指标展示对象是要在报警信息中展示其监控指标的对象,用于表示要在报警信息中展示哪些对象的监控指标。例如,在报警信息中展示集群a的主机a的cpu使用率和集群a的主机b的cpu使用率,则监控指标是cpu使用率,而监控指标展示对象是集群a的主机a和集群a的主机b。

在某次报警时,要在报警信息中展示哪些对象的监控指标,是根据所述报警对应的监控指标展示维度确定的。监控指标展示维度是定位监控指标展示对象的信息。例如,在集群中有多台主机,每一台主机上有多个磁盘,监控指标包括磁盘使用率,在磁盘使用率导致的报警中,监控指标展示维度配置为集群-主机-磁盘。如果集群a中主机a的磁盘a(即第一监控对象)的磁盘使用率(第一监控指标)满足报警条件,则根据所述报警对应的监控指标展示维度,会展示集群a中主机a的磁盘a上的磁盘使用率。这种情况下,监控指标展示维度与相关技术中所述报警对应的监控维度是一样的,报警信息中的监控指标展示对象就是第一监控对象。

但在本实施例中,监控指标展示维度可以覆盖且大于监控维度,第一监控指标展示对象除了第一监控对象外,还包括不同于第一监控对象的第一监控指标关联对象,以向用户展示更多对象的监控指标。例如在上述示例中,所述报警对应的监控指标展示维度配置为集群-主机,并且该监控指标展示维度包括基于所述报警对应的监控维度定义的变量,也就是说,所述变量的取值引用监控维度中相应参数的取值,在这个示例中,所述变量包括集群和主机,也即监控指标展示维度中集群和主机的取值分别引用监控维度中集群、主机的取值。这样在集群a中主机a的磁盘a(第一监控对象)的磁盘使用率(第一监控指标)满足报警条件时,在报警信息中会展示集群a中主机a的所有磁盘上的磁盘使用率。即第一监控指标展示对象除了第一监控对象外,还包括集群a中主机a除了磁盘a之外的其他磁盘,该其他磁盘即第一监控指标关联对象。

在该示例中,也可以将所述报警对应的监控指标展示维度配置为包括两个维度,一个即监控维度;另一个是集群-主机b-磁盘b,其中集群作为变量,其取值引用监控维度中集群的取值。在此情况下,发生同样的报警时,在报警信息中除了展示第一监控对象上的磁盘使用率外,还会展示集群a中主机b的磁盘b上的磁盘使用率。集群a中主机b的磁盘b即第一监控指标关联对象。该磁盘b可以是用户在存储空间不足时用来临时存储数据的磁盘。可见,通过展示第一监控指标关联对象,用户可以在收到报警的第一时间了解感兴趣的其他磁盘的磁盘使用率,并针对该报警找出解决办法,如将数据转存到其他磁盘。

报警对应的监控指标展示维度可以用户自定义和/或系统默认,对于简单的系统,所有报警可以对应相同的监控指标展示维度,无需在报警时根据报警特征信息和对应关系查找。对于复杂系统,监控指标展示维度需要分别配置并建立与报警的对应关系,监控指标展示维度与报警的对应关系可以通过监控指标展示维度与报警特征信息(如监控指标、报警规则)之间的对应关系来体现,某次报警时根据该报警的报警特征信息(如第一监控指标、第一报警规则)查找所述对应关系得到对应的监控指标展示维度,进而确定第一监控指标展示对象并获取第一监控指标展示对象上第一监控指标的数据,以在报警信息中展示。

本实施例中,所述第一关联指标的信息包括第一关联指标展示对象上所述第一关联指标的数据。本申请中,关联指标展示对象是要在报警信息中展示其关联指标的对象,表示要在报警信息中展示哪些对象的关联指标。本实施例中,第一关联指标展示对象可以包括第一监控对象,或包括不同于第一监控对象的第一关联指标关联对象,或包括第一监控对象和第一关联指标关联对象。例如,在报警信息中第一监控指标是访问响应时间,第一监控对象是集群a中主机a,第一关联指标包括cpu使用率和内存使用率。那么要在报警信息中展示其cpu使用率和内存使用率的对象就是所述第一关联指标展示对象,例如可以是集群a中主机a即第一监控对象,也可以是集群a中主机b即不同于第一监控对象,还可以包括集群a中主机a和集群a中主机b。第一关联指标展示对象中不同于第一监控对象的对象称为第一关联指标关联对象。第一关联指标关联对象和第一监控指标关联对象可以相同或不同。

本实施例中,在某次报警时,要在报警信息中展示哪些对象的关联指标,是根据所述报警对应的关联指标展示维度确定的。关联指标展示维度是定位关联指标展示对象的信息。例如,在集群中有多台服务机和一台负载均衡设备,监控指标包括访问响应时长,在访问响应时间(第一监控指标)超长导致的报警中,因为访问响应时间超长可能是服务器本身的cpu和内存利用率过高导致处理速度变慢引起的,也可能负载均衡设备的cpu和内存利用率过高导致访问请求的转发速度过慢引起的,因此,将第一关联指标设定(可以根据用户自定义指令配置或系统默认配置)为cpu使用率和内存使用率,而关联指标展示维度包括两个维度,一个维度为集群-服务器,且其中的集群和服务器均是基于所述报警对应的监控维度定义的变量,取值将引用监控维度中集群和服务器的取值。另一个维度是集群-负载均衡设备,其中的集群是基于所述报警对应的监控维度定义的变量,取值将引用监控维度中集群的取值。当集群a中服务器a(第一监控对象)的访问响应时间超长导致报警时,报警信息中第一关联指标展示对象包括集群a中服务器a和集群a中负载均衡设备,报警信息展示的第一关联指标的信息包括集群a中服务器a上的cpu使用率和内存使用率,以及集群a中负载均衡设备上的cpu使用率和内存使用率。在报警信息中展示这些信息,有助于还原报警场景,帮助用户尽快定位问题在哪里从而尽快解决问题,用户不再需要登录相应的控制平台去一步步排查问题。

报警对应的关联指标展示维度可以用户自定义和/或系统默认配置,对于简单的系统,所有报警可以对应相同的关联指标展示维度,不需要分别配置,报警时也不需要根据对应关系查找。对于复杂系统,关联指标展示维度需要分别配置并建立与报警的对应关系,关联指标展示维度与报警的对应关系可以通过关联指标展示维度与报警特征信息(如监控指标、报警规则)之间的对应关系来体现,某次报警时根据该报警的报警特征信息(如第一监控指标、第一报警规则)查找所述对应关系得到对应的关联指标展示维度,进而确定第一关联指标展示对象并获取第一关联指标展示对象上第一关联指标的数据,以在报警信息中展示。

对于本发明来说,上述监控指标展示维度和监控指标展示维度不一定要包括变量,也可以定位到被监控系统中某一固定的对象。

本实施例中,所述第一监控指标的信息可以包括所述第一监控指标的当前数据和历史数据;所述第一关联指标的信息也可以包括所述第一关联指标的当前数据和历史数据。历史数据可以是追溯时间范围内的历史数据,追溯时间范围可以用户自定义或由系统默认配置,对于第一监控指标和第一关联指标的历史数据的追溯时间范围可以相同或不同。

本实施例中,所述报警信息采用用户自定义的展示格式向用户展示,如可以采用文本、图形等多种形式展示。

本实施例中,所述报警信息还包括所述监控系统向用户提供的排查和处理建议的信息。

上述方法可以满足挖掘报警现场信息的需求,允许用户自定义感兴趣的关联指标,还可以定义监控指标和关联指标的展示维度,当发生报警时,根据当前报警对应的展示维度去动态找到相应对象的监控指标和关联指标的数据给用户展示,使用户可以在收到报警信息的第一时间知道所有相关信息,从而快速定位和解决问题,减少线上损失。

本实施例还提供了一种监控系统,如图2所示,包括信息管理模块10、数据处理模块20、报警分析模块30和报警模块40,其中:

所述报警分析模块设置为:检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件时,向所述报警模块发送报警通知,将从所述数据处理模块获取的报警信息发送给所述报警模块;

所述报警模块设置为:接收到所述报警通知后进行报警,向用户展示所述报警信息;其中,所述报警信息包括所述第一监控指标的信息和不同于所述第一监控指标的第一关联指标的信息。

本实施例中,

所述信息管理模块可以设置为:存储和维护报警的元信息,所述元信息包括用户自定义和/或系统默认的需要在报警信息中与监控指标一起展示的关联指标,其中包含所述第一关联指标即所述报警对应的关联指标;

所述报警分析模块从所述数据处理模块获取报警信息,可以包括:所述报警分析模块根据所述信息管理模块存储的所述第一关联指标,从所述数据处理模块获取所述第一关联指标的信息。

其中,所述报警对应的关联指标可包括所述第一报警规则对应的关联指标和/或所述第一监控指标对应的关联指标。

本实施例中,

所述报警模块展示的所述第一监控指标的信息包括第一监控指标展示对象上所述第一监控指标的数据,所述第一监控指标展示对象包括所述第一监控对象,或包括所述第一监控对象和不同于所述第一监控对象的第一监控指标关联对象;

所述报警模块展示的所述第一关联指标的信息包括第一关联指标展示对象上所述第一关联指标的数据,所述第一关联指标展示对象包括所述第一监控对象和/或不同于所述第一监控对象的第一关联指标关联对象。

本实施例中,

所述信息管理模块设置为:存储和维护报警的元信息,所述元信息包括用户自定义和/或系统默认的所述报警对应的监控指标展示维度和关联指标展示维度;所述报警对应的监控指标展示维度和/或关联指标展示维度包括基于所述报警对应的监控维度定义的变量;

所述报警分析模块从所述数据处理模块获取报警信息,包括:所述报警分析模块根据所述信息管理模块存储的所述报警对应的监控指标展示维度确定所述第一监控指标展示对象,从所述数据处理模块获取所述第一监控指标展示对象上所述第一监控指标的数据;及根据所述信息管理模块存储的所述报警对应的关联指标展示维度确定所述第一关联指标展示对象,从所述数据处理模块获取所述第一关联指标展示对象上所述第一关联指标的数据。

本实施例中,

所述报警分析模块从所述数据处理模块获取的所述第一监控指标的信息可以包括所述第一监控指标的当前数据和历史数据;

所述报警分析模块从所述数据处理模块获取的所述第一关联指标的信息可以包括所述第一关联指标的当前数据和历史数据。

本实施例中,

所述报警模块展示的所述报警信息可以采用用户自定义的展示格式;

所述报警模块展示的所述报警信息还可以包括所述监控系统向用户提供的排查和处理建议的信息。

上述模块的功能对应于本实施例方法中的处理,除了上述描述的功能外,其他功能和示例见本实施例方法中的相应描述,不再重复描述。另外,虽然本实施例的模块按上述方式划分,但对于完成这些功能的其他模块划分方式,与上述划分方式是等同的。

本实施例还提供了一种监控装置,包括存储器和处理器,其中:

所述存储器设置为:保存程序代码;

所述处理器设置为:读取所述程序代码以执行以下处理:

检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件时进行报警并向用户展示报警信息,所述报警信息包括所述第一监控指标的信息和不同于所述第一监控指标的第一关联指标的信息。

本实施例中,

所述第一关联指标是所述报警对应的关联指标,所述关联指标是用户自定义和/或系统默认的需要在报警信息中与监控指标一起展示的指标。

本实施例中,

所述报警对应的关联指标包括所述第一报警规则对应的关联指标和/或所述第一监控指标对应的关联指标。

本实施例中,

所述第一监控指标的信息包括第一监控指标展示对象上所述第一监控指标的数据,所述第一监控指标展示对象包括所述第一监控对象,或包括所述第一监控对象和不同于所述第一监控对象的第一监控指标关联对象;

所述第一关联指标的信息包括第一关联指标展示对象上所述第一关联指标的数据,所述第一关联指标展示对象包括所述第一监控对象和/或不同于所述第一监控对象的第一关联指标关联对象。

本实施例中,

所述第一监控指标展示对象根据用户自定义和/或系统默认的所述报警对应的监控指标展示维度确定;

所述第一关联指标展示对象根据用户自定义和/或系统默认的所述报警对应的关联指标展示维度确定;

所述报警对应的监控指标展示维度和/或关联指标展示维度包括基于所述报警对应的监控维度定义的变量。

本实施例中,

所述第一监控指标的信息包括所述第一监控指标的当前数据和历史数据;和/或

所述第一关联指标的信息包括所述第一关联指标的当前数据和历史数据。

本实施例中,

所述报警信息采用用户自定义的展示格式向用户展示;和/或

所述报警信息还包括所述监控系统向用户提供的排查和处理建议的信息。

上述处理器执行的处理对应于本实施例方法中的处理,除了上述描述外,其他处理和示例见本实施例方法中的相应描述,不再重复描述。

本实施例在云监控系统就按照上述方法搭建了监控系统后。依托于云上环境,各个云产品都将自己的监控数据上报到云监控系统,用户可以应用深度挖掘的功能达到下述多种功能。

某个对象的某个指标发生了报警,展示该对象的该指标;

某个对象的某个指标发生了报警,展现该对象的其它指标;

某个对象的某个指标发生了报警,展示其他对象的该指标;

某个对象的某个指标发生了报警,展示其他对象的其他指标;

展示上述指标的当前数据和历史数据。

当然,这仅仅是部分举例,依照本实施例设计思想达到的效果是:用户对所有感兴趣的指标进行设置,系统会自行根据当前报警的维度信息来获取这些和它关联的感兴趣指标。并根据用户自定义的文案,图表渲染方式来展现这些数据,并给出处理建议,以解决用户当前无法第一时间了解系统问题的技术困境。

实施例二

本实施例针对云上监控的监控场景,提供一种监控系统报警方法和相应的监控系统,可以允许用户自定义感兴趣的关联指标,当发生报警时根据当前报警的特征信息来深度挖掘这些关联指标的数据,以更好展示报警现场,帮助用户快速定位问题和解决问题。

请参见图2,本实施例的监控系统包括以下模块:信息管理模块10、数据处理模块20、报警分析模块30和报警模块40,其中:

信息管理模块设置为:管理报警元信息,元信息包括但不限于被监控系统的拓扑(包括其包含的对象及连接关系)、报警数据源、报警规则、报警的目标(可以采用邮箱,手机,app等各种联系方式),报警信息的展示格式,以及用户自定义的深度挖掘信息如报警对应的关联指标、监控指标展示维度、关联指标展示维度、报警信息格式等等。它还提供了对报警元信息的添加、删除、修改、查找的接口。

数据处理模块设置为:对采集或上报的原始监控数据进行统计、分析,得到报警分析和展示所需的指标数据并存储,以方便对历史数据的查询。数据处理模块还可以提供创建监控项、上报监控数据、查询监控数据等接口。

报警分析模块将其它模块衔接起来以实现完整的报警功能,设置为:进行报警规则的判定,检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件时,向所述报警模块发送报警通知,将从所述数据处理模块获取的报警信息发送给所述报警模块。从所述数据处理模块获取的部分报警信息如关联指标的信息可以在判定报警后再去获取,部分报警信息如监控指标的信息可以在判定报警之前就获取到。在本实施例中,获取报警信息时,根据所述报警的特征信息(如第一监控指标、第一报警规则、监控维度等)和信息管理模块中的深度挖掘信息,查找到所述报警的第一关联指标、所述报警对应的监控指标展示维度和关联指标展示维度,进而确定所述报警的关联指标展示对象和监控指标展示对象,获取关联指标展示对象上第一关联指标的数据,及监控指标展示对象上第一监控指标的数据,然后交给报警模块作为报警信息发送。

报警模块设置为:接收到所述报警通知后进行报警,向用户展示所述报警信息。报警信息可以直接发送给用户,或者给用户发送报警信息的链接。报警模块可以对标准报警信息进行用户定向的补全,例如对海外用户进行语言转换,从应用的云产品获取用户在对应产品上的描述(如采用用户自定义的标识来标识产品),以方便用户更直观定位产品。报警模块可以对接多种通知渠道,例如邮件服务器,短信网关等等来实现手机,邮件,app等多种通知方式的发送。报警信息可以采用用户自定义的格式如文本,图或者表的形式向用户展示,以方便用户快速直观定位问题。

如图3所示,本实施例监控系统报警方法的总体流程包括:

步骤210,在信息管理模块加载元信息,其中包括报警规则和监控维度的信息,还包括用户自定义的深度挖掘信息;

步骤220,等待新的监控数据,收到新的监控数据后,将监控对象的监控指标和报警规则中的报警条件进行比对;

步骤230,判断是否满足报警条件,如果是,执行步骤240,否则返回步骤220;

步骤240,深度挖掘报警现场中用户感觉兴趣的信息作为报警信息,包括第一监控指标展示对象上第一监控指标的数据和第一关联指标展示对象上第一关联指标的数据;

上述第一监控指标展示对象、第一关联指标展示对象、第一监控指标和第一关联指标的含义如上文所述。展示的数据可以包括当前数据和历史数据。如何获取这些信息可参见实施例一中的相关描述。

步骤250,向用户发送所述报警信息。

报警信息中除上述数据外,还可以包括针对这一报警给出的处理建议。

通过上述方法用户在收到报警通知的时候就看到感兴趣的对象的指标以及建议,就可以更快地处理这些问题。

下面给出本实施例监控系统报警方法的一个示例,如图4所示,包括:

步骤310,用户通过监控系统提供的接口自定义报警规则和对应的监控维度,包括第一报警规则:在集群中主机的磁盘使用率超过95%时进行报警,其对应的监控维度定义为{a:a,b:b,c:c},其中,a为集群、b为主机,c为磁盘,而a,b,c表示某次报警涉及的具体集群、主机和磁盘。

步骤320,用户通过监控系统提供的接口自定义监控指标的深度挖掘信息,包括第一报警规则对应的监控指标展示维度,定义为{a:$a,b:$b},其中$a,$b都是变量,表示报警时引用监控维度{a:a,b:b,c:c}中a,b的值;假定集群a1中主机b1有3个磁盘c1,c2,c3;

步骤330,用户通过监控系统提供的接口自定义关联指标的深度挖掘信息,包括:第一报警规则对应的关联指标及关联指标展示维度,其中关联指标为“磁盘读写速率”,关联指标展示维度定义为{a:$a,b:$b,c:$c},$a,$b,$c表示报警时引用监控维度{a:a,b:b,c:c}中a,b,c的值;

定义上述关联指标后,用户可以在监控对象的磁盘使用率报警后,查看该监控对象的磁盘读写速率,观察磁盘读写是否受到影响。

上述三个步骤用户自定义的信息保存在监控系统的信息管理模块中。分成三个步骤来描述只是为了表述的方便,完成可以在一次用户自定义的配置过程中完成,并没有固定的先后关系。当然也可以多次配置。

步骤340,监控系统实时检测监控对象的监控指标是否满足报警规则中的报警条件,假定检测到集群a1中主机b1的磁盘c1(第一监控对象)的磁盘使用率(第一监控指标)为99%,超出了第一报警规则中报警条件规定的95%的阈值,触发报警,该报警对应的监控维度为{a:a1,b:b1,c:c1};

监控指标的数据是数据处理模块采集或接收上报后进行分析处理得到的,而实时的报警判决由报警分析模块从数据处理模块获取的监控数据和从信息管理模块获取的报警规则来实现。

步骤350,监控系统查找用户自定义的监控指标的深度挖掘信息,找到第一报警规则对应的监控指标展示维度定义为{a:$a,b:$b},结合该报警对应的监控维度得到该报警的监控指标展示维度为{a:a1,b:b1},进而确定该第一监控指标展示对象为集群a1中主机b1的磁盘c1,c2,c3;

步骤360,监控系统查找用户自定义的关联指标的深度挖掘信息,找到第一报警规则对应的第一关联指标为磁盘读写速率,关联指标展示维度定义为{a:$a,b:$b,c:$c},结合该报警对应的监控维度得到该报警的关联指标展示维度为{a:a1,b:b1,c:c1},进而确定该第一关联指标展示对象为集群a1中主机b1的磁盘c1;

以上两个步骤可以由报警分析模块与信息管理模块交互完成。

步骤370,监控系统获取集群a1中主机b1的磁盘c1,c2,c3的磁盘使用率,及集群a1中主机b1的磁盘c1的磁盘读写速率作为报警信息,进行报警并向用户发送所述报警信息,同时给出排查和处理建议。

在模块上,本步骤可以由报警分析模块获取上述数据并通知报警模块进行报警。报警执行的动作除了发送报警信息外,还可以声、光等其他方式提醒用户注意。

允许用户自定义感兴趣指标,是将关联关系让用户定义,可以最大限度满足用户挖掘报警现场信息的需求,可以根据监控项的特性为用户定义一些默认的感兴趣指标,从而达到报警现场深度挖掘的作用,给用户展示更丰富的报警信息。

实施例三

本实施例与实施例一不同的是,向用户展示的报警信息不包含关联指标的信息,但包含关联对象的监控指标。

如图5所示,本实施例监控系统报警方法包括:

步骤410,监控系统检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件;

本步骤可以与实施例一相同。

步骤420,所述监控系统进行报警并向用户展示报警信息,所述报警信息包括第一监控指标展示对象上所述第一监控指标的数据,所述第一监控指标展示对象包括所述第一监控对象和不同于所述第一监控对象的第一监控指标关联对象。

进行报警时,可以直接将报警信息发送给用户,用户接收到报警通知时即向用户展示报警信息,也可以将报警信息的地址信息如链接发送给用户,用户通过点击地址信息进入报警信息的展示页面。

本申请中,展示对象用于表示要在报警信息中展示哪些对象的指标。监控指标展示对象是要在报警信息中展示其监控指标的对象,用于表示要在报警信息中展示哪些对象的监控指标。例如,在报警信息中展示集群a的主机a的cpu使用率和集群a的主机b的cpu使用率,则监控指标是cpu使用率,而监控指标展示对象是集群a的主机a和集群a的主机b。

在某次报警时,要在报警信息中展示哪些对象的监控指标,根据所述报警对应的监控指标展示维度确定的。监控指标展示维度是用于定位监控指标展示对象的信息。例如,在集群中有多台主机,每一台主机上有多个磁盘,监控指标包括磁盘使用率,在磁盘使用率导致的报警中,监控指标展示维度配置为集群-主机-磁盘。如果集群a中主机a的磁盘a(即第一监控对象)的磁盘使用率(第一监控指标)满足报警条件,则根据所述报警对应的监控指标展示维度,会展示集群a中主机a的磁盘a上的磁盘使用率。这种情况下,监控指标展示维度与相关技术中所述报警对应的监控维度是一样的,报警信息中的监控指标展示对象就是第一监控对象。

但在本实施例中,监控指标展示维度覆盖且大于监控维度,第一监控指标展示对象除了包括第一监控对象外,还包括不同于第一监控对象的第一监控指标关联对象,以向用户展示更多对象的监控指标。例如在上述示例中,所述报警对应的监控指标展示维度配置为集群-主机,并且该监控指标展示维度可以包括基于所述报警对应的监控维度定义的变量,也就是说,所述变量的取值引用监控维度中相应参数的取值,在这个示例中,所述变量包括集群和主机,也即监控指标展示维度中集群和主机的取值分别引用监控维度中集群、主机的取值。这样在集群a中主机a的磁盘a(第一监控对象)的磁盘使用率(第一监控指标)满足报警条件时,在报警信息中会展示集群a中主机a的所有磁盘上的磁盘使用率。即第一监控指标展示对象除了第一监控对象外,还包括集群a中主机a除了磁盘a之外的其他磁盘,该其他磁盘即第一监控指标关联对象。

在该示例中,也可以将所述报警对应的监控指标展示维度配置为包括两个维度,一个即监控维度;另一个是集群-主机b-磁盘b,其中集群作为变量,其取值引用监控维度中集群的取值。在此情况下,发生同样的报警时,在报警信息中除了展示第一监控对象上的磁盘使用率外,还会展示集群a中主机b的磁盘b上的磁盘使用率。集群a中主机b的磁盘b即第一监控指标关联对象。该磁盘b可以是用户在存储空间不足时用来临时存储数据的磁盘。可见,通过展示第一监控指标关联对象,用户可以在收到报警的第一时间了解感兴趣的其他磁盘的磁盘使用率,并针对该报警找出解决办法,如将数据转存到其他磁盘。

报警对应的监控指标展示维度可以用户自定义和/或系统默认,对于简单的系统,所有报警可以对应相同的监控指标展示维度,无需在报警时根据报警特征信息和对应关系查找。对于复杂系统,监控指标展示维度需要分别配置并建立与报警的对应关系,监控指标展示维度与报警的对应关系可以通过监控指标展示维度与报警特征信息(如监控指标、报警规则)之间的对应关系来体现,某次报警时根据该报警的报警特征信息(如第一监控指标、第一报警规则)查找所述对应关系得到对应的监控指标展示维度,进而确定第一监控指标展示对象并获取第一监控指标展示对象上第一监控指标的数据,以在报警信息中展示。

对于本发明来说,上述监控指标展示维度和监控指标展示维度不一定要包括变量,也可以定位到被监控系统中某一固定的对象。

与实施例一类似的,本实施例中,所述第一监控指标的信息可以包括所述第一监控指标的当前数据和历史数据。历史数据可以是追溯时间范围内的历史数据,追溯时间范围可以用户自定义或由系统默认配置。

本实施例中,所述报警信息采用用户自定义的展示格式向用户展示,如可以采用文本、图形等多种形式展示。

本实施例中,所述报警信息还包括所述监控系统向用户提供的排查和处理建议的信息。

上述方法可以满足挖掘报警现场信息的需求,允许用户自定义监控指标的展示维度,当发生报警时,根据当前报警对应的展示维度去动态找到相应对象的监控指标的数据给用户展示,使用户可以在收到报警信息的第一时间知道所有相关信息,从而快速定位和解决问题,减少线上损失。

本实施例还提供了一种监控系统,包括信息管理模块、数据处理模块、报警分析模块和报警模块,可以参见图2,其中:

所述报警分析模块设置为:检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件时,向所述报警模块发送报警通知,将从所述数据处理模块获取的报警信息发送给所述报警模块;

所述报警模块设置为:接收到所述报警通知后进行报警,向用户展示所述报警信息;其中,所述报警信息包括第一监控指标展示对象上所述第一监控指标的数据,所述第一监控指标展示对象包括所述第一监控对象和不同于所述第一监控对象的第一监控指标关联对象。

本实施例中,

所述信息管理模块设置为:存储和维护报警的元信息,所述元信息包括用户自定义和/或系统默认的所述报警对应的监控指标展示维度;所述报警对应的监控指标展示维度包括基于所述报警对应的监控维度定义的变量;

所述报警分析模块从所述数据处理模块获取报警信息,包括:所述报警分析模块根据所述信息管理模块存储的所述报警对应的监控指标展示维度确定所述第一监控指标展示对象,从所述数据处理模块获取所述第一监控指标展示对象上所述第一监控指标的数据。

本实施例中,

所述报警分析模块从所述数据处理模块获取的所述第一监控指标的信息可以包括所述第一监控指标的当前数据和历史数据。

本实施例中,

所述报警模块展示的所述报警信息可以采用用户自定义的展示格式;

所述报警模块展示的所述报警信息还可以包括所述监控系统向用户提供的排查和处理建议的信息。

虽然本实施例的模块按上述方式划分,但对于完成这些功能的其他模块划分方式,与上述划分方式是等同的。

本实施例还提供了一种监控装置,包括存储器和处理器,其中:

所述存储器设置为:保存程序代码;

所述处理器设置为:读取所述程序代码以执行以下处理:

如检测到第一监控对象的第一监控指标满足第一报警规则中的报警条件,进行报警并向用户展示报警信息;所述报警信息包括第一监控指标展示对象上所述第一监控指标的数据,所述第一监控指标展示对象包括所述第一监控对象和不同于所述第一监控对象的第一监控指标关联对象。

本实施例中,

所述第一监控指标展示对象根据用户自定义和/或系统默认的所述报警对应的监控指标展示维度确定;所述报警对应的监控指标展示维度包括基于所述报警对应的监控维度定义的变量。

本实施例中,

所述第一监控指标的信息包括所述第一监控指标的当前数据和历史数据。

本实施例中,

所述报警信息采用用户自定义的展示格式向用户展示。

本实施例中,

所述报警信息还包括所述监控系统向用户提供的排查和处理建议的信息。

需要说明的是,除了上述集群-主机架构的系统外,本发明也可以用于其他架构的系统的监控报警。例如,用户有一个对外服务的系统,其中包括a模块、b模块和c模块,a模块是提供外部服务的模块,对于a模块的单位时间请求量突变导致的报警时,用户想要查看各模块之间的相互调用是否受影响。则用户可以将调用响应时间定义为所述报警对应的关联指标,将所述报警对应的监控指标展示维度和关联指标展示维度定义为固定值即所有3个模块,则在模块a的单位时间请求量突变导致报警时,报警信息中除了展示模块a上的单位时间请求量外,还会展示模块b和模块c上的单位时间请求量,以及模块a、模块b和模块c上的调用响应时间,以方便用户跟踪各模块的行为,排查哪个链路出现了问题。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1