CN113297183A - 一种时间窗口的告警分析方法及装置 - Google Patents

一种时间窗口的告警分析方法及装置 Download PDF

Info

Publication number
CN113297183A
CN113297183A CN202110823257.7A CN202110823257A CN113297183A CN 113297183 A CN113297183 A CN 113297183A CN 202110823257 A CN202110823257 A CN 202110823257A CN 113297183 A CN113297183 A CN 113297183A
Authority
CN
China
Prior art keywords
target
time window
alarm
data
analyzed
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.)
Granted
Application number
CN202110823257.7A
Other languages
English (en)
Other versions
CN113297183B (zh
Inventor
岳恒
辛存生
聂宗建
欧阳鹏
沈桐
李一萌
张长伟
王语杰
李曦
李拥杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guowang Xiongan Finance Technology Group Co ltd
State Grid Digital Technology Holdings Co ltd
State Grid Huitong Jincai Beijing Information Technology Co ltd
State Grid Corp of China SGCC
Original Assignee
Guowang Xiongan Finance Technology Group Co ltd
State Grid Huitong Jincai Beijing Information Technology Co ltd
State Grid Corp of China SGCC
State Grid E Commerce Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guowang Xiongan Finance Technology Group Co ltd, State Grid Huitong Jincai Beijing Information Technology Co ltd, State Grid Corp of China SGCC, State Grid E Commerce Co Ltd filed Critical Guowang Xiongan Finance Technology Group Co ltd
Priority to CN202110823257.7A priority Critical patent/CN113297183B/zh
Publication of CN113297183A publication Critical patent/CN113297183A/zh
Application granted granted Critical
Publication of CN113297183B publication Critical patent/CN113297183B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification

Abstract

本发明公开了一种时间窗口的告警分析方法及装置,该方法包括:获取各个待分析数据,其中,每个待分析数据包含事件标识,基于规则库中各个告警规则对数据进行过滤,得到目标待分析数据;基于待分析数据确定告警规则中的目标告警规则,其中,告警规则至少存在一个与待分析数据匹配的关键词;将待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。上述过程,基于事件绑定时间窗口的处理方式,避免了支撑场景局限性的问题,采用流处理的方式,提高了处理时效,降低了性能损耗。

Description

一种时间窗口的告警分析方法及装置
技术领域
本发明涉及数据处理技术领域,尤其涉及一种时间窗口的告警分析方法及装置。
背景技术
对于传统的数据分析告警系统,在进行事件分析告警时都是基于批处理的,比如elasticsearch的watcher功能。
但是,现有的处理方式存在以下问题:一是时效性不高,批处理任务必然有其执行周期,势必会带来告警的延迟;二是性能损耗大,能支撑的预警规则数量有限,周期性在数据库中里执行大SQL,对数据库的性能损耗较大;三是支撑场景有局限性,比如在一定时间范围之内,存在第一条数据,不存在匹配的第二条数据则告警这种需求,通过查询SQL的方式难以实现实时告警。
发明内容
鉴于上述问题,本发明提供了一种时间窗口的告警分析方法及装置,用于解决现有告警过程中实时性不高、性能损耗大和支撑场景存在局限性等问题,具体方案如下:
一种时间窗口的告警分析方法,预先设置告警规则库,其中,所述告警规则库中至少包括一条告警规则,所述告警规则包括:关键词、告警阈值、时间窗口类型和与所述时间窗口类型对应的时间窗口时长,所述方法包括:
获取各个待分析数据,其中,每个待分析数据包含事件标识,所述事件标识用于区分不同的请求,所述请求中包含至少一个待分析数据;
基于所述告警规则库中各个告警规则对所述待分析数据进行过滤,得到目标待分析数据;
基于所述目标待分析数据确定所述各个告警规则中的目标告警规则,其中,所述目标告警规则至少存在一个与所述目标待分析数据匹配的关键词;
将所述目标待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。
上述的方法,可选的,在所述目标时间窗口类型为基于事件绑定的时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析,包括:
为每个事件标识开启独立的基于事件绑定的时间窗口,在接收到与当前事件标识相同的第一个目标待分析数据时开启所述基于事件绑定的时间窗口;
在所述目标时间窗口时长内,统计所述当前事件标识出现的第一次数;
将所述第一次数与所述目标告警阈值进行比较,在所述第一次数不符合所述目标告警阈值的情况下,进行告警。
上述的方法,可选的,在所述目标时间窗口类型为滚动时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析,包括:
将当前分组中的目标待分析数据放入所述滚动时间窗口,在所述目标时间窗口时长内,统计当前事件标识出现的第二次数;
关闭所述滚动时间窗口,将所述第二次数与所述目标告警阈值进行比较,在所述第二次数不符合所述目标告警阈值的情况下,进行告警,同时开启下一个滚动时间窗口。
上述的方法,可选的,在所述目标时间窗口类型为滑动时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析,包括:
将当前分组中的目标待分析数据放入当前滑动时间窗口,在所述目标时间窗口时长内,统计当前事件标识出现的第三次数;
在所述当前滑动时间窗口开启时长达到预设时长的情况下,开启下一个滑动时间窗口,在所述目标时间窗口时长内,统计所述当前事件标识出现的第四次数;
将所述第三次数和所述第四次数分别与所述目标告警阈值进行比较,在所述第三次数和/或所述第四次数不符合所述目标告警阈值的情况下,进行告警。
上述的方法,可选的,在所述目标时间窗口类型为基于session的时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析,包括:
接收到第一个目标待分析数据的情况下,统计所述目标待分析数据出现的第五次数并开始记录空闲时长;
当所述空闲时长大于所述目标时间窗口时长的情况下,关闭基于session的时间窗口;
将所述第五次数与所述目标告警阈值进行比较,在所述第五次数不符合所述目标告警阈值的情况下,进行告警。
上述的方法,可选的,还包括:
当所述空闲时长小于所述目标时间窗口时长的情况下,若存在目标待分析数据流入,基于所述第五次数继续进行统计,得到第六次数;
将所述第六次数与所述目标告警阈值进行比较,在所述第六次数不符合所述目标告警阈值的情况下,进行告警。
上述的方法,可选的,所述告警规则还包括:告警对象,
将告警分析结果发送给所述告警对象。
一种时间窗口的告警分析装置,预先设置告警规则库,其中,所述告警规则库中至少包括一条告警规则,所述告警规则包括:关键词、告警阈值、时间窗口类型和与所述时间窗口类型对应的时间窗口时长,所述装置包括:
获取模块,用于获取各个待分析数据,其中,每个待分析数据包含事件标识,所述事件标识用于区分不同的请求,所述请求中包含至少一个待分析数据;
过滤模块,用于基于所述告警规则库中各个告警规则对所述待分析数据进行过滤,得到目标待分析数据;
确定模块,用于基于所述目标待分析数据确定所述各个告警规则中的目标告警规则,其中,所述目标告警规则至少存在一个与所述目标待分析数据匹配的关键词;
告警分析模块,用于将所述目标待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。
上述的装置,可选的,在所述目标时间窗口类型为基于事件绑定的时间窗口的情况下,所述告警分析模块包括:
开启单元,用于为每个事件标识开启独立的基于事件绑定的时间窗口,在接收到与当前事件标识相同的第一个目标待分析数据时开启所述基于事件绑定的时间窗口;
第一统计单元,用于在所述目标时间窗口时长内,统计所述当前事件标识出现的第一次数;
第一比较和告警单元,用于将所述第一次数与所述目标告警阈值进行比较,在所述第一次数不符合所述目标告警阈值的情况下,进行告警。
上述的装置,可选的,在所述目标时间窗口类型为滚动时间窗口的情况下,所述告警分析模块包括:
第二统计单元,用于将当前分组中的目标待分析数据放入所述滚动时间窗口,在所述目标时间窗口时长内,统计当前事件标识出现的第二次数;
第二比较和告警单元,用于关闭所述滚动时间窗口,将所述第二次数与所述目标告警阈值进行比较,在所述第二次数不符合所述目标告警阈值的情况下,进行告警,同时开启下一个滚动时间窗口。
与现有技术相比,本发明包括以下优点:
本发明公开了一种时间窗口的告警分析方法及装置,该方法包括:获取各个待分析数据,其中,每个待分析数据包含事件标识,基于规则库中各个告警规则对析数据进行过滤,得到目标待分析数据;基于待分析数据确定告警规则中的目标告警规则,其中,告警规则至少存在一个与待分析数据匹配的关键词;将待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。上述过程,基于事件绑定时间窗口的处理方式,避免了支撑场景局限性的问题,采用流处理的方式,可以实现实时处理,提高了处理时效,不需要集中进行处理,降低了数据库的性能损耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种时间窗口的告警分析方法流程图;
图2为本发明实施例中公开的一种告警分析结果示意图;
图3为本申请实施例中公开的一种告警分析过程的处理流程示意图;
图4为本发明提供的一种时间窗口的告警分析装置结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明公开了一种时间窗口的告警分析方法及装置,应用于告警分析的过程中,现有的告警分析过程采用批处理的方式实现,主要问题有三个,一是时效性不高,批处理任务必然有其执行周期,势必会带来告警的延迟;二是性能损耗大,能支撑的预警规则数量有限,周期性在数据库中里执行大SQL,对数据库的性能损耗较大;三是支撑场景有局限性,比如在一个时间窗口之内,存在第一条数据,不存在匹配的第二条数据则告警这种需求,通过查询SQL的方式难以实现。比如存在这样一个场景:用户通过订单系统成功下单,但是由于业务系统处理异常,最终并没有进行销账,在这个过程中没有输出处理失败的报错信息,但是这确实是一笔异常交易,我们需要根据订单号同时检测到下单数据和销账数据才能认为是一笔成功交易,否则应该进行告警通知,然后通过其他手段及时处理这笔异常。因此,本发明旨在解决如下问题:通过建设时间窗口的告警分析方法,解决监控系统时效性不高、性能损耗大和支撑场景局限的问题。所述方法中预先设置告警规则库,其中,所述告警规则库中至少包括一条告警规则,所述告警规则包括:关键词、告警阈值、时间窗口类型和与所述时间窗口类型对应的时间窗口时长,所述关键词是数据标识且一定会出现的在对应的数据中,所述告警阈值指在对应的告警规则中一个请求中拥有相同事件标识的事件出现的次数阈值。
所述方法中的待分析数据以逐渐可用的形式生成,没有明确的界限,理论上可以是持续的、无限的数据。所述方法的执行流程如图1所示,包括步骤:
S101、获取各个待分析数据,其中,每个待分析数据包含事件标识,所述事件标识用于区分不同的请求,所述请求中包含至少一个待分析数据;
本发明实施例中,所述各个待分析数据可以基于http接口被动接收(如其他系统调用)、探针主动采集(如利用filebeat进行主动采集)、消息队列消费等方式获取,优选的,可以基于filebeat数据收集器进行数据的获取。用户请求产生的一条待分析数据称为一个事件,用户同一次请求的所有待分析数据均有相同的事件标识,用于对相同请求的数据做分组,便于计算和聚合相关的状态数据。
S102、基于所述告警规则库中各个告警规则对所述待分析数据进行过滤,得到目标待分析数据;
本发明实施例中,针对所述告警规则库的各个告警规则,获取其中包含的关键词,针对各个关键词对所述待分析数据进行过滤,保留所述待分析数据包含所述各个关键词的部分,过滤掉不包含关键词的部分,得到目标待分析数据。
S103、基于所述目标待分析数据确定所述各个告警规则中的目标告警规则,其中,所述目标告警规则至少存在一个与所述目标待分析数据匹配的关键词;
本发明实施例中,针对所述目标待分数据,基于其中包含的各个关键词,确定所述各个告警规则中的目标告警规则,其中,所述目标告警规则至少存在一个与所述目标待分析数据匹配的关键词,将不包含所述目标待分析数据关键词的告警规则忽略,不进行告警分析。
S104、将所述目标待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。
本发明实施例中,将所述目标待分析数据中事件标识相同的数据划分为同一组,并将标识相同的数据发往同一节点进行告警分析,其中,告警分析过程基于目标时间窗口类型不同,处理过程不同,所述目标时间窗口类型包括:基于事件绑定的时间窗口、滚动时间窗口、滑动时间窗口和基于session的时间窗口中的一种,时间窗口用于在时间维度对无界的数据流事件进行分组的机制。对于符合预警规则的事件,均会进入一个或多个时间窗口,事件进入多个时间窗口,条件有两个:要么这个时间窗口是滑动时间窗口,要么这个事件被多个预警规则命中。数据流分析作用于时间窗口内的一组事件之上,时间窗口内会保存关联事件的计算状态。其中,所述关联事件具有相同事件标识的事件计算状态就是简单的数量计数或者分组计数。进一步的,针对目标时间窗口类型不同,所述目标时间窗口类型对应的目标时间窗口时长代表的物理意义不同,在告警分析过程中,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。
本发明公开了一种时间窗口的告警分析方法,包括:获取各个待分析数据,其中,每个待分析数据包含事件标识,基于规则库中各个告警规则对析数据进行过滤,得到目标待分析数据;基于待分析数据确定告警规则中的目标告警规则,其中,告警规则至少存在一个与待分析数据匹配的关键词;将待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。上述过程,基于事件绑定时间窗口的处理方式,避免了支撑场景局限性的问题,采用流处理的方式,提高了处理时效,降低了性能损耗。
本发明实施例中,所述告警规则中还包括:告警对象,所述告警对象是将告警分析结果发送给对应联系人的相关信息,优选的,将告警分析结果发送给所述告警对象,发送的方式可以通过短信,邮件或者微信等方式,本发明实施例中对具体的发送形式不进行限定,其中,所述告警分析结果的示意图如图2所示,包括:标题:业务-业务链缺失告警,等级:严重,数量:1,业务:电费代收,户号:172073380230848328478,阈值:数量!=3,时间:2021-01-29 12:37:30~2021-04-29 12:47:30,进一步的,针对图2所示的告警结果仅是进行举例说明,本发明实施例中不进行具体的限定。
本发明实施例中,在所述目标时间窗口类型为基于事件绑定的时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析的处理过程如下:每个事件标识开启独立的窗口,在收到该事件标识的第一个事件时开启窗口,在达到告警规则中规定的目标时间窗口时长之前会持续接收数据,并在窗口中保存事件状态,如计数器(每新增一条相同事件标识的数据将计数器加1,到达时间窗口期后关闭窗口,不再接收数据,同时将计数器中的第一次数和告警规则中的告警阈值比较,判断是否告警)。当时间窗口保存的状态满足一定条件后,触发告警或者窗口关闭操作。
此类时间窗口适用于聚合单次业务处理范围的数据,并在此范围内做聚合分析,例如,用户充值监控,需要同时出现支付、扣款、销账三条日志才认为成功,如果不足三条可以被监控到并告警。
本发明实施例中,在所述目标时间窗口类型为滚动时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析的处理过程如下:滚动时间窗口是固定时间长短的窗口,在时间线上连续分布,具有依据配置而来的固定时长(目标时间窗口时长),在配置生效后即开启。根据配置的监控预警规则,当特定事件标识的事件被接收到时,将事件放入对应的滚动时间窗口,并在窗口内进行聚合分析。当固定时长达到后,滚动时间窗口关闭,根据关闭时时间窗口保存的状态(事件的数量统计),判断是否触发告警,将统计得到的第二次数与告警阈值相比较,在不符合对应的告警阈值的情况下进行告警,反之,不进行告警。同时开启下一个滚动时间窗口,连续两个时间窗口完全连接且没有重合,其中,不符合对应的告警阈值可以为大于对应的告警阈值或者小于对应的告警阈值,具体选择哪一种需要依具体情况而定。
此类时间窗口适用于处理按固定周期进行计算的监控预警场景,如同比、环比等。例如,每固定时长统计一次固定时间范围内的数量等信息,如每天统计一次支付笔数。
本发明实施例中,在所述目标时间窗口类型为滑动时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析的处理过程如下:滑动时间窗口与滚动时间窗口的类似,均为固定时间长短的窗口,区别在于滑动时间窗口并非等待上一个窗口关闭后再开启下一个,而是等待上一个时间窗口开启预设时长后开启第二个时间窗口,且此等待时长要短于窗口持续时间,这意味着连续两个滑动时间窗口会产生重叠。滑动时间窗口可以在更细力度的时间范围内进行更精确的监控预警。具体的分析过程如下:将当前分组中的目标待分析数据放入当前滑动时间窗口,在所述目标时间窗口时长内,统计所述当前事件标识出现的第三次数;在所述当前滑动时间窗口开启时长达到预设时长的情况下,开启下一个滑动时间窗口,在所述目标时间窗口时长内,统计所述当前事件标识出现的第四次数;将所述第三次数和所述第四次数分别与所述目标告警阈值进行比较,在所述第三次数和/或所述第四次数不符合所述目标告警阈值的情况下,进行告警,反之,不进行告警,其中,不符合对应的告警阈值可以为大于对应的告警阈值或者小于对应的告警阈值,具体选择哪一种需要依具体情况而定。
此类时间窗口适用于处理按固定时长进行聚合的监控预警场景,如每10分钟内计数或计算成功率等,例如,每3分钟计算一次最近10分钟支付成功率,若不足80%发生告警。
本发明实施例中,在所述目标时间窗口类型为基于session的时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析的处理过程如下:基于session的时间窗口没有固定的窗口时长,是否关闭当前窗口开启新窗口取决于窗口空闲时间是否超出告警规则中的窗口空闲时长(目标时间窗口时长),如:每接收一条数据后开启计时器进行计时,当空闲时间超过告警规则中的空闲时长后则关闭当前窗口,判断窗口中的累计数值是否达到告警阈值,随之开启下一个新的时间窗口;如果在未达到告警规则中的空闲时长就有新事件流入则将计时器清0,重新开始计时并在原有数值基础上继续累计计数,得到第五次数,直到窗口达到关闭条件后进行告警判断,将所述第五次数与所述目标告警阈值进行比较,在所述第五次数不符合所述目标告警阈值的情况下,进行告警,反之,不进行告警,其中,不符合对应的告警阈值可以为大于对应的告警阈值或者小于对应的告警阈值,具体选择哪一种需要依具体情况而定。
此类时间窗口适用于按业务内在逻辑进行数据分组聚合,如计算某个批次的数据的异常比例。例如,一个大的操作中系列子步骤的超时监控,比如用户支付后超过5分钟未销账则发生告警。
本发明相对传统告警检测有以下优点:实时性好。通过基于事件绑定的时间窗口可以任意设置检测周期,在第一时间发现异常数据,而传统的方式一般通过定时跑批来检测,对于核心业务而言实时性不够。性能损耗小。传统的批处理检测方式受定时任务数量限制,大量的定时任务会带来较高的资源消耗,本专利通过流处理来分析数据,以时间窗口作为处理单元,能极大降低资源消耗。告警更加灵活。传统的告警一般只能针对特定异常信息进行告警,无法做到关联分析,本专利通过数据流处理解决了这一问题。
本发明实施例中,基于上述的告警分析过程的处理流程模块化,各个模块的示意图如图3所示,包括:数据和搜集模块、告警规则模块、数据过滤模块、数据流分析模块和告警模块,其中,
所述数据收集模块,用于收集不同来源的数据,支持http接口被动接收(如其他系统调用)、探针主动采集(如利用filebeat进行主动采集)、消息队列消费。
告警规则模块,对数据过滤模块、数据流分析模块和告警模块进行规则监听,维护监控预警规则库,明确哪些数据需要关注,需要采用哪些方式进行分析和高警等。
数据过滤模块。接收数据收集模块中的数据,并监听告警规则库,运用告警规则过滤掉无关数据,只将相关数据发往数据流分析模块。
数据流分析模块。数据流分析模块负责对相同数据标识的数据进行分组聚合,然后窗口开启:为每个事件标识开启一个特定时间窗口,之后进行状态计算,相同事件标识的事件在同一个窗口聚合,特定时间过后窗口关闭,异常捕获,在窗口关闭的情况下判断状态是否异常,若存在异常,结合对应的告警规则生成告警信息。
告警模块。告警模块消费消息队列中的告警消息,并应用告警规则将对应告警消息发送至企业微信。
本发明本质上是使用数据流处理方法替代数据批处理方法,解决数据监控预警系统时效性不高、性能损耗大和支撑场景的局限性问题。首先,数据以事件流的形式进入数据流分析模块,而非定时通过批处理任务抽取数据,这保证了监控告警分析的准实时性。同时,依赖流处理的特性,有数据时处理、无数据时不处理,用推送的方式替代拉取的方式,避免了大量无用的轮询和计算,降低了监控告警系统的性能损耗。最后,利用流处理过程中的事件分组和根据事件绑定的时间窗口等特性,实现批处理方法中难以实现的事件关联分析等场景,扩展了监控预警系统的支撑场景的广度,同时降低了实现的难度。
本发明的核心模块是数据流分析模块,要实现数据关联分析,这个模块是必须的。它的主要功能就是基于事件绑定的时间窗口对数据进行分析,并统计同一个业务链中对应请求出现的次数,为后续判断告警提供依据。要实现数据分析告警还可以通过业务方自身跑批校验来实现,比如通过对比数据库中的表数据前后是否匹配来完成检测。
进一步的,由于一些不完整的请求并没有明显的异常信息,且通过传统的批处理监控方法很难准确、及时、低成本地发现这些异常数据,本发明通过在基于事件触发的时间窗口内进行有状态的聚合分析,可以高效处理大量的数据流,降低性能损耗,告警适用范围更加广泛,能有效监控处理异常数据,让业务流程更加高效。
基于上述一种时间窗口的告警分析方法,本发明实施例中,还提供了一种时间窗口的告警分析装置,所述分析装置中预先设置告警规则库,其中,所述告警规则库中至少包括一条告警规则,所述告警规则包括:关键词、告警阈值、时间窗口类型和与所述时间窗口类型对应的时间窗口时长,所述告警装置的结构框图如图4所示,包括:
获取模块201、过滤模块202、确定模块203和告警分析模块204。
其中,
所述获取模块201,用于获取各个待分析数据,其中,每个待分析数据包含事件标识,所述事件标识用于区分不同的请求,所述请求中包含至少一个待分析数据;
所述过滤模块202,用于基于所述告警规则库中各个告警规则对所述待分析数据进行过滤,得到目标待分析数据;
所述确定模块203,用于基于所述目标待分析数据确定所述各个告警规则中的目标告警规则,其中,所述目标告警规则至少存在一个与所述目标待分析数据匹配的关键词;
所述告警分析模块204,用于将所述目标待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。
本发明公开了一种时间窗口的告警分析装置,包括:获取各个待分析数据,其中,每个待分析数据包含事件标识,基于规则库中各个告警规则对析数据进行过滤,得到目标待分析数据;基于待分析数据确定告警规则中的目标告警规则,其中,告警规则至少存在一个与待分析数据匹配的关键词;将待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。上述过程,基于事件绑定时间窗口的处理方式,避免了支撑场景局限性的问题,采用流处理的方式,提高了处理时效,降低了性能损耗。
本发明实施例中,在所述目标时间窗口类型为基于事件绑定的时间窗口的情况下,所述告警分析模块204包括:
开启单元205、第一统计单元206和第一比较和告警单元。
其中,
所述开启单元205,用于为每个事件标识开启独立的基于时间绑定的时间窗口,在接收到与当前事件标识相同的第一个目标待分析数据时开启所述基于时间绑定的时间窗口;
所述第一统计单元206,用于在所述目标时间窗口时长内,统计所述当前事件标识出现的第一次数;
所述第一比较和告警单元207,用于将所述第一次数与所述目标告警阈值进行比较,在所述第一次数不符合所述目标告警阈值的情况下,进行告警。
本发明实施例中,在所述目标时间窗口类型为滚动时间窗口的情况下,所述告警分析模块包括:
第二统计单元208和第二比较和告警单元209。
其中
所述第二统计单元208,用于将当前分组中的目标待分析数据放入所述滚动时间窗口,在所述目标时间窗口时长内,统计所述当前事件标识出现的第二次数;
所述第二比较和告警单元209,用于关闭所述滚动时间窗口,将所述第二次数与所述目标告警阈值进行比较,在所述第二次数不符合所述目标告警阈值的情况下,进行告警,同时开启下一个滚动时间窗口。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种时间窗口的告警分析方法,其特征在于,预先设置告警规则库,其中,所述告警规则库中至少包括一条告警规则,所述告警规则包括:关键词、告警阈值、时间窗口类型和与所述时间窗口类型对应的时间窗口时长,所述方法包括:
获取各个待分析数据,其中,每个待分析数据包含事件标识,所述事件标识用于区分不同的请求,所述请求中包含至少一个待分析数据;
基于所述告警规则库中各个告警规则对所述待分析数据进行过滤,得到目标待分析数据;
基于所述目标待分析数据确定所述各个告警规则中的目标告警规则,其中,所述目标告警规则至少存在一个与所述目标待分析数据匹配的关键词;
将所述目标待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。
2.根据权利要求1所述的方法,其特征在于,在所述目标时间窗口类型为基于事件绑定的时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析,包括:
为每个事件标识开启独立的基于事件绑定的时间窗口,在接收到与当前事件标识相同的第一个目标待分析数据时开启所述基于事件绑定的时间窗口;
在所述目标时间窗口时长内,统计所述当前事件标识出现的第一次数;
将所述第一次数与所述目标告警阈值进行比较,在所述第一次数不符合所述目标告警阈值的情况下,进行告警。
3.根据权利要求1所述的方法,其特征在于,在所述目标时间窗口类型为滚动时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析,包括:
将当前分组中的目标待分析数据放入所述滚动时间窗口,在所述目标时间窗口时长内,统计当前事件标识出现的第二次数;
关闭所述滚动时间窗口,将所述第二次数与所述目标告警阈值进行比较,在所述第二次数不符合所述目标告警阈值的情况下,进行告警,同时开启下一个滚动时间窗口。
4.根据权利要求1所述的方法,其特征在于,在所述目标时间窗口类型为滑动时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析,包括:
将当前分组中的目标待分析数据放入当前滑动时间窗口,在所述目标时间窗口时长内,统计当前事件标识出现的第三次数;
在所述当前滑动时间窗口开启时长达到预设时长的情况下,开启下一个滑动时间窗口,在所述目标时间窗口时长内,统计所述当前事件标识出现的第四次数;
将所述第三次数和所述第四次数分别与所述目标告警阈值进行比较,在所述第三次数和/或所述第四次数不符合所述目标告警阈值的情况下,进行告警。
5.根据权利要求1所述的方法,其特征在于,在所述目标时间窗口类型为基于session的时间窗口的情况下,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析,包括:
接收到第一个目标待分析数据的情况下,统计所述目标待分析数据出现的第五次数并开始记录空闲时长;
当所述空闲时长大于所述目标时间窗口时长的情况下,关闭基于session的时间窗口;
将所述第五次数与所述目标告警阈值进行比较,在所述第五次数不符合所述目标告警阈值的情况下,进行告警。
6.根据权利要求5所述的方法,其特征在于,还包括:
当所述空闲时长小于所述目标时间窗口时长的情况下,若存在目标待分析数据流入,基于所述第五次数继续进行统计,得到第六次数;
将所述第六次数与所述目标告警阈值进行比较,在所述第六次数不符合所述目标告警阈值的情况下,进行告警。
7.根据权利要求1-6中任意一项所述的方法,其特征在于,所述告警规则还包括:告警对象,
将告警分析结果发送给所述告警对象。
8.一种时间窗口的告警分析装置,其特征在于,预先设置告警规则库,其中,所述告警规则库中至少包括一条告警规则,所述告警规则包括:关键词、告警阈值、时间窗口类型和与所述时间窗口类型对应的时间窗口时长,所述装置包括:
获取模块,用于获取各个待分析数据,其中,每个待分析数据包含事件标识,所述事件标识用于区分不同的请求,所述请求中包含至少一个待分析数据;
过滤模块,用于基于所述告警规则库中各个告警规则对所述待分析数据进行过滤,得到目标待分析数据;
确定模块,用于基于所述目标待分析数据确定所述各个告警规则中的目标告警规则,其中,所述目标告警规则至少存在一个与所述目标待分析数据匹配的关键词;
告警分析模块,用于将所述目标待分析数据中事件标识相同的数据划分为同一组,针对每组目标待分析数据基于所述目标告警规则中的目标告警阈值、目标时间窗口类型和与所述目标时间窗口类型对应的目标时间窗口时长采用流处理的方式进行告警分析。
9.根据权利要求8所述的装置,其特征在于,在所述目标时间窗口类型为基于事件绑定的时间窗口的情况下,所述告警分析模块包括:
开启单元,用于为每个事件标识开启独立的基于事件绑定的时间窗口,在接收到与当前事件标识相同的第一个目标待分析数据时开启所述基于事件绑定的时间窗口;
第一统计单元,用于在所述目标时间窗口时长内,统计所述当前事件标识出现的第一次数;
第一比较和告警单元,用于将所述第一次数与所述目标告警阈值进行比较,在所述第一次数不符合所述目标告警阈值的情况下,进行告警。
10.根据权利要求8所述的装置,其特征在于,在所述目标时间窗口类型为滚动时间窗口的情况下,所述告警分析模块包括:
第二统计单元,用于将当前分组中的目标待分析数据放入所述滚动时间窗口,在所述目标时间窗口时长内,统计当前事件标识出现的第二次数;
第二比较和告警单元,用于关闭所述滚动时间窗口,将所述第二次数与所述目标告警阈值进行比较,在所述第二次数不符合所述目标告警阈值的情况下,进行告警,同时开启下一个滚动时间窗口。
CN202110823257.7A 2021-07-21 2021-07-21 一种时间窗口的告警分析方法及装置 Active CN113297183B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110823257.7A CN113297183B (zh) 2021-07-21 2021-07-21 一种时间窗口的告警分析方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110823257.7A CN113297183B (zh) 2021-07-21 2021-07-21 一种时间窗口的告警分析方法及装置

Publications (2)

Publication Number Publication Date
CN113297183A true CN113297183A (zh) 2021-08-24
CN113297183B CN113297183B (zh) 2022-02-15

Family

ID=77330813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110823257.7A Active CN113297183B (zh) 2021-07-21 2021-07-21 一种时间窗口的告警分析方法及装置

Country Status (1)

Country Link
CN (1) CN113297183B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113993001A (zh) * 2021-09-08 2022-01-28 四创电子股份有限公司 一种基于滑动数据窗口的实时流式分析告警方法
CN114186227A (zh) * 2021-12-08 2022-03-15 上海观安信息技术股份有限公司 安全告警转化为安全事件的方法、装置及存储介质
CN114297453A (zh) * 2021-12-30 2022-04-08 中国电信股份有限公司 告警预测方法、装置、电子设备及存储介质
CN115185788A (zh) * 2022-09-07 2022-10-14 平安银行股份有限公司 数据变量监控方法及其系统、计算机设备
CN115913886A (zh) * 2022-11-15 2023-04-04 浪潮云信息技术股份公司 一种云原生环境下基于滑动窗口的告警方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106789138A (zh) * 2015-11-23 2017-05-31 中国移动通信集团广西有限公司 一种网络告警关联分析的方法及装置
CN108270618A (zh) * 2017-12-30 2018-07-10 杭州华为数字技术有限公司 告警判定的方法、装置及告警系统
CN110928255A (zh) * 2019-11-20 2020-03-27 珠海格力电器股份有限公司 数据异常统计报警方法、装置及电子设备
CN111600898A (zh) * 2020-05-22 2020-08-28 国网电力科学研究院有限公司 基于规则引擎的安全告警生成方法、装置及系统
US20210042270A1 (en) * 2018-04-23 2021-02-11 Huawei Technologies Co., Ltd. Alarm log compression method, apparatus, and system, and storage medium
CN112395156A (zh) * 2020-11-06 2021-02-23 微民保险代理有限公司 故障的告警方法和装置、存储介质和电子设备
US20210182127A1 (en) * 2019-12-16 2021-06-17 Vmware, Inc. Alert notification on streaming textual data

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106789138A (zh) * 2015-11-23 2017-05-31 中国移动通信集团广西有限公司 一种网络告警关联分析的方法及装置
CN108270618A (zh) * 2017-12-30 2018-07-10 杭州华为数字技术有限公司 告警判定的方法、装置及告警系统
US20210042270A1 (en) * 2018-04-23 2021-02-11 Huawei Technologies Co., Ltd. Alarm log compression method, apparatus, and system, and storage medium
CN110928255A (zh) * 2019-11-20 2020-03-27 珠海格力电器股份有限公司 数据异常统计报警方法、装置及电子设备
US20210182127A1 (en) * 2019-12-16 2021-06-17 Vmware, Inc. Alert notification on streaming textual data
CN111600898A (zh) * 2020-05-22 2020-08-28 国网电力科学研究院有限公司 基于规则引擎的安全告警生成方法、装置及系统
CN112395156A (zh) * 2020-11-06 2021-02-23 微民保险代理有限公司 故障的告警方法和装置、存储介质和电子设备

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113993001A (zh) * 2021-09-08 2022-01-28 四创电子股份有限公司 一种基于滑动数据窗口的实时流式分析告警方法
CN113993001B (zh) * 2021-09-08 2024-04-12 四创电子股份有限公司 一种基于滑动数据窗口的实时流式分析告警方法
CN114186227A (zh) * 2021-12-08 2022-03-15 上海观安信息技术股份有限公司 安全告警转化为安全事件的方法、装置及存储介质
CN114297453A (zh) * 2021-12-30 2022-04-08 中国电信股份有限公司 告警预测方法、装置、电子设备及存储介质
CN114297453B (zh) * 2021-12-30 2023-12-15 中国电信股份有限公司 告警预测方法、装置、电子设备及存储介质
CN115185788A (zh) * 2022-09-07 2022-10-14 平安银行股份有限公司 数据变量监控方法及其系统、计算机设备
CN115913886A (zh) * 2022-11-15 2023-04-04 浪潮云信息技术股份公司 一种云原生环境下基于滑动窗口的告警方法及系统

Also Published As

Publication number Publication date
CN113297183B (zh) 2022-02-15

Similar Documents

Publication Publication Date Title
CN113297183B (zh) 一种时间窗口的告警分析方法及装置
CN110661659B (zh) 一种告警方法、装置、系统及电子设备
EP3425524A1 (en) Cloud platform-based client application data calculation method and device
EP1148428B1 (en) Method and apparatus for evaluating queries according to received event information and generating notifications
EP2874064B1 (en) Adaptive metric collection, storage, and alert thresholds
CN110232010A (zh) 一种告警方法、告警服务器及监控服务器
CN112751726B (zh) 一种数据处理方法、装置、电子设备和存储介质
CN103246735A (zh) 一种异常数据处理方法及系统
CN111881011A (zh) 日志管理方法、平台、服务器及存储介质
CN106992886A (zh) 一种基于分布式存储的日志分析方法及装置
CN108880934B (zh) 一种基于区块链的数据流量统计方法和装置
CN111984495A (zh) 一种大数据监控方法、装置和存储介质
CN110851473A (zh) 一种数据处理方法、装置和系统
CN112347163A (zh) 高离散度sql动态基线告警方法及系统
CN111339052A (zh) 一种非结构化日志数据处理方法及装置
CN106557483B (zh) 一种数据处理、数据查询方法及设备
CN111600774B (zh) 消费延迟确定方法、系统、装置、设备及可读存储介质
US11743281B1 (en) Microservices anomaly detection
CN111401874A (zh) 一种自助交易系统监控方法及装置
CN114493720A (zh) 监控Kafka消费者的方法、装置、存储介质及设备
CN110856040B (zh) 客户端中监控数据的处理方法和装置
CN113761443A (zh) 一种网站页面数据采集与统计方法、存储介质及设备
CN113760669A (zh) 问题数据的告警方法及装置、电子设备、存储介质
CN112817987A (zh) 访问分布式存储集群的方法及装置、设备、存储介质
CN107046489B (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
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Room 311, third floor, building 21, yard 68, Beiqing Road, Haidian District, Beijing 100094

Patentee after: STATE GRID HUITONG JINCAI (BEIJING) INFORMATION TECHNOLOGY Co.,Ltd.

Patentee after: State Grid Digital Technology Holdings Co.,Ltd.

Patentee after: Guowang Xiongan Finance Technology Group Co.,Ltd.

Patentee after: STATE GRID CORPORATION OF CHINA

Address before: Room 311, third floor, building 21, yard 68, Beiqing Road, Haidian District, Beijing 100094

Patentee before: STATE GRID HUITONG JINCAI (BEIJING) INFORMATION TECHNOLOGY Co.,Ltd.

Patentee before: STATE GRID ELECTRONIC COMMERCE Co.,Ltd.

Patentee before: Guowang Xiongan Finance Technology Group Co.,Ltd.

Patentee before: STATE GRID CORPORATION OF CHINA