基于时间标注的指标异动检测预警的装置的制作方法

文档序号:21361990发布日期:2020-07-04 04:35阅读:403来源:国知局
基于时间标注的指标异动检测预警的装置的制作方法

本发明实施例涉及计算机软件技术领域,尤其涉及一种基于时间标注的指标异动检测预警的装置。



背景技术:

it系统的监控是it运维保障系统稳定运行及时响应的基础。然而随着it技术和业务的发展,it系统规模日益庞大,涉及的各类主机、平台、进程、服务、业务的各类类监控指标数量日益增多,每个组件指标都需要设定对应的告警策略。有的是静态的阈值指标,有的是随着业务行为特征具有一定的周期趋势特征,如用户为每天在线用户,随着时间推移形成一定的周期特征。然后通过定时轮训的进程实现对指标异动的判断,生成响应的预警信息。其中,指标的阈值设定又经常随着业务规模,系统架构等因素发生变化,导致原有的阈值设定无法适用,因此需要进行人工重新维护更新,难以实现对it系统的高效、精确的风险预警。目前主要的解决方式有:

基于人工配置的时序指标异动检测方法:以人工维护的方式,实现对所有指标告警阈值的配置更新,也是目前大多数it企业的主要的解决方式,统一处理所有的运维监控指标,人工维护成本较高,尤其是大型it系统中的海量监控指标的更新维护,难以实现及时更新和调整。

基于cmdb的配置数据实现it系统预警:通过对it系统资源的运行状态进行多层次、全方位的实时监控,如cpu、内存、交易量等设定基准值,并且通过层次化依赖关系模型构建的以业务为核心的故障根源分析模型和故障影响性分析模型,可准确地定位造成交易失败的故障节点,以及预测该故障节点可能会影响的其他交易和影响的程度,及时通知运维管理人员采取措施,避免风险进一步地扩散。

基于历史数据加权生成业务基线预警:通过对监控指标的历史数据当天的日期属性对应的历史上当前时刻所在时段的监控项指标历史数据,计算其上下限基线,并且根据对应模块的权重设定告警的风险点等级和影响范围。数据采集模块用于从数据库中获取及存储阈值配置信息、活动周期预估数据和业务趋势预估数据;权重系数运算模块用于对各指标进行权重系数运算;上下限约束模块用于根据各指标的上下限约束完成指标数据的裁减;阈值输出模块用于输出阈值信息。

但上述现有监控技术都存在监控不及时、精度不高等问题。



技术实现要素:

本发明实施例提供一种基于时间标注的指标异动检测预警的装置,用以解决现有监控技术中监控不及时、精度不高等问题。

根据本发明实施例的第一个方面,提供一种基于时间标注的指标异动检测预警的装置,包括:

离线学习单元olu,用于基于异常事件的异常时间窗口,自动关联时序数据库tsdb中的时序指标数据,并且通过cramer分解,计算不确定因子和异常时间窗口的相关性,从而获取高敏时序指标数据集合;

异常模型am,用于基于高敏时序指标数据集合、目标系统可用率和正态分位函数算法,生成时序指标数据告警阈值区间;

rc规则检测器,基于时序指标数据告警阈值区间,对目标时序指标数据进行异动检测。

进一步,还包括标注工具lt,用于对异动事件进行对应系统和异常时间窗口标注。

进一步,还包括预警单元au,用于获取rc的异动检测结果,将异动检测结果进行信息推送;并且将相关异动模型发送给lt标注工具,进行标注分析。

进一步,还包括:

消息队列mq,用于获取各个分布式监控客户端上报的时序指标数据,并进行队列化处理。

进一步,还包括:

时序数据库tsdb,用于从mq模块的主题中归档时序指标并存储。

进一步,还包括:

事件库ed,用于存储事件的相关信息。

进一步,离线学习单元olu,进一步用于:

根据ed中新增异常时间窗口标注事件的触发,获取对应新增的事件属性,事件属性包括对应的系统模块和影响的范围,时间窗口为tf;更新计算所述对应的系统模块的可用率

选择离线分析的时序窗口tw,tf∈tw;

根据tw时间窗口,生成异动标注值;正常状态时序点的异动标注值为0,异常时序点的异动标注值为1,得到n维度的异动标注值序列数据w=[w1,w2...wn],且wi为0或1,n为总时序点数为;

根据tw时间窗口,从tsdb中遍历对应的时序指标数据,得到时序指标数据在tw时间窗口内的异动标注值序列y=[y1,y2...yn];

若y内异动标注值为周期性趋势时,则通过对q个周期的时序数据集合生成u=[μ1,μ2...μn],其中μi为q序列中的对应时序点的中位数或者平均;若y内异动标注值为平稳性指标时,则ui中的μi值相同为固定常数;

结合ui对y内异动标注值进行cramer分解,得到yi=μi+εi,其中μi为确定性影响,εi随机不确定性干扰,得到εi=yi-μi序列e;

计算向量w和e的相关性γ:

将γ满足预设条件的时序指标数据纳入高敏时序指标数据集合。

