一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种告警数据水印检测系统及方法与流程

2021-10-24 06:04:00 来源:中国专利 TAG:告警 高效 水印 易用 检测系统


1.本发明涉及监控运维流告警领域,尤其涉及一种高效稳定、方便易用的告警数据水印检测系统及方法。


背景技术:

2.现有的告警系统及方法基本采用机器的处理时间进行告警的逻辑判断,或者借助内部分布式操作系统时间同步方式来实现时间在一定范围的一致性,重点关注在当前处理集群时间上的告警。现有技术的方法缺乏对告警源数据事件本身的时间情况的考虑,而只是采用当前机器的时间,此种架构情况在券商领域较为普遍存在,目前缺乏比较高效的解决方案,告警不准确对于券商运维耗费了较高的人力时间成本。
3.因此,有必要提出一种改进以克服现有技术缺陷。


技术实现要素:

4.本发明的目的是解决现有技术中的问题,提供一种高效稳定、方便易用的告警数据水印检测系统及方法。
5.本发明的技术方案是:
6.一种告警数据水印检测系统,包括规则管理端,通知组件及实时流框架告警处理模块;所述规则管理端用于告警规则的分发及启用;所述通知组件用于将所述规则管理端分发及启用的规则发送至所述实时流框架告警处理模块;所述实时流框架告警处理模块用于根据规则进行数据判断识别并根据告警数据生成告警信息。
7.作为一种优选的技术方案,所述规则管理端包括规则管理模块、api模块及通知模块;所述规则管理模块用于规则的新建、删除、修改、查询、发布、撤销;所述通知模块与所述通知组件通信连接。
8.作为进一步优选的技术方案,所述api模块包括动态规则接口及全部规则接口;所述动态规则接口用于规则动态的增加,删除或修改,所述动态规则接口与所述通知模块通信连接;所述全部规则接口与规则分发程序通信连接,所述规则分发程序与所述通知模块通信连接。
9.作为一种优选的技术方案,所述通知组件包括交换器及消息队列;所述交换器用于规则的转发,所述消息队列用于保存消息并将其转发给用户。
10.作为一种优选的技术方案,所述实时流框架告警处理模块包括水印心跳模拟程序、消费端模块,水印输出模块、分组分发器、规则引擎、窗口计数器及数据发送模块;所述消费端模块用于消费日志队列中的日志数据并接收所述水印心跳模拟程序提供的心跳;所述水印心跳模拟程序,基于日志队列中的数据进行周期性采样以获取日志本身的时间;所述消费端模块与所述水印输出模块通信连接,所述水印输出模块接收到所述消费端模块数据后,基于每条日志输出一条附加水印线;所述水印输出模块与所述分组分发器通信连接,所述分组分发器按照日志本身的维度信息进行分布式传递;所述规则引擎与所述通知组件
也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
24.应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
25.取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
26.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
27.如图1所示为本发明的一种告警数据水印检测系统具体实施方式系统框图。本发明的一种告警数据水印检测系统,包括规则管理端,通知组件及实时流框架告警处理模块;所述规则管理端用于告警规则的分发及启用;所述通知组件用于将所述规则管理端分发及启用的规则发送至所述实时流框架告警处理模块;所述实时流框架告警处理模块用于根据规则进行数据判断识别并根据告警数据生成告警信息。
28.本发明的一种告警数据水印检测系统通过portal界面进行规则配置,手动触发规则上线,规则管理端将规则下发给通知客户端执行,客户端执行之后将规则推送给通知组件,经过交互器和队列,最后通知实时流处理框架告警处理模块中的任务,用户可通过portal界面查看每条规则执行的结果。
29.其中,具体的,规则管理端为告警的调度中心,主要负责告警规则的分发和启用。在具体实施时,规则管理端包括规则管理模块、api模块及通知模块;所述规则管理模块用于规则的新建、删除、修改、查询、发布、撤销;所述通知模块与所述通知组件通信连接。规则管理模块主要负责规则的新建、删除、修改、查询、发布、撤销。本实施例的规则管理端具备规则管理、权限管理及参数配置的功能。规则管理通过规则管理模块实现,首先会对规则的合法性进行校验处理,校验成功之后可通过保存操作,发布到通知模块。权限管理功能是系统按照分组织分角色原则进行权限的控制,不同的用户所属不同的用户组,对不同的业务系统具有不同权限,通过权限模块进行集中管理和属组划分。参数配置功能主要为具体业务服务,不同业务场景用户可根据不同告警数据的业务场景进行规则参数的自定义配置,规则管理模块根据参数配置生成相应规则下发通知模块上。
30.规则管理模块完成规则的新建、删除、修改、查询、发布、撤销后,传送至所述api模块,所述api模块包括动态规则接口及全部规则接口;所述动态规则接口用于规则动态的增加,删除或修改,所述动态规则接口与所述通知模块通信连接;所述全部规则接口与规则分发程序通信连接,所述规则分发程序与所述通知模块通信连接。
31.通知组件包括交换器及消息队列,通知组件还包括客户端,客户端通过提供通知数据到交换器,交换器通过绑定队列再转发到消息队列。消息队列通过广播的方式通知到
实时流框架告警处理模块,实时流框架告警处理模块接受到规则并对应处理。具体的,交换器按照提交的规则进行转发,根据规则id的key进行分发。队列和交互机的根据路由键映射的关系进行路由键进行匹配,如果匹配的话,就会将消息投递到相应的队列。投递方式分别为直接投递,主机投递,随机投递,消息头投递,目前使用随机投递,支持最大程度并发处理。消息队列保存消息并将它们转发给实时流框架告警处理模块,先进先出。支持各个消息高效稳定可靠。
32.所述实时流框架告警处理模块包括水印心跳模拟程序、消费端模块,水印输出模块、分组分发器、规则引擎、窗口计数器及数据发送模块;所述消费端模块用于消费日志队列中的日志数据并接收所述水印心跳模拟程序提供的心跳;所述水印心跳模拟程序,基于日志队列中的数据进行周期性采样以获取日志本身的时间;所述消费端模块与所述水印输出模块通信连接,所述水印输出模块接收到所述消费端模块数据后,基于每条日志输出一条附加水印线;所述水印输出模块与所述分组分发器通信连接,所述分组分发器按照日志本身的维度信息进行分布式传递;所述规则引擎与所述通知组件通信连接,所述分组分发器与所述规则引擎通信连接,所述规则引擎接收到所述通知组件的规则后,对所述分组分发器发送来的日志数据进行表达式逻辑判断,满足规则则变成告警消息进入到所述窗口计数器,所述窗口计数器统计告警数据并通过所述数据发送模块发送。水印心跳模拟程序基于日志队列中的数据进行周期性采样以获取日志本身的时间并提供心跳。消费端模块消费日志队列中日志数据,并接收水印心跳模拟程序提供的心跳。水印输出模块接收到消费端模块的数据后,基于每条日志输出一条附加水印线(日志数据快照时间)放入流框架中,日志的时间可能高于或者低于目前水印线,在水印线上下浮动范围内属于正常情况,如果日志时间高于或者低于水印线上下范围,全局水印线不会提升,依靠水印心跳来提升全局水印线时间。日志时间在水印线上下范围内则全局水印线时间会慢慢提升。日志经过水印输出模块后,相当于给日志数据提供了一份快照和全局水印线,然后进入分组分发器。分组分发器可以按照日志本身的维度信息(主机、组件、集群等)进行分布式传递,相同类型日志会投递到分布式的同一个线程中。规则引擎接收到通知组件的规则后,对日志数据进行表达式逻辑判断,满足表达式条件则变成告警消息进入到窗口计数器中,窗口计数器提供满足条件的告警数据的统计,通过数据发送模块发送给对应负责人。
33.具体的:水印心跳模拟程序获取日志队列中的数据的时间,按照一定范围发送心跳信息,以保证数据的时间在指定范围内。为全局水印异常时,推动水印上升,通过获取事件自带的时间然后根据最近10个事件来周期性的输出心跳。消费端模块通过消费日志队列中的数据,将数据反序列化并且规整数据格式。水印输出模块根据事件时间自带的时间确定时间是否在指定范围内,若不在指定范围内,则规整到正常时间内。若在指定范围内,则按照事件时间输出一份水印数据。分组分发器根据数据中携带的维度(业务系统,组件,集群,主机等)进行分组,在分布式场景下进行分发扩展。规则引擎通过预编译表达式,当数据来临时将数据中的嵌套结构展平,然后过规则表达式进行逻辑判断,返回true则满足条件,返回false则不满足条件。经过规则引擎后,将满足条件的数据推送到窗口计数器内进行统计,如1分钟内满足10条等,满足窗口计数器的条件则生成真正的告警。数据发送模块将生成的告警推送到告警的消息队列中。
34.本发明还公开了一种告警数据水印检测方法,如图2所示,包括以下步骤:
35.s1、用户在所述规则管理端配置规则并发布后,将规则发送至所述通知组件;
36.s2、所述实时流框架告警处理模块接收规则,并根据规则建立相应的告警表达式;
37.s3、所述实时流框架告警处理模块根据数据日志生成心跳并经过所述告警表达式进行判断,处理异常和正常数据,判断成功后,生成告警信息;
38.s4、所述实时流框架告警处理模块将所述告警信息推送处理。
39.其中,当规则管理端包括规则管理模块、api模块及通知模块;所述步骤s1具体为,用户通过所述规则管理模块配置规则,并将规则通过所述api模块传递至所述通知模块,通过所述通知模块将规则通知给所述通知组件。
40.在步骤s3中,所述实时流框架告警处理模块根据数据日志生成心跳后,生成水印和心跳信号结合,再经过所述告警表达式进行判断。
41.在步骤s4中将告警信息推送的方式包括通过短信、微信、邮件推给对应人员。
42.本实施例中,数据流程为:1.用户在配置规则后,通过点击界面上的发布按钮,服务端后台将规则通过客户端通知给通知组件。2.流式处理引擎根据规则新建相应的的表达式处理任务。3.心跳生成程序提送心跳到流处理引擎。4.流处理引擎消费日志数据经过告警表达式判断,并生成水印和心跳信号结合,处理异常和正常的数据,判断成功后生成告警。5.告警生成后发送到消息队列中,短信、微信、邮件推给对应的业务人员。
43.在应用时,本发明的一种告警数据水印检测系统架构部署时,服务采用分布式架构,管理端采用bs cs架构相结合的方式。引擎端通过接口调用streamx客户端程序向集群中提交任务,任务提交后,接收消息队列和通知组件的消息,生成水印进行告警判断。
44.本发明的一种告警数据水印检测系统及方法主要关注实时流日志告警通过水印检测高效准确的方法,分布式实时流框架的方式实现,由规则中心服务器通过通知组件向集群中节点的任务进行的分发,通过心跳程序和水印的方式保障了异常数据或者迟到数据对于告警本身的影响,大大提高了实时性和高效的处理能力。本方案针对场景则日志数据迟到或者不按照正常时间来到导致告警在统计上存在较大误差,通过日志本身加上水印方式,外加心跳程序推动水印上涨,从而避免了迟到或者异常数据影响,查阅现有方案均无法较好地满足此种场景。本方案作为对当前已有方案的一种场景补充,不仅在丰富了现有方案,而且在架构上也进行了优化创新,采用当前比较流行的微服务和实时流架构,充分地对服务之间进行解耦,大大提高了系统的稳定性和可靠性,丰富了现有告警系统和方法。
45.综上所述仅为本发明较佳的实施例,并非用来限定本发明的实施范围。即凡依本发明申请专利范围的内容所作的等效变化及修饰,皆应属于本发明的技术范畴。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