用于处理需要报警的数据的处理器和方法

文档序号:8383590阅读:428来源:国知局
用于处理需要报警的数据的处理器和方法
【专利说明】用于处理需要报警的数据的处理器和方法
[0001]本申请为申请日是2012年11月14日,申请号是201210459207.6,名称是“用于处理需要报警的数据的处理器和方法”的发明专利申请的分案申请。
技术领域
[0002]本发明涉及计算机技术领域,具体涉及一种用于处理需要报警的数据的处理器和方法。
【背景技术】
[0003]随着网络的快速发展,出现了需要为大量用户服务的网络系统。这些网络系统具有分布在各个地址的大量服务器,而这些服务器通常构建为集群的方式来为用户服务。随着提供服务的服务器越来越多,对这些服务器的性能进行监控并在出现故障时及时、准确地进行报警成为目前非常关注的问题。
[0004]当监控系统用于监控大规模服务器时,会产生大量的监控数据。随着监控数据越来越多,如何对监控数据进行提取、分析、有效管理以便快速向操作人员及时、准确地报警成为考量包含大规模服务器的网络系统的快速反应、修复能力,直接影响着网络系统的服务质量。

【发明内容】

[0005]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的用于处理需要报警的数据的处理器和方法。
[0006]依据本发明的一个方面,提供了用于处理需要报警的数据的处理器,其包括:数据表构造模块,适于根据需要报警的数据来构造报警数据表,所述需要报警的数据包括至少两个数据项,所述报警数据表包括多个数据节点,每个数据节点上链接有环形双向链表,所述环形双向链表包括多个链表节点,其中数据节点由需要报警的数据中选定的至少一个数据项进行标识,该至少一个数据项相同的需要报警的数据被存储在同一个数据节点下并按顺序存储在该数据节点的环形双向链表中相应的链表节点;报警模块,根据预定的报警策略来确定与数据节点相关联的环形双向链表中的需要报警的数据是否符合所述报警策略,当确定符合报警策略时进行报警;以及报警历史存储器,其存储报警结果的历史记录。
[0007]根据本发明的另一方面,提供了一种用于处理需要报警的数据的方法,其包括:根据需要报警的数据来构造报警数据表,所述需要报警的数据包括至少两个数据项,所述报警数据表包括多个数据节点,每个数据节点上链接有环形双向链表,所述环形双向链表包括多个链表节点,其中每个数据节点由需要报警的数据中选定的至少一个数据项进行标识,该至少一个数据项相同的需要报警的数据被存储在同一个数据节点下并按顺序存储在该数据节点的环形双向链表中相应的链表节点;根据预定的报警策略来确定与数据节点相关联的环形双向链表中的需要报警的数据是否符合所述报警策略,当确定满足报警策略时进行报警;将报警结果的历史记录存储在报警历史存储器中。
[0008]本发明的用于处理需要报警的数据的处理器和方法可以应用于监控系统中,尤其监控多台甚至上千、上万台机器的监控系统中,便于对需要报警的数据进行分类、统计,并进行报警。使得操作人员能够快速、准确地定位出现异常的机器。
[0009]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0010]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0011]图1示出了根据本发明的一实施例的用于处理需要报警的数据的处理器的框图;
[0012]图2示出了根据本发明一个实施例的报警数据表的示意图;以及
[0013]图3示出了根据本发明一个实施例的用于处理需要报警的数据的方法的流程图。
【具体实施方式】
[0014]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0015]本发明提供一种报警处理器,其可以用于监控多台服务器的监控系统,在监控系统监测到多台服务器的大量的异常运行数据后,报警处理器对这些大量的异常运行数据有效地进行处理,从而及时、准确地进行报警。
[0016]图1示出了根据本发明的一实施例的用于处理需要报警的数据的处理器100的框图。如图1所示,报警处理器100包括数据表构造模块110和报警模块120。
[0017]数据表构造模块110适于根据需要报警的数据来构造报警数据表。这里,需要报警的数据例如可以是被监控的机器的异常运行数据。该异常运行数据包括至少两个数据项,例如可以包括:机器域名、报警策略ID、监控数据项ID、故障值、和时间戳。其中机器域名是被监控是否存在异常的机器的域名;报警策略ID是采取的对应的预定的报警策略;监控数据项ID是对应于被监控机器的一项运行指标;故障值是监测到的机器的监控数据项的异常数据;时间戳是监测到机器的监控数据项的异常数据的时间。想特别说明的是,该异常运行数据不限于上面所举例子,其可以是上述例子中所列数据项的两个或多个或全部,也可以是其它数据项。
[0018]数据表构造模块110所构造的报警数据表如图2所示。图2中的报警数据表200是以需要报警的数据包括机器域名、报警策略ID、监控数据项ID、故障值、和时间戳这五个数据项为例进行的图示说明。从图2中可以看出,报警数据表200包括多个数据节点210,这里只示意性地示出了 3个数据节点210。每个数据节点210链接有一环形双向链表220,环形双向链表220包括多个链表节点2220— 2205。图2中为了图示清楚起见,将环形双向链表220画在报警数据表200之外,实际上,环形双向链表220与报警数据表200紧密关联。在报警数据表200中,每个数据节点210由需要报警的运行数据中的机器域名和报警策略ID来标识,与每个数据节点210相关联的环形双向链表220的每个链表节点中存储有具有相同机器域名和相同报警策略ID的需要报警的运行数据,多个链表节点根据其上的需要报警的运行数据的时间戳的值的大小在环形双向链表220中依次链接排列。
[0019]想特别说明的是,根据图2所示的报警数据表200,在大量的需要报警的数据中,即使机器域名相同,但是报警策略ID不同,也会形成不同的数据节点210,S卩,同一服务器因为报警策略ID不同而会有不同的数据节点210。另一方面,即使报警策略ID相同,但是机器域名不同,也会形成不同的数据节点210。只有机器域名和报警策略ID都相同的数据才位于一个数据节点210,并分布在与该数据节点210对应的一有序的环形双向链表220中的各个对应的链表节点上。每当一个数据进入报警数据表200中,该数据就被分配到相应的数据节点210,并把该数据挂载到环形双向链表220中与该数据中的时间戳相对应的链表节点处。利用图2所示的报警数据表200,可以在存在大量需要报警的数据的情形下,将每个机器的不同类型的报警内容区别开,从而可以准确定位大量被监控的机器中哪个机器出现了问题,以及出现了什么问题。
[0020]在图2的环形双向链表220中,可以设定某一点为标准时间戳的链表节点,然后将各数据按时间戳的值从小到大或从大到小自标准时间戳的链表节点按顺时针或逆时针方向进行排列。例如,如图2所示,在环形双向链表220中,2200为标准时间戳的链表节点,按顺时针方向时间戳的值逐渐增大,从链表节点2200开始逆时针方向与其最邻近的链表节点2205为时间戳的值最大的链表节点;而从链表节点2200开始顺时针方向与其最邻近的链表节点2201为时间戳的值最小的链表节点。2202、2203、2204为时间戳的值大于2201的时间戳的值而小于2205的时间戳的值的、且时间戳的值依次增大的三个数据。图2中只以环形双向链表220中包含5个数据为例,在实际中环形双向链表220中可
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1