进一步,异常模型am,进一步用于:

时序指标数据yi告警阈值区间的正常阈值区间为

本发明实施例提供一种基于时间标注的指标异动检测预警的装置,所述装置基于时间标注学习实现故障预警的方式,采用系统异常时间窗口标注,反向提取强相关的指标集合,形成核心指标集合,作为实时预警的数据基础;并通过时间窗口标注,以及cramer分解,实现对应指标阈值的自动更新,从而极大降低人工维护成本,相比基于统一加权等模式在准确定上更加精确,而且具有更好的适用性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明基于时间标注的指标异动检测预警的装置的一结构示意图;

图2为本发明基于时间标注的指标异动检测预警的装置的又一结构示意图;

图3为本发明基于时间标注的指标异动检测预警的装置的正态分布概率密度曲线示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

现有技术方案主要存在以下几个问题:

方案一针对人为经验维护的方式存在的问题:

随着目前各类系统集群规模的不断扩大,单纯的人工维护已经成为一项艰巨的任务,再加上业务规模上发生的快速变化,运维非常容易淹没在海量告警信息之中,难以精准快速的发现系统的严重风险。

方案二针对cmdb配置数据实现预警的装置存在的问题:

基于cmdb配置数据实现层次化的依赖拓扑模型,本质上是要建立对海量监控指标在整个依赖模型中的层次定位和关系,模型的维护工作量较高,而且对于it人员的技能要求上也有较高的门槛,难以快速上手,而且容易受到系统变化而发生适用性的变化。

方案三针对基于历史数据加权计算的装置存在的问题:

基于历史数据加权计算的方案,主要是通过根据历史时间及其时刻分别计算生成业务阈值,并排除异常数据设定不同的基线,以提高告警的准确度。模型的自适应上存在一定的局限,而且异常数据排除的方式相对机械。

综上,现有的技术方案上都存在一定的不足,体现在维护成本上、方法适用性上、准确程度上都有一定的缺陷和不足。而本提案首次提出了基于时间标注学习实现故障预警的方式,采用系统异常时间窗口标注,反向提取强相关的指标集合,形成核心指标集合,作为实时预警的数据基础;并通过时间窗口标注,以及cramer分解,实现对应指标阈值的自动更新,从而极大降低人工维护成本,相比基于统一加权等模式在准确定上更加精确,而且具有更好的适用性。

如图1所示,本发明具体实施例示出一种基于时间标注的指标异动检测预警的装置的结构示意图,包括:

离线学习单元olua01,用于基于异常事件的异常时间窗口,自动关联时序数据库tsdb中的时序指标数据,并且通过cramer分解,计算不确定因子和异常时间窗口的相关性,从而获取高敏时序指标数据集合;

异常模型ama02,用于基于高敏时序指标数据集合、目标系统可用率和正态分位函数算法,生成时序指标数据告警阈值区间;

rc规则检测器a03,基于时序指标数据告警阈值区间,对目标时序指标数据进行异动检测。

在本发明上述任一具体实施例的基础上,提供一种基于时间标注的指标异动检测预警的装置,还包括标注工具lt,用于对异动事件进行对应系统和异常时间窗口标注。

在本发明上述任一具体实施例的基础上,提供一种基于时间标注的指标异动检测预警的装置,还包括预警单元au,用于获取rc的异动检测结果,将异动检测结果进行信息推送;并且将相关异动模型发送给lt标注工具,进行标注分析。

在本发明上述任一具体实施例的基础上,提供一种基于时间标注的指标异动检测预警的装置,还包括:

消息队列mq,用于获取各个分布式监控客户端上报的时序指标数据,并进行队列化处理。

在本发明上述任一具体实施例的基础上,提供一种基于时间标注的指标异动检测预警的装置,还包括:

时序数据库tsdb,用于从mq模块的主题中归档时序指标并存储。

在本发明上述任一具体实施例的基础上,提供一种基于时间标注的指标异动检测预警的装置,还包括:

事件库ed,用于存储事件的相关信息。

在本发明上述任一具体实施例的基础上,提供一种基于时间标注的指标异动检测预警的装置的具体实施例,离线学习单元olu,进一步用于:

根据ed中新增异常时间窗口标注事件的触发,获取对应新增的事件属性,事件属性包括对应的系统模块和影响的范围,时间窗口为tf;更新计算所述对应的系统模块的可用率

选择离线分析的时序窗口tw,tf∈tw;

根据tw时间窗口,生成异动标注值;正常状态时序点的异动标注值为0,异常时序点的异动标注值为1,得到n维度的异动标注值序列数据w=[w1,w2...wn],且wi为0或1,n为总时序点数为;

根据tw时间窗口,从tsdb中遍历对应的时序指标数据,得到时序指标数据在tw时间窗口内的异动标注值序列y=[y1,y2...yn];

若y内异动标注值为周期性趋势时,则通过对q个周期的时序数据集合生成u=[μ1,μ2...μn],其中μi为q序列中的对应时序点的中位数或者平均;若y内异动标注值为平稳性指标时,则ui中的μi值相同为固定常数;

结合ui对y内异动标注值进行cramer分解,得到yi=μi+εi,其中μi为确定性影响,εi随机不确定性干扰,得到εi=yi-μi序列e;

计算向量w和e的相关性γ:

将γ满足预设条件的时序指标数据纳入高敏时序指标数据集合。

在本发明上述任一具体实施例的基础上,提供一种基于时间标注的指标异动检测预警的装置,异常模型am,进一步用于:

时序指标数据yi告警阈值区间的正常阈值区间为

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

如图2,在本发明上述任一具体实施例的基础上,示出提供一种基于时间标注的指标异动检测预警的装置结构示意图。为了实现对分布式系统中海量告警数据的分析,建立核心的高敏指标集,从而实现高效的准确的预警能力。本方主要由以下消息队列(mq,messagequeue),规则校验器(rc,rulechecker),异动模型(am,anomalymodel),离线学习单元(olu,offlinelearningunit),预警单元(au,alertunit),标注工具(lt,labeltool),以及时序数据库(tsdb,timeseriesdatabase)和事件库(ed,eventdatabase)构成。

mq消息队列:主要负责收集来自各个分布式监控客户端上报的时序指标数据,并为后项的实时处理按主题进行队列化处理。

tsdb时序数据库:主要负责从mq模块的主题中归档时序指标,利用其对时间序列指标数据特有的高效压缩和读写以及聚合性能,为上层的离线学习单元提供数据支持。

ed事件库:主要负责存储事件的相关信息,包括发生日期,事件类型,影响的模块,开始/结束的时间等信息。

lt标注工具:主要负责对告警及异动事件进行对应系统和时间窗口的标注,为olu模块提供训练和学习的数据。

olu离线学习单元:根据lt模块标注的异动时间窗口,遍历tsdb中的指标数据进行相关性分析,从而得强相关的高敏指标合集。

am异常模型:主要负责接收来自olu的高敏指标合集,以及异常检测的阈值策略信息,rc模块提供模型判断依据。

rc规则检测器:主要负责从mq主题中抽取时序指标,并且根据am的模型策略接口实现实时的异动规则判断。

au预警单元:接收来自rc规则检测器的判断,通过邮件、电话、短信、工单等多种方式进行信息推送,并且将相关的异动模型传输给lt标注工具,进行标注分析。

结合上图对本装置的功能结构说明,其中olu离线学习单元和am异常模型模块是最为核心的模块,下面针对这两个模块的处理过程进行详细阐述。

olu离线学习单元。

根据eventdb事件库中新增异常标注事件的触发,olu模块从读取对应新增的事件属性,主要包括对应的系统模块,影响的范围,时间窗口表示为tf。并且更新计算该系统模块对应的可用率:

选择离线分析的时序窗口tw,要求满足tf∈tw。一般选择策略上可以以tf时序窗口为中心,向前和向后各自扩展一个同样长度的时间窗口,而且时序数据点数不小于分析的最小点数n,如60个时序点。

根据tw的时间窗口,生成异动标注值,正常状态时序点的值为0,异常时序点的值为1,则可以得到n维度的时序列数据w=[w1,w2...wn],且wi为0或1(假设总时序点数为n)。

olu根据tw时间窗口,从tsdb中逐个遍历对应的时序序列值,如指标在tw时间窗口内的指标时序值y=[y1,y2...yn]。

若yi时序指标为周期性趋势指标时,则通过对q个周期的时序数据集合生成,u=[μ1,μ2...μn],其中μi为q序列中的对应时序点的中位数或者平均。若为yi时序指标为平稳性指标时,则ui中的μi值相同为固定常数,一般通过均值计算。

结合ui对yi时序指标进行cramer分解,得到yi=μi+εi,其中μi为确定性影响,εi随机不确定性干扰,则可以得到εi=yi-μi序列e。

计算向量w和e的相关性

当相关系统γ接近0时表示时序yi对异常没有相关性,当接近1时表示,该指标对异常有强相关性,应该纳入核心高敏的预警指标集。通常的设定为0.5以下为弱相关,0.8以上为强相关(可以根据实际场景进行调整)。

anomalymodelprocess(异常模型处理)。

根据olu模块针对t期间内的事件信息,计算出每个系统的可用率指标关联对应系统下的所有指标集合,其中t期间较长。

由于时序指标经过了cramer分解,变成yi=μi+εi,其中μi为确定性影响指标,由历史数据的均值或者中位数方式进行计算生成,εi为不确定影响,是确定指标合理阈值区间的关键。

标准差是样本与其均值偏离查平方的算术平均数的平方根,则其计算公式为指标值数据服从正态分布yi~n(μ,δ2),转化为标准正态分布n(0,1),则其累计分布函数:

整理可得:

则其正态分位函数为则可以得到对应的概率的值的阈值区间。正态分布概率密度曲线示意图如图3所示。

对于指标yi的εi可以得到以及则对应指标yi的正常阈值区间为

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的装置。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的装置。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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