一种告警信息处理方法及服务子系统的制作方法
【技术领域】
[0001] 本发明涉及运维监控领域,特别涉及一种告警信息处理方法及服务子系统。
【背景技术】
[0002] 随着云计算时代的到来,服务子系统中机器数量级至少上十个,服务子系统由多 种硬件和软件模块构成,导致系统的运维工作复杂。通常会有个运维监控系统,其作为运维 服务端;服务子系统作为运维客户端,将需要监控的信息上报给运维服务端。
[0003] 随着服务子系统的运行,硬件和软件都可能出现较重负载或异常状态,如CPU等 过于繁忙、网络超时、某个模块进程挂掉、操作处理失败等。在这种系统或服务异常状态下, 服务子系统需要自动向运维监控系统发出告警,便于运维监控系统了解服务子系统的运行 状态并通知运维人员对服务子系统的异常状况作出相应的处理。
[0004] 由于运维监控系统下可能会有多个服务子系统,每个服务子系统下会有多个硬件 和软件模块,服务子系统的频繁告警会给运维监控系统带来巨大的压力,同时给运维人员 带来困扰和较大工作量,为了防止服务子系统频繁上报告警信息,可以在服务子系统中首 选对告警信息进行预处理,具体为:在当前告警信息为某告警事件的首条告警信息时,或者 在当前告警事件与前一相同的告警事件对应的告警信息不处于同一过滤周期时,向网络监 控系统上报该当前告警信息,在当前告警信息对应的告警事件与前一相同的告警事件对应 的告警信息处于同一过滤周期时,丢弃该当前告警信息。
[0005] 本申请发明人发现现有技术中至少存在以下技术问题:
[0006] 由于在现有技术中,仅仅在同一告警事件对应的告警信息位于同一周期时,才会 删除冗余的告警信息,而对应同一告警事件位于不同的周期的告警信息仍然会存在冗余, 故而导致现有技术中存在着告警信息冗余量大的技术问题。
【发明内容】
[0007] 本发明实施例提供一种告警信息处理方法及服务子系统,以解决现有技术中服务 子系统向运维监控系统上报的告警信息的冗余量大的技术问题。
[0008] 本发明实施例技术方案如下:
[0009] 第一方面,本发明实施例提供一种告警信息处理方法,包括:获得告警信息;根据 所述告警信息对应的告警事件,判断告警信息缓存区中是否存储有基于所述告警事件的告 警信息;若不存在,将所述告警信息存储到所述告警信息缓存区,并向运维监控系统上报所 述告警信息;否则,丢弃获得的告警信息。
[0010] 由上述方案可知,针对运维监控客户端向运维监控系统上报的告警信息的冗余量 大的技术问题,本发明实施例提出在获得对应告警事件的告警信息之后,需要先判断告警 事件对应的告警信息是否存储在告警信息缓存区,只有告警事件对应的告警信息没有存储 在告警信息缓存区时,才需要向运维监控系统上报对应的告警信息,故而针对同一告警事 件存在多次告警信息时,只需要向运维监控系统上报一次,从而达到了降低告警信息冗余 量的技术效果,并且因为减少了告警信息的条目,从而进一步的降低了数据传输开销以及 提高了告警信息的处理效率。
[0011] 优选的,所述方法还包括:在检测到告警信息对应的告警事件的触发条件消除之 后,从所述告警信息缓存区中删除所述告警事件对应的告警信息;以及向所述运维监控系 统发送告警消除消息,所述告警消除消息中携带有携带有触发条件消除的告警事件的标识 信息,所述告警消除消息用于所述运维监控系统删除基于所述标识信息所对应的告警事件 的告警信息。从而能够降低运维监控系统的负载,并且由于不再需要运维工作员手工确认, 从而提高了处理效率。
[0012] 优选的,所述方法还包括:接收告警删除指令;根据所述删除指令,从所述告警信 息缓存区中删除所述删除指令对应的告警信息。从而能够防止重复对告警信息进行处理, 进而能够提商处理效率。
[0013] 优选的,在所述判断告警信息缓存区中没有存储有基于所述告警事件的告警信息 之后,所述方法还包括:判断所述告警信息为自动消除类告警信息还是手动消除类告警信 息;在所述告警信息为自动消除类告警信息时,将所述告警信息存储到告警文件。从而能够 防止因为因为服务子系统出现故障,导致告警信息缓存区中的告警信息的丢失。
[0014] 优选的,所述方法还包括:在初始化之后,向所述运维监控系统发送删除请求消 息,所述删除请求消息中包含所述告警文件中所存储的告警信息的标识信息,所述删除请 求消息用于请求所述运维监控系统删除所述标识信息对应的告警信息;以及删除所述告警 文件中所存储的告警信息。由于在服务子系统初始化时,自动消除类告警信息已经清除,在 这种情况下,在运维监控系统中删除告警文件中告警信息的标识信息所对应的告警信息以 及删除告警文件中的报警信息能够避已不存在的历史遗留问题降低对告警信息处理的效 率,以及降低运维人员的处理负担。
[0015] 第二方面,本发明实施例提供一种服务子系统,包括:获得模块,用于获得告警信 息;第一判断模块,用于根据所述告警信息对应的告警事件,判断告警信息缓存区中是否存 储有基于所述告警事件的告警信息;处理模块,用于若不存在,将所述告警信息存储到所述 告警信息缓存区,并向运维监控系统上报所述告警信息;否则,丢弃获得的告警信息。
[0016] 由上述方案可知,针对运维监控客户端向运维监控系统上报的告警信息的冗余量 大的技术问题,本发明实施例提出在获得对应告警事件的告警信息之后,需要先判断告警 事件对应的告警信息是否存储在告警信息缓存区,只有告警事件对应的告警信息没有存储 在告警信息缓存区时,才需要向运维监控系统上报对应的告警信息,故而针对同一告警事 件存在多次告警信息时,只需要向运维监控系统上报一次,从而达到了降低告警信息冗余 量的技术效果,并且因为减少了告警信息的条目,从而进一步的降低了数据传输开销以及 提高了告警信息的处理效率。
[0017] 优选的,所述服务子系统还包括::第一删除模块,用于在检测到告警信息对应的 告警事件的触发条件消除之后,从所述告警信息缓存区中删除所述告警事件对应的告警信 息;以及第一发送模块,用于向所述运维监控系统发送告警消除消息,所述告警消除消息中 携带有携带有触发条件消除的告警事件的标识信息,所述告警消除消息用于所述运维监控 系统删除基于所述标识信息所对应的告警事件的告警信息。从而能够降低运维监控系统的 负载,并且由于不再需要运维工作员手工确认,从而提高了处理效率。
[0018] 优选的,所述服务子系统还包括:接收模块,用于接收告警删除指令;第二删除模 块,用于根据所述删除指令,从所述告警信息缓存区中删除所述删除指令对应的告警信息。 从而能够防止重复对告警信息进行处理,进而能够提高处理效率。
[0019] 优选的,所述服务子系统还包括:第二判断模块,用于在判断告警信息缓存区中没 有存储有基于所述告警事件的告警信息之后,判断所述告警信息为自动消除类告警信息还 是手动消除类告警信息;存储模块,用于在所述告警信息为自动消除类告警信息时,将所述 告警信息存储到告警文件。从而能够防止因为因为服务子系统出现故障,导致告警信息缓 存区中的告警信息的丢失。
[0020] 优选的,所述服务子系统还包括:第二发送模块,用于在初始化之后,向所述运维 监控系统发送删除请求消息,所述删除请求消息中包含所述告警文件中所存储的告警信息 的标识信息,所述删除请求消息用于请求所述运维监控系统删除所述标识信息对应的告警 信息;以及第三删除模块,用于删除所述告警文件中所存储的告警信息。由于在服务子系统 初始化时,自动消除类告警信息已经清除,在这种情况