CN111669281B - 告警分析方法、装置、设备及存储介质 - Google Patents
告警分析方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111669281B CN111669281B CN201910175478.0A CN201910175478A CN111669281B CN 111669281 B CN111669281 B CN 111669281B CN 201910175478 A CN201910175478 A CN 201910175478A CN 111669281 B CN111669281 B CN 111669281B
- Authority
- CN
- China
- Prior art keywords
- alarm
- time window
- length
- alarms
- sample
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
- H04L41/064—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis involving time analysis
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种告警分析方法、装置、设备及存储介质,属于网络技术领域。本申请提供了一种在告警分析的过程中,动态地调整时间窗的长度的方法。通过挖掘出告警的特征与时间窗的长度之间的对应关系,根据当前时间窗内告警的特征,获取预测时间窗的长度,利用预测时间窗的长度,来调整时间窗的当前长度,可以提高告警分析的灵活性。随着现网的实际情况不断变化,告警的特征随之变化,那么预测时间窗的长度可以随之变化,使得时间窗调整的幅度可以随着现网情况相应变化,提高告警分析方法的适应性,保证告警分析过程可以应对现网复杂多变的情况。
Description
技术领域
本申请涉及网络技术领域,特别涉及一种告警分析方法、装置、设备及存储介质。
背景技术
告警是指网络设备在检测到异常事件时生成的通知消息。随着网络规模的不断扩大以及网络架构的日益复杂,网络设备每天上报的告警数量***式增长,需要分析这些告警,以便根据分析结果诊断故障并修复故障。
目前,计算机设备会根据固定长度的时间窗,执行告警分析。具体来说,用户会预先设置时间窗的长度,时间窗的长度在设置后通常不可更改。在告警分析的过程中,计算机设备会根据当前时间点以及时间窗的长度,确定时间窗。根据每个告警的发生时间点,获取时间窗内的告警,根据这些告警执行告警分析。在此过程中,计算机设备会缓存位于时间窗外的告警,以便下一次执行告警分析时使用。随着时间的推移,当时间经过时间窗的长度时,计算机设备会重新执行确定时间窗、获取告警、执行告警分析等步骤,以此类推。
采用上述方法分析告警时,如果预先设置的时间窗的长度过小,当网络中告警的频率升高时,每次根据时间窗执行告警分析时就需要处理大量的告警,影响分析性能;如果预先设置的时间窗的长度就会过大,当网络中告警的频率降低时,根据时间窗执行告警分析时等待的时间就会过长,影响分析效率。由此可见,根据固定长度的时间窗执行告警分析会导致灵活性较差,难以应对网络复杂多变的情况。
发明内容
本申请实施例提供了一种告警分析方法、装置、设备及存储介质,能够解决相关技术中根据固定长度的时间窗执行告警分析而导致灵活性较差的技术问题。所述技术方案如下:
第一方面,提供了一种告警分析方法,所述方法包括:
获取第一时间窗内告警的特征;根据所述告警的特征,获取预测时间窗的长度;根据所述预测时间窗的长度,调整所述第一时间窗的长度,得到第二时间窗;对所述第二时间窗内的告警进行分析。
本实施例提供了一种在告警分析的过程中,动态地调整时间窗的长度的方法。通过挖掘出告警的特征与时间窗的长度之间的关系,根据当前时间窗内告警的特征,获取预测时间窗的长度,利用预测时间窗的长度,来调整时间窗的当前长度,可以提高告警分析的灵活性。随着现网的实际情况不断变化,告警的特征随之变化,那么预测时间窗的长度可以随之变化,使得时间窗调整的幅度可以随着现网情况相应变化,提高告警分析方法的适应性,保证告警分析过程可以应对现网复杂多变的情况。
可选地,所述根据所述告警的特征,获取预测时间窗的长度,包括:将所述告警的特征输入预测模型,输出所述预测时间窗的长度,所述预测模型用于根据告警的特征对时间窗的长度进行预测。
通过这种实现方式,达到的效果至少可以包括:通过预测模型,可以挖掘出告警的特征与预测时间窗的长度之间的关系。因此在告警分析过程中,利用该预测模型,能够根据现网中告警的特征,自动化地、准确地预测出预测时间窗的长度,使得预测的时间窗的长度与告警的特征匹配。在告警分析过程中,预测模型能够针对现网告警的实际情况,动态地提供时间窗的长度,从而提高时间窗长度的自适应能力。
可选地,所述将所述告警的特征输入预测模型,输出所述预测时间窗的长度之前,所述方法还包括:获取样本告警的特征以及所述样本告警的标签,所述标签表示目标时间窗的长度,所述目标时间窗包括所述样本告警中的根因告警以及所述根因告警对应的每个衍生告警;根据所述样本告警的特征以及所述样本告警的标签,训练得到所述预测模型。
通过这种实现方式,达到的效果至少可以包括:通过在模型训练阶段,根据样本告警的特征以及样本告警的标签训练得到预测模型,由于样本告警的标签表示目标时间窗的长度,因此预测模型能够通过大量的样本,学习到告警的特征与目标时间窗的长度之间的对应关系。那么,在告警分析的过程中,预测模型根据告警的特征所输出的预测时间窗的长度,会逼近于目标时间窗的长度,因此预测时间窗会尽可能地包含告警中的根因告警及其全部衍生告警,那么根据预测时间窗的长度进行调整后,调整后的时间窗包括根因告警及其全部衍生告警的概率也会很高,所以能显著降低了根因告警及其对应的衍生告警被分割在不同时间窗的概率,可以保证根据第二时间窗获取告警时,可以尽可能地获取到根因告警及其全部衍生告警,通过根据根因告警及其全部衍生告警进行分析,提高了告警分析的准确性。
可选地,所述预测模型包括神经网络模型、随机森林模型、逻辑回归模型以及岭回归模型中的至少一项;所述神经网络模型中输入层的节点用于接收输入的告警的特征,所述神经网络模型中输出层的节点用于输出预测时间窗的长度;所述随机森林模型中决策树的根节点用于接收输入的告警的特征,所述决策树的叶子节点用于输出预测时间窗的长度;所述逻辑回归模型的自变量为告警的特征,所述逻辑回归模型的因变量为预测时间窗的长度;所述岭回归模型的自变量为告警的特征,所述岭回归模型的因变量为预测时间窗的长度。
通过这种实现方式,达到的效果至少可以包括:提供了通过各种机器学习模型来预测时间窗长度的方式,可以根据实际需求来选择预测时间窗长度所使用的机器学习模型,提高了灵活性。
可选地,所述告警的特征包括所述告警的名称、所述告警的级别、所述告警的事件类型、所述告警的发生时间点以及在所述发生时间点发生的告警数量中的至少一项。
通过这种实现方式,达到的效果至少可以包括:告警通常包含大量信息,如果使用告警的所有信息预测预测时间窗的长度,会导致运算量过大,以致影响到运算效率以及运算速度,并且由于无效信息和噪声信息的干扰,会影响运算的准确性。而通过提取告警的名称、告警的级别、告警的事件类型、告警的发生时间点以及在发生时间点发生的告警数量这几种关键信息作为告警的特征,可以减少运算量,从而提高运算效率,加快运算速度。并且屏蔽了无效信息的干扰,使得后续步骤中,可以更快更准地通过告警的特征预测出预测时间窗的长度,提高运算速度以及运算准确性。
可选地,所述根据所述预测时间窗的长度,调整所述第一时间窗的长度,包括:当所述预测时间窗的长度与所述第一时间窗的长度之间的差值在预设误差范围之外,根据所述预测时间窗的长度,调整所述第一时间窗的长度。
可选地,所述当所述预测时间窗的长度与所述第一时间窗的长度之间的差值在预设误差范围之外,根据所述预测时间窗的长度,调整所述第一时间窗的长度,包括下述任意一项:对所述预测时间窗的长度与所述第一时间窗的长度之间的第一差值与第一误差阈值进行比较,当所述第一差值大于第一误差阈值时,扩大所述第一时间窗的长度,所述第一差值的被减数为所述预测时间窗的长度,所述第一差值的减数为所述第一时间窗的长度;对所述预测时间窗的长度与所述第一时间窗的长度之间的第二差值与第二误差阈值进行比较,当所述第二差值大于第二误差阈值时,缩小所述第一时间窗的长度,所述第二差值的被减数为所述第一时间窗的长度,所述第二差值的减数为所述预测时间窗的长度。
通过这种实现方式,达到的效果至少可以包括:一方面,可以在第一时间窗的长度过小时扩大第一时间窗的长度,也可以在第一时间窗的长度过大时缩小第一时间窗的长度,从而达到灵活调整的效果。另一方面,可以通过误差阈值,可以容许时间窗的当前长度具有一定程度的误差,接受当前的时间窗内出现一些划分错误的告警数量的情况,实现时间窗长度的预测准确性以及预测效率之间的平衡,避免每次预测的时间窗内都出现根因告警以及根因告警对应的衍生告警分离的情况,也就避免每次预测失误所带来的无止境的循环,保障时间窗长度预测过程的收敛性,提高时间窗长度预测过程的性能,增强时间窗提取的鲁棒性。再一方面,运维人员可以自定义地设置该误差阈值,从而自定义地控制容许时间窗内划分错误的告警数量,提高了灵活性。
可选地,所述根据所述预测时间窗的长度,调整所述第一时间窗的长度,得到第二时间窗,包括:根据所述预测时间窗的长度以及所述告警的相对时长,获取目标长度,所述相对时长表示所述告警在所述第一时间窗中的位置;将所述第一时间窗的长度调整至所述目标长度,得到所述第二时间窗。
可选地,所述相对时长为所述告警的发生时间点与所述第一时间窗的起始时间点之间的差。
可选地,所述根据所述预测时间窗的长度以及所述告警的相对时长,获取目标长度,包括下述任意一项:获取所述预测时间窗的长度以及所述告警的相对时长之间的和,作为所述目标长度;当所述告警的数量为多个时,对于多个告警中的每个告警,获取所述告警对应的预测时间窗的长度以及所述告警的相对时长之间的和,得到多个和,获取所述多个和中的最大值,作为所述目标长度。
第二方面,提供了一种告警分析装置,所述装置包括:用于执行上述告警分析方法。具体地,该告警分析装置包括用于执行上述第一方面或第一方面的任一种可选方式所述的告警分析方法的功能模块。
第三方面,提供一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现上述第一方面或第一方面的任一种可选方式所述的告警分析方法。
第四方面,提供一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由所述处理器加载并执行以实现上述第一方面或第一方面的任一种可选方式所述的告警分析方法。
第五方面,提供了一种包含指令的计算机程序产品,当其在计算机设备上运行时,使得该计算机设备能够实现上述第一方面或第一方面的任一种可选方式所述的告警分析方法。
第六方面,提供了一种芯片,所述芯片包括处理器和/或程序指令,当所述芯片运行时,实现上述第一方面或第一方面的任一种可选方式所述的告警分析方法。
附图说明
图1是本申请实施例提供的一种实施环境的架构图;
图2是本申请实施例提供的一种计算机设备的结构示意图;
图3是本申请实施例提供的一种计算机设备集群的***架构图;
图4是本申请实施例提供的另一种计算机设备集群的***架构图;
图5是本申请实施例提供的一种预测模型训练方法的流程图;
图6是本申请实施例提供的一种标注样本告警的标签的示意图;
图7是本申请实施例提供的一种神经网络模型的结构示意图;
图8是本申请实施例提供的一种告警分析方法的流程图;
图9是本申请实施例提供的一种告警分析方法的流程图;
图10是本申请实施例提供的一种告警分析方法的逻辑架构图;
图11是本申请实施例提供的一种时间窗提取服务的逻辑架构图;
图12是本申请实施例提供的一种告警分析装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请实施例提供的一种实施环境的架构图,该实施环境包括计算机设备101以及至少一个网络设备102,计算机设备101以及至少一个网络设备102可以通过网络连接。
计算机设备101可以用于执行下述图8所示的告警分析方法以及下述图5所示的预测模型训练方法中的至少一项。计算机设备101可以为具有处理资源以及存储资源的实体。在一种可能的实现中,计算机设备101可以是物理设备,计算机设备101的结构可以参见下述图2实施例。在另一种可能的实现中,计算机设备101可以是虚拟化设备。例如,计算机设备101可以为弹性云服务器、虚拟机、容器、应用、服务、微服务、模块等。本实施例对计算机设备101的形态不做限定。计算机设备101可以位于本地,也可以部署在云环境、边缘环境、终端环境或其他运行环境中,本实施例对计算机设备101的运行环境不做限定。
网络设备102可以部署在运营商、企业网络、园区网络、边缘网络、终端环境或其他环境中,本实施例对网络设备102的运行环境不做限定。如果网络设备102出现故障,网络设备会生成告警,将告警发送至计算机设备。网络设备102可以为服务器、交换机、路由器、中继、网桥、防火墙、移动终端、个人电脑、笔记本电脑、服务网关(英文全称:serving-gateway,英文简称:SGW)、分组数据网网关(英文全称:packet data network gateway,英文简称:PGW)、光网络终端(英文全称:optical network terminal,英文简称:ONT)、光网络单元(英文全称:optical network unit,英文简称:ONU)、分光器或物联网终端等,本实施例对网络设备102的具体形态不做限定。
图2是本申请实施例提供的一种计算机设备的结构示意图,该计算机设备200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(英文全称:central processing units,英文简称:CPU)201和一个或多个易失性或非易失性存储器202,其中,该一个或多个易失性或非易失性存储器202中存储有至少一条指令,该至少一条指令由该一个或一个以上处理器201加载并执行以实现下述各个方法实施例提供的告警分析方法以及预测模型训练方法中的至少一项。当然,该计算机设备200还可以具有有线或无线网络接口以及输入输出接口等部件,以便进行输入输出,该计算机设备200还可以包括其他用于实现设备功能的部件,在此不做赘述。该计算机设备200上运行的操作***可以是LinuX操作***,当然也可以是Windows操作***等,本实施例对该计算机设备的操作***不做限定。
图3是本申请实施例提供的一种计算机设备集群的***架构图,该计算机设备集群包括至少一个计算机设备200,每个计算机设备200的结构请参见图2实施例,在此不做赘述。
该计算机设备集群可以用于执行下述图5所示的预测模型训练方法以及下述图8所示的告警分析方法中的至少一项。具体来说,图3中的每个计算机设备200可以执行告警分析方法中的任一个或多个步骤,图3中不同计算机设备200可以执行下述告警分析方法中不同的步骤。举例来说,图3中某一个计算机设备200可以执行下述步骤801,图3中另一个计算机设备200可以执行下述步骤802,图3中再一个计算机设备200可以执行下述步骤803。图3中的每个计算机设备200可以执行下述预测模型训练方法中的任一个或多个步骤,图3中不同计算机设备200可以执行下述预测模型训练方法中不同的步骤。举例来说,图3中某一个计算机设备200可以执行下述步骤501,图3中另一个计算机设备200可以执行下述步骤502,图3中再一个计算机设备200可以执行下述步骤503。
图4是本申请实施例提供的另一种计算机设备集群的***架构图,该计算机设备集群包括云计算服务以及至少一个计算机设备200。图4中云计算服务可以通过云端的服务器集群实现,举例来说,可以通过租用云计算服务商提供的一台或多台虚拟服务器实现。该云计算服务可以通过虚拟化技术扩展运算的计算能力,以实现共享软、硬件资源和信息,按需提供给云计算服务中的各个节点设备,使得每个节点设备发挥最大的效能。图4中每个计算机设备200的结构还请参见图2实施例,在此不做赘述。
图4中的云计算服务可以执行告警分析方法中的任一个或多个步骤,图4中每个计算机设备200也可以执行告警分析方法的任一个或多个步骤。在告警分析的过程中,云计算服务以及计算机设备200执行的步骤可以不同或相同。举例来说,图4中云计算服务可以执行下述步骤801和步骤804,图4中某一个计算机设备200执行下述步骤802,图4中另一个计算机设备200执行下述步骤803。
图4中的云计算服务可以执行预测模型训练方法中的任一个或多个步骤,图4中每个计算机设备200也可以执行预测模型训练方法的任一个或多个步骤。在预测模型训练的过程中,云计算服务以及计算机设备200执行的步骤可以不同或相同。举例来说,图4中云计算服务可以执行下述步骤506,图4中某一个计算机设备200可以执行下述步骤501,图4中另一个计算机设备200可以执行下述步骤502、503、504和步骤505。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由处理器执行以完成下述实施例中的告警分析方法以及预测模型训练方法中的至少一项。例如,计算机可读存储介质可以是只读存储器(英文:read-only memory,简称:ROM)、随机存取存储器(英文:random access memory,简称:RAM)、只读光盘(英文:compact disc read-only memory,简称:CD-ROM)、磁带、软盘和光数据存储设备等。
图5是本申请实施例提供的一种预测模型训练方法的流程图,如图5所示,该方法包括由计算机设备执行的步骤501至507:
501、计算机设备获取样本告警。
样本告警可以预先存储在数据库中,计算机设备可以从告警库中读取样本告警。可选地,样本告警可以是历史告警。相应地,获取样本告警的方式可以包括:计算机设备根据样本告警的发生时间点以及历史时间段,读取发生时间点位于该历史时间段的历史告警,将该历史告警作为样本告警。其中,该历史时间段的结束时间点可以是当前时间点,历史时间段的长度可以根据需求设置,例如,历史时间段可以是过去一周,过去3天等。
关于获取样本告警的时机,计算机设备可以接收训练指令,根据训练指令,触发获取样本告警以及后续步骤。其中,该训练指令可以由运维人员的输入操作触发,例如可以由前台界面触发或后台指令触发。
可选地,计算机设备可以对样本告警按照发生时间点从早到晚的顺序进行排序,得到依次排列的样本告警,以便根据依次排列的样本告警执行后续步骤。
502、计算机设备根据分类指令,将同一故障引起的样本告警划分至同一个类。
分类指令用于指示样本告警的类,分类指令可以根据运维人员的输入操作触发。其中,类(英文:situation)包括同一故障引起的样本告警,不同类对应的故障不同。样本告警所属的类可以根据样本告警的名称、样本告警的级别、样本告警的事件类型、样本告警的发生时间点、网元拓扑距离中的一项或多项确定。
503、计算机设备根据第一标注指令,在类中标注根因告警、衍生告警以及根因告警与衍生告警之间的对应关系。
第一标注指令包括根因告警的标识、衍生告警的标识以及根因告警与衍生告警之间的对应关系。第一标注指令可以根据运维人员的输入操作触发。
根因告警(英文全称:root cause alarm)指引起其他告警的告警。衍生告警(英文全称:derived alarm)是指由根因告警引起的告警。根因告警和衍生告警之间存在因果关系,根因告警是原因,衍生告警是结果。举例来说,对于告警A、告警B和告警C来说,如果告警A引起了告警B和告警B,则称告警A是根因告警,告警B和告警C均是告警A对应的衍生告警。一个根因告警可以对应一个或多个衍生告警。在一个示例性场景中,假设前端服务A要调用中间层服务B,中间层服务B要调用中间层服务C,中间层服务C要调用后端服务D。当后端服务D产生故障导致时延较大时,后端服务D生成告警1;由于中间层服务C超时未得到后端服务D的响应,导致中间层服务C时延大,则中间层服务C生成告警2;由于中间层服务B超时未得到中间层服务C的响应,导致中间层服务B时延大,则中间层服务B生成告警3;由于前端服务A超时未得到中间层服务B的响应,会导致前端服务A时延大,则前端服务A生成告警4;在这个场景中,现网中生成了告警1、告警2、告警3以及告警4。告警1是根因告警,告警2、告警3以及告警4均是告警1对应的衍生告警。
其中,根因告警、衍生告警以及根因告警与衍生告警之间的对应关系可以根据告警的业务特征确定,该业务特征可以包括告警的特征包括告警的名称、告警的级别、告警的事件类型、告警的发生时间点以及在该发生时间点发生的告警数量中的至少一项。
示例性地,参见图6,可以在类1中标注根因告警1、衍生告警1-1,并标注根因告警1以及衍生告警1-1之间的对应关系。同理地,在类1中标注根因告警2、衍生告警2-1、衍生告警2-2,并标注根因告警2与衍生告警2-1以及衍生告警2-2之间的对应关系;同理地,在类1中标注根因告警3、衍生告警3-1、衍生告警3-2、衍生告警3-3,并标注根因告警3与衍生告警3-1、衍生告警3-2、衍生告警3-3之间的对应关系;可以在类2中标注根因告警4、衍生告警4-1,并标注根因告警4以及衍生告警4-1之间的对应关系。同理地,在类2中标注根因告警5、衍生告警5-1、衍生告警5-2,并标注根因告警5与衍生告警5-1以及衍生告警5-2之间的对应关系。其中,黑色实心圆表示根因告警1,空心圆表示衍生告警,黑色实心圆与空心圆之间的连线表示衍生告警与衍生告警之间的对应关系。
504、计算机设备根据第二标注指令,标注目标时间窗。
目标时间窗包括样本告警中的根因告警以及根因告警对应的每个衍生告警。如果样本告警中的根因告警对应了N个衍生告警,则目标时间窗可以包括根因告警以及N个衍生告警,N为正整数。
目标时间窗的起始时间点可以是根因告警的发生时间点。目标时间窗的结束时间点可以是根因告警对应的最后一个衍生告警的发生时间点。目标时间窗的长度可以是根因告警对应的最后一个衍生告警的发生时间点与根因告警的发生时间点之间的差。其中,根因告警对应的最后一个衍生告警是指根因告警对应的所有衍生告警中发生时间点最晚的衍生告警。
例如,样本告警包括根因告警1、根因告警1对应的衍生告警1-1、根因告警1对应的衍生告警1-2以及根因告警1对应的衍生告警1-3,18:00发生了根因告警1,18:03发生了衍生告警1-1,18:05发生了衍生告警1-2,18:10发生了衍生告警1-3,则根因告警1对应的最后一个衍生告警为衍生告警1-3。目标时间窗的起始时间点可以是根因告警1的发生时间点18:00,目标时间窗的结束时间点可以是衍生告警1-3的发生时间点18:10。目标时间窗的长度可以是18:10与18:00之间的差,即10分钟。
第二标注指令用于指示目标时间窗,第二标注指令可以包括样本告警所属的目标时间窗的标识。第二标注指令可以根据运维人员的输入操作触发。例如,对于样本告警中的根因告警来说,运维人员可以根据上述步骤503中标注了的根因告警、衍生告警以及根因告警与衍生告警之间的对应关系,为该根因告警构建恰好包含该根因告警以及该根因告警的全部衍生告警的时间窗,得到一个目标时间窗,根据该目标时间窗触发输入操作,以使计算机设备接收到第二标注指令。
举例来说,参见图6,当类1中标注了根因告警1、衍生告警1-1,并标注根因告警1以及衍生告警1-1之间的对应关系后,可以将根因告警1以及衍生告警1-1划分为目标时间窗1,触发第二标注指令,则计算机设备根据第二标注指令,会标注目标时间窗1包括根因告警1、衍生告警1-1。同理地,将根因告警2、衍生告警2-1以及衍生告警2-2划分为目标时间窗2,触发第二标注指令,则计算机设备根据第二标注指令,会标注目标时间窗2包括根因告警2、衍生告警2-1以及衍生告警2-2,依次类推。
505、计算机设备根据第三标注指令,标注样本告警的标签。
第三标注指令包括样本告警的标签,第三标注指令可以根据运维人员的输入操作触发。
标签表示目标时间窗的长度。在一种可能的实现中,标签可以包括根因告警对应的第一标签以及衍生告警对应的第二标签。第一标签和第二标签可以不同,第一标签为根因告警的发生时间点与根因告警对应的最后一个衍生告警的发生时间点的差。第二标签为预设数值。该预设数值可以是0,当然可以是其他很小的数值。第一标签和第二标签的数值单位可以是分钟。
举例来说,如果样本告警包括根因告警1、根因告警2以及根因告警3,假设18:00发生了根因告警1,18:03发生了根因告警1对应的衍生告警1-1,18:05发生了根因告警1对应的衍生告警1-2,18:10发生了根因告警1对应的衍生告警1-3;18:03发生了根因告警2,18:12发生了根因告警2对应的衍生告警2-1,18:20发生了根因告警2对应的衍生告警2-2;18:20发生了根因告警3,18:25发生了根因告警3对应的衍生告警3-1,18:30发生了根因告警3对应的衍生告警3-2。
在此场景中,对于根因告警1、衍生告警1-1、衍生告警1-2以及衍生告警1-3来说,这四个样本告警对应的目标时间窗的长度可以是18:10与18:00之间的差,即10分钟,则根因告警1的标签可以是10分钟,衍生告警1-1、衍生告警1-2以及衍生告警1-3的标签可以是0。对于根因告警2、衍生告警2-1以及衍生告警2-2来说,这三个样本告警对应的目标时间窗的长度可以是18:20与18:03之间的差,即17分钟,则根因告警2的标签可以是17分钟,衍生告警2-1以及衍生告警2-2的标签可以是0。对于根因告警3、衍生告警3-1以及衍生告警3-2来说,这三个样本告警对应的目标时间窗的长度可以是18:30与18:20之间的差,即10分钟,则根因告警3的标签可以是10分钟,衍生告警3-1以及衍生告警3-2的标签可以是0。
举例来说,参见图6,在类1中标注了目标时间窗1后,可以获取根因告警1的发生时间点与衍生告警1-1的发生时间点之间的差,假设差为1分钟,则触发第三标注指令,第三标注指令包括根因告警1的标签为1,衍生告警1-1的标签为0,则计算机设备根据第三标注指令,会标注根因告警1的标签为1,并标注衍生告警1-1的标签为0。其中,图6中L表示标签,例如L=1的意思是标签是1。同理地,可以获取根因告警2的发生时间点与衍生告警2-2的发生时间点之间的差,假设差为2分钟,则触发第三标注指令,第三标注指令包括根因告警2的标签为2,衍生告警2-1的标签为0,衍生告警2-2的标签为0,则计算机设备根据第三标注指令,会标注根因告警2的标签为2,并标注衍生告警2-1的标签为0,并标注衍生告警2-2的标签为0,依次类推。
通过为根因告警和衍生告警标注不同的标签,达到的效果至少可以包括:根因告警和衍生告警可以通过不同的标签区分开来,从而帮助预测模型学习到样本告警中根因告警和衍生告警的区别,避免预测模型混淆根因告警和衍生告警,例如错误地将某一根因告警对应的衍生告警判定为其他衍生告警对应的根因告警,从而提高预测模型的精确性。
在一种可能的实现中,当标注样本告警的标签后,可以将具有标签的样本告警存入本地文件,以便在需要训练模型时,从本地文件中读取具有标签的样本告警。
506、计算机设备获取样本告警的特征以及样本告警的标签。
该样本告警的特征可以包括样本告警的名称、样本告警的级别、样本告警的事件类型、样本告警的发生时间点以及在该发生时间点发生的样本告警数量中的至少一项。在一种可能的实现中,如果样本告警的特征的形式是文本形式,可以对文本形式的特征进行编码,得到数字形式的特征。
样本告警的特征可以包括样本告警的名称、样本告警的级别、样本告警的事件类型、样本告警的发生时间点以及在发生时间点发生的告警数量中的至少一项。
样本告警的名称可以描述发生样本告警的现象。样本告警的名称可以是样本告警的身份标识号(英文全称:identification,英文缩写:ID)、编号等。可选地,样本告警的名称可以是样本告警对应的样本告警源的标识。该样本告警源的标识可以包括样本告警源的ID、网络之间互连协议(英文全称:Internet Protocol,英文缩写:IP)地址、名称、编号、序列号等。
样本告警的事件类型可以指示引发样本告警的故障的类型。以样本告警的样本告警源为磁盘为例,样本告警的事件类型可以包括磁盘坏道、元数据丢失、读写速度过慢等。以样本告警的样本告警源为路由器为例,样本告警的事件类型可以包括端口故障、链路断开、网卡故障等。以样本告警的样本告警源为传感器为例,样本告警的事件类型可以包括温度过高、湿度过高、检测到烟雾等。以样本告警的样本告警源为服务器为例,样本告警的事件类型可以包括负载过大、流量过大、业务处理失败等。当然,上述样本告警的事件类型仅是举例说明,具体的样本告警的事件类型可以根据样本告警源的产品形态确定,本实施例对此不做限定。
需要说明的一点是,样本告警的事件类型可以通过编号、名称或者其他标识来表示,每个事件类型和每个标识一一对应。比如说,可以使用标识1来表示磁盘坏道,使用标识2来表示元数据丢失,使用标识3来表示读写速度过慢,依次类推。
样本告警的级别可以指示样本告警影响的时间以及范围。样本告警的级别越高,表示样本告警影响的时间越长,样本告警影响的范围越广。通常来讲,根因告警影响的时间较长,根因告警影响的范围较广。
样本告警的发生时间点是指设备上报样本告警的时间点。样本告警的发生时间点可以描述发生样本告警的时间顺序。通常来说,对于根因告警以及根因告警对应的衍生告警来说,根因告警的发生时间点在前,衍生告警的发生时间点在后。样本告警的发生时间点可以使用时间戳表示。
在发生时间点发生的告警数量描述当设备上报样本告警时,网络中上报的样本告警的总数量,其中这些告警的发生时间点相同,例如这些告警中的时间戳相同。例如,假设某一个样本告警的发生时间点为18:00,该样本告警对应的在发生时间点发生的告警数量可以是网络在18:00上报的样本告警的总数量。
通过使用上述信息作为样本告警的特征,达到的效果至少可以包括:样本告警通常包含大量信息,如果使用样本告警的所有信息预测预测时间窗的长度,会导致运算量过大,以致影响到运算效率以及运算速度,并且由于无效信息和噪声信息的干扰,会影响运算的准确性。而通过提取样本告警的名称、样本告警的级别、样本告警的事件类型、样本告警的发生时间点以及在发生时间点发生的告警数量这几种关键信息作为样本告警的特征,可以减少运算量,从而提高运算效率,加快运算速度。并且屏蔽了无效信息的干扰,使得后续步骤中,可以更快更准地通过样本告警的特征预测出预测时间窗的长度,提高运算速度以及运算准确性。
需要说明的一点是,样本告警的名称、样本告警的级别、样本告警的事件类型、样本告警的发生时间点以及在发生时间点发生的告警数量仅是对样本告警的特征进行举例描述,也可以将样本告警的其他信息作为样本告警的特征,进而使用样本告警的其他信息来预测预测时间窗的长度。
在一种可能的实现中,可以接收维度设置指令,可以根据该维度设置指令,确定样本告警的特征的维度,从样本告警的信息中选择该维度对应的信息,作为样本告警的特征。其中,维度设置指令用于指示使用的样本告警的特征的维度,该维度设置指令可以由用户的输入操作触发。
通过这种实现方式,达到的效果至少可以包括:可以支持特征扩展的功能,能够动态地修改预测时间窗长度过程中使用的特征的维度,令用户可以根据需求,自定义地选择采用哪种特征来预测预测时间窗的长度,提高了灵活性。
在一种可能的实现中,如果样本告警的特征的形式是文本形式,可以对文本形式的特征进行编码,得到数字形式的特征。关于对特征进行编码的方式,可以采用一位有效编码(英文:one hot encoding)方式,对文本形式的特征进行编码,得到的数字形式的特征可以由0和1组成。当然,一位有效编码仅是对编码方式的示例性描述,也可以采用一位有效编码以外的其他方式进行编码,例如采用证据权重(英文全称:weight of evidence,英文简称:WOE)编码方式进行编码,本实施例对编码方式不做具体限定。
在一种可能的实现中,样本告警的特征的形式可以是向量。向量的每个位和特征的每个维度一一对应,每个位的取值表示对应维度的特征的取值。举例来说,样本告警的特征的形式可以是(X1,X2,X3,X4,X5),X1表示样本告警的名称,X2表示样本告警的级别,X3表示样本告警的级别,X4表示样本告警的事件类型,X5表示在发生时间点发生的样本告警数量。如果样本告警的数量为多个,样本告警的特征的形式可以是矩阵,矩阵的每一行对应一个样本告警,矩阵的每一列对应特征的一个维度,矩阵的每个元素为一个特征在一个维度的取值。
以样本告警的特征包括X个维度为例,样本告警的特征的形式可以如下所示。其中,n表示样本告警的数量,(Xi1,Xi2,Xi3,Xi4,Xi5)为样本告警i的特征,Xi1为样本告警i的第1个维度的特征,Xi2为样本告警i的第2个维度的特征,Xi3为样本告警i的第3个维度的特征,其中i是正整数。
507、计算机设备根据样本告警的特征以及样本告警的标签,训练得到预测模型。
样本告警的标签的形式可以如下所示。
其中,Y表示样本告警的标签,n表示样本告警的数量,i表示样本告警的标识。例如,Yi为样本告警i的标签。
预测模型用于根据告警的特征对时间窗的长度进行预测。预测模型的输入参数可以是告警的特征,预测模型的输出参数可以是预测时间窗的长度。预测模型可以存储在模型库中,该计算机设备可以从模型库中加载该预测模型,其中,该模型库为用于存储预测模型的数据库。预测模型的形式可以是文件。本实施例对此不做限定。
预测模型可以是回归模型,当然也可以是分类模型。预测模型可以是机器学习模型。在一种可能的实现中,预测模型可以包括神经网络模型、随机森林模型、逻辑回归模型以及岭回归模型中的任一项或多项的结合,具体参见下述(1)至(4)。
(1)神经网络模型
神经网络模型包括输入层、一个或多个隐藏层以及输出层。以神经网络模型包括1个输入层、2个隐藏层以及1个输出层为例,神经网络模型的结构可以如图7所示。
输入层可以是神经网络模型中第一个层,输入层可以包括一个或多个节点,输入层的节点用于接收输入的告警的特征。输入层的节点可以对告警的特征进行运算,将运算结果输出至第一个隐藏层。
在一种可能的实现中,输入层的每个节点可以和告警的特征的每个维度一一对应,任一个节点可以用于接收告警的一个维度的特征。例如,输入层的节点1用于接收告警在维度1的特征,输入层的节点2用于接收告警在维度2的特征,输入层的节点i用于接收告警在维度i的特征,i为正整数。在一个示例性场景中,告警的特征可以包括5个维度,维度1为告警名称,维度2为告警的级别,维度3为告警的事件类型,维度4为告警的发生时间点,维度5为在发生时间点发生的告警数量。相应地,参见图7,输入层的节点1用于接收告警名称,输入层的节点2用于接收告警的级别,输入层的节点3用于接收告警的事件类型,输入层的节点4用于接收告警的发生时间点,输入层的节点5用于接收在发生时间点发生的告警数量。其中,输入层的节点的数量可以等于特征的维度的数量,如果告警的特征包括n个维度,则输入层包括n个节点,n为正整数,n大于或等于i。
隐藏层可以是输入层与输出层之间的层,隐藏层可以包括一个或多个节点,隐藏层的节点可以根据上一个层的运算结果进行运算,得到本层的运算结果,将本层的运算结果输出至下一个层。其中,第一个隐藏层的上一个层可以是输入层,最后一个隐藏层的下一个层可以是输出层。隐藏层的数量可以根据需求设置,本实施例对隐藏层的数量不做限定。例如,隐藏层的数量可以是2个。隐藏层的节点的数量可以根据需求设置,本实施例对隐藏层的节点的数量不做限定。例如,隐藏层的节点的数量可以是200个。
输出层可以是神经网络模型中的最后一个层。输出层可以包括一个或多个节点,输出层的节点可以用于对最后一个隐藏层的运算结果进行运算,得到预测时间窗的长度,输出层的节点可以用于输出预测时间窗的长度。
在一种可能的实现中,参见图7,神经网络模型可以是回归模型,回归模型的输出层可以包括一个节点,该节点可以运算出预测时间窗的长度。
在另一种可能的实现中,神经网络模型可以是分类模型,分类模型的输出层可以包括多个节点,输出层的每个节点可以对应一种长度,输出层的每个节点可以运算出预测时间窗的长度为节点对应的长度的概率。可以获取输出层的每个节点运算出的概率,得到多个概率。可以获取多个概率中最大的概率,确定运算出该最大的概率的输出层的节点,将该节点对应的长度作为预测时间窗的长度。举例来说,假设输出层包括节点1、节点2以及节点3,节点1可以对应3分钟,节点2可以对应10分钟,节点3可以对应20分钟。如果告警输入至神经网络模型后,节点1运算出预测时间窗的长度取3分钟的概率为0.1,节点2运算出预测时间窗的长度取10分钟的概率为0.6,节点3运算出预测时间窗的长度取20分钟的概率为0.3,可以确定这3个节点中节点2运算出的概率最大,因此可以将节点2对应的10分钟作为预测时间窗的长度。
(2)随机森林模型
随机森林模型可以包括一个或多个决策树。决策树可以包括根节点、一个或多个非叶子节点、一个或多个叶子节点。
决策树的根节点用于接收输入的告警的特征。根节点可以根据告警的特征进行判断,从根节点下的一个或多个分支中选择一个分支,将告警的特征输出至该分支对应的非叶子节点。
非叶子节点用于根据输入的告警的特征进行判断,从非叶子节点下的一个或多个分支中选择一个分支,将告警的特征输出至该分支对应的下一层非叶子节点,以此类推,将告警的特征输出至叶子节点。
决策树的叶子节点用于输出预测时间窗的长度。在一种可能的实现中,决策树的每个叶子节点可以对应一种长度。可以确定告警的特征到达的叶子节点,将该叶子节点对应的长度作为预测时间窗的长度,输出预测时间窗的长度。例如,叶子节点1可以对应5分钟,叶子节点2可以对应10分钟,叶子节点3对应15分钟,如果告警的特征最终到达了叶子节点3,可以确定预测时间窗的长度为15分钟。
(3)逻辑回归模型
逻辑回归模型的自变量为告警的特征,逻辑回归模型的因变量为预测时间窗的长度。逻辑回归模型可以包括一个或多个参数,该一个或多个参数用于拟合告警的特征与预测时间窗的长度之间的关系。其中,如果告警的特征包括多个维度,则逻辑回归模型可以包括多个自变量,每个自变量为告警的一个维度的特征。例如,如果告警的特征包括X个维度,逻辑回归模型的自变量可以包括X1、X2、X3、X4以及X5。
(4)岭回归模型
岭回归模型的自变量为告警的特征,岭回归模型的因变量为预测时间窗的长度。岭回归模型可以包括一个或多个参数,该一个或多个参数用于拟合告警的特征与预测时间窗的长度之间的关系。
关于模型训练的具体过程,在一种可能的实现中,可以为预测模型设置初始参数,可以将样本告警的特征以及样本告警的标签输入预测模型,输出预测时间窗的长度。可以获取样本告警的标签以及预测时间窗的长度之间的偏差,判断偏差是否小于预设阈值,当偏差大于预设阈值,则调整预测模型的初始参数。并再次执行将样本告警的特征以及样本告警的标签输入预测模型,输出预测时间窗的长度、获取偏差、调整初始参数的步骤,直至根据预测模型输出的预测时间窗的长度计算的偏差小于预设阈值,则预测模型训练完成。其中,该预设阈值可以根据实际需求确定,例如当要求预测模型的精度越高,则设置越低的预设阈值。在另一种可能的实现中,可以累计迭代次数,每当使用预测模型输出样本告警的预测时间窗的长度并调整预测模型的初始参数一次时,对迭代次数加一,当迭代次数达到预设次数时,预测模型训练完成。
在一种可能的实现中,模型训练的方式可以包括下述(1)至(4)中任一项或多项的结合:
(1)采用反向传播算法,根据样本告警的特征以及样本告警的标签进行训练,得到神经网络模型。
(2)采用随机森林训练算法,根据样本告警的特征以及样本告警的标签进行训练,得到随机森林模型。
(3)采用梯度下降算法,根据样本告警的特征以及样本告警的标签进行训练,得到逻辑回归模型。
(4)采用梯度下降算法,根据样本告警的特征以及样本告警的标签进行训练,得到岭回归模型。
在一种可能的实现中,当训练得到预测模型后,可以将预测模型存入模型库中。模型的形式可以是文件,相应地,模型库的存储介质可以是文件***。文件***包括而不限于本地文件***、hadoop分布式文件***(英文全称:hadoop distributed file system,英文简称:HDFS)、文件配置表(file allocation table,英文简称:FAT)32***、新技术文件***(英文全称:new technology file system,英文简称:NTFS)、延伸文件***(英文全称:extended file system,英文简称:E5T)3、E5T4***、扩展文件分配表***(英文全称:extended dile allocation table file system,英文简称:e5FAT)、弹性文件***(英文全称:resilient file system,英文简称:ReFS)、网络附属存储(英文全称:networkattached storage,英文简称:NAS)等。
本实施例提供的方法,通过使用样本告警的特征以及该样本告警的标签,训练得到该预测模型,可以让预测模型通过样本告警以及标签,挖掘出告警的特征与预测时间窗的长度之间的对应关系。在告警分析过程中,利用该预测模型,可以根据告警的特征动态地预测出预测时间窗的长度,使得时间窗长度与现网告警的特征匹配,从而提高时间窗长度的精确性。并且,能够针对现网告警的实际情况,动态地提供时间窗的长度,从而提高时间窗长度的自适应能力。
图8是本申请实施例提供的一种告警分析方法的流程图,如图8所示,该方法包括由计算机设备执行的步骤801至804:
801、计算机设备获取第一时间窗内告警的特征。
告警是指网络设备在检测到异常事件时生成的通知消息。生成告警的网络设备可以称为告警的告警源。告警可以包括根因告警、衍生告警中的至少一项。在一种可能的实现中,网络设备也可以在生成告警后,向计算机设备实时上报告警,计算机设备可以接收网络设备实时上报的告警,从而通过执行下述步骤,对实时上报的告警进行分析。在另一种可能的实现中,告警可以预先存储在数据库中,计算机设备可以从数据库中读取告警,从而对数据库中的告警进行分析。本实施例对获取告警的方式不做限定。
告警的特征的维度可以和上述步骤507中获取的样本告警的特征的维度相同。具体来说,告警的特征可以包括告警的名称、告警的级别、告警的事件类型、告警的发生时间点以及在发生时间点发生的告警数量中的至少一项。每种维度的告警的特征与该维度的样本告警的特征同理,具体请参见上述步骤507,在此不做赘述。
第一时间窗:是指长度调整前的时间窗,第一时间窗可以是当前时间窗。关于获取第一时间窗的方式,在一种可能的实现中,可以获取当前时间点以及第一时间窗的长度;获取当前时间点与第一时间窗的长度之间的和,作为第一时间窗的结束时间点;将当前时间点与第一时间窗的结束时间点组成的时间范围作为第一时间窗。其中,该和的单位是时间。例如,假设当前时间点为18:00,第一时间窗的长度为10分钟,则可以获取18:00与10分钟之间的和,得到18:10,则第一时间窗是18:00至18:10。
可选地,第一时间窗的长度可以是预设长度。该预设长度可以根据需求设置。在一种可能的实现中,该预设长度可以是时间窗的最小长度,例如可以为1分钟。通过将时间窗的最小长度作为预设长度,后续可以通过长度调整的步骤,扩大时间窗的长度。在另一种可能的实现中,预设长度可以是时间窗的最大长度。通过将时间窗的最大长度作为预设长度,后续可以通过长度调整的步骤,缩小时间窗的长度。
可选地,第一时间窗的长度也可以不是预设长度,而是经过一次或多次调整后得到的长度。在一种可能的实现中,如果第一次执行图8实施例提供的方法,可以将预设长度作为第一时间窗的长度,通过对预设长度进行调整,得到调整后的长度。如果第二次、第三次至第N次执行图8实施例提供的方法,可以将上一次调整得到的长度作为第一时间窗的长度。其中,N为大于1的正整数。
第一时间窗内的告警是指发生时间点处于第一时间窗的告警。具体地,第一时间窗内告警的发生时间点晚于或等于第一时间窗的起始时间点,且第一时间窗内告警的发生时间点早于或等于第一时间窗的结束时间点。第一时间窗内告警的数量可以是一个或多个。第一时间窗内告警的数量可以和网络中告警的上报频率正相关,告警的上报频率越高,则第一时间窗内告警的数量可以越多。另外,第一时间窗内告警的数量可以和第一时间窗的长度正相关,第一时间窗的长度越大,则第一时间窗内告警的数量可以越多。
在一种可能的实现中,获取第一时间窗内的告警的过程可以包括:从当前时间点开始,等待第一时间窗的长度,并缓存接收到的告警;当时间经过第一时间窗的长度时,获取已缓存的告警。例如,假设当前时间点为8:00,第一时间窗的长度为5分钟,可以从8:00开始,等待5分钟,并缓存接收到的告警;当时间经过5分钟时,可以获取到已缓存的、发生时间点处于8:00至8:05的告警,作为第一时间窗内的告警。
在一种可能的实现中,可以通过延迟队列,来获取第一时间窗内的告警。具体来说,可以将第一时间窗的长度作为延迟时长,根据延迟时长创建延迟队列;在告警分析的过程中,每当获取到一个告警,则将该告警存入延迟队列,当时间到达延迟时长时,从延迟队列读取告警。其中,该延迟队列为一种消息队列(英文全称:message queue,英文简称:MQ)。
在一种可能的实现中,在获取告警的特征之前,可以通过降噪规则,对告警进行降噪,从而筛选出有效的告警,而过滤掉无效的告警。其中,该无效的告警可以包括重复告警、闪断告警、震荡告警等。闪断告警(英文全称:intermittent link disconnection alarms)是指在网络断开至网络重新连接期间产生的告警,网络断开的时间点至网络重新连接的时间点之间的时间间隔小于预设时间间隔。震荡告警(英文全称:shock alarms)是指故障在短期内不断地发生和恢复而引起的告警。
在一种可能的实现中,如果告警的特征的形式是文本形式,可以对文本形式的特征进行编码,得到数字形式的特征。对告警的特征进行编码的方式与对样本告警的特征进行编码的方式相同,在此不做赘述。
802、计算机设备根据告警的特征,获取预测时间窗的长度。
预测时间窗的长度是指根据告警的特征预测出的时间窗长度。在一种可能的实现中,计算机设备可以加载预测模型,将告警的特征输入预测模型,输出预测时间窗的长度。其中,计算机设备可以从模型库中获取该预测模型,或者预先存储预测模型,本实施例对获取预测模型的方式不做限定。
在一种可能的实现中,如果第一时间窗内告警的数量为多个,计算机设备可以将多个告警的特征输入预测模型,输出向量。向量可以包括多个位,向量的位的数量可以等于告警的数量。向量的每个位和每个告警一一对应,对于向量的某一个位来说,位的取值为位对应的告警对应的预测时间窗的长度。具体地,向量的第i个位可以对应于告警i,告警i为一次预测过程中第i个输入至预测模型的告警,i为正整数。第i个位的取值为告警i对应的预测时间窗的长度。相应地,对于多个告警中的任一个告警,可以从向量的多个位中,确定告警对应的位,获取该位的取值,作为告警对应的预测时间窗的长度。
例如,如果第一时间窗内包括3个告警,记为告警1、告警2以及告警3,依次将告警1的特征、告警2的特征以及告警3的特征输入预测模型,输出向量为(8 5 3)。对于告警1来说,可以确定告警1对应的位是向量的第1个位,而向量的第1个位的取值为8,因此告警1对应的预测时间窗的长度是8分钟;对于告警2来说,可以确定告警2对应的位是向量的第2个位,向量的第2个位的取值为5,因此告警2对应的预测时间窗的长度是5分钟;对于告警3来说,可以确定告警3对应的位是向量的第3个位,向量的第3个位的取值为3,则告警3对应的预测时间窗的长度是3分钟。
其中,使用预测模型来获取预测时间窗的长度仅是示例,本实施例对获取预测时间窗的长度不做限定。例如,可以建立告警的特征与预测时间窗的长度之间的预设对应关系,根据告警的特征,从该预设对应关系中获取告警的特征对应的预测时间窗的长度。其中该预设对应关系可以包括至少一种告警的特征以及至少一种预测时间窗的长度,该预设对应关系可以预先存储在计算机设备中。
通过使用预测模型来获取预测时间窗的长度,至少可以达到以下效果:在告警分析的过程中,如果根因告警与衍生告警分离在不同的时间窗内,则无法根据时间窗获取到根因告警对应的全部衍生告警,同时,误将某一个根因告警对应的衍生告警识别为其他根因告警对应的衍生告警的概率很高,导致影响告警分析的准确性。例如,假设根因告警1对应衍生告警1-1、衍生告警1-2以及衍生告警1-3,如果时间窗长度过小,时间窗的结束时间点晚于根因告警1、衍生告警1-1、衍生告警1-2,而早于衍生告警1-3,则根据时间窗,只会获取根因告警1、衍生告警1-1、衍生告警1-2,而不会获取到衍生告警1-3,导致根据根因告警1、衍生告警1-1、衍生告警1-2进行分析时,由于遗漏了衍生告警1-3,导致准确性差。
而本实施例中,通过在模型训练阶段,根据样本告警的特征以及样本告警的标签训练得到预测模型,由于样本告警的标签表示目标时间窗的长度,因此预测模型能够通过大量的样本,学习到告警的特征与目标时间窗的长度之间的对应关系。那么,在告警分析的过程中,预测模型根据告警的特征所输出的预测时间窗的长度,会逼近于目标时间窗的长度,因此预测时间窗会尽可能地包含告警中的根因告警及其全部衍生告警,那么根据预测时间窗的长度进行调整后,调整后的时间窗包括根因告警及其全部衍生告警的概率也会很高,所以能显著降低了根因告警及其对应的衍生告警被分割在不同时间窗的概率,可以保证根据第二时间窗获取告警时,可以尽可能地获取到根因告警及其全部衍生告警,通过根据根因告警及其全部衍生告警进行分析,提高了告警分析的准确性。
803、计算机设备根据预测时间窗的长度,调整第一时间窗的长度,得到第二时间窗。
第二时间窗是指长度调整后的时间窗。第二时间窗的起始时间点可以晚于第一时间窗的起始时间点。在一种可能的实现中,可以当获取到预测时间窗的长度时,将当前时间点作为第二时间窗的起始时间点,从而在预测得到预测时间窗的长度时,就使用该长度来调整时间窗并执行告警分析,从而实现实时告警分析的功能。在另一种可能的实现中,可以接收告警分析指令,将接收到告警分析指令的时间点作为第二时间窗的起始时间点,从而在具有告警分析的需求时,再使用预测得到的长度来调整时间窗并执行告警分析,本实施例对第二时间窗的起始时间点不做限定。
可选地,调整第一时间窗的长度的过程可以包括下述步骤一至步骤二:
步骤一、根据该预测时间窗的长度以及该告警的相对时长,获取目标长度。
该相对时长用于表示该告警在该第一时间窗中的位置。在一种可能的实现中,该相对时长为该告警的发生时间点与该第一时间窗的起始时间点之间的差。例如,假设第一时间窗的起始时间点为18:00,告警的发生时间点为18:10,18:10与18:00之间的差为10分钟,则告警的相对时长为10分钟。又如,假设第一时间窗的起始时间点为19:30,告警的发生时间点为19:35,则19:35与19:30之间的差为5分钟,告警的相对时长为5分钟。
当然,这种相对时长的计算方式仅是举例,相对时长也可以采用其他算法计算,例如,在计算该告警的发生时间点与该第一时间窗的起始时间点之间的差之后,可以将差与一个或多个系数相加,将差与一个或多个系数相减,将差与一个或多个系数相乘,或者将差与一个或多个系数相除,将得到的差、差、积或者商作为预测时间窗的长度,又如,相对时长可以为告警的发生时间点与第一时间窗的结束时间点之间的差,本实施例对相对时长的算法不做限定。
目标长度是指第一时间窗的长度需要调整到的长度。关于获取目标长度的方式,可以包括下述实现方式一至实现方式二中的任意一项:
方式一、获取该预测时间窗的长度以及该告警的相对时长之间的和,作为该目标长度。
其中,和的单位是时间。举例来说,假设告警的相对时长为10分钟,预测时间窗的长度为20分钟,则可以获取10分钟与20分钟的和,得到30分钟,将30分钟作为目标长度。
方式二、当该告警的数量为多个时,对于多个告警中的每个告警,获取该告警对应的预测时间窗的长度以及该告警的相对时长之间的和,得到多个和,获取该多个和中的最大值,作为该目标长度。
在一个示例性场景中,如果第一时间窗为18:00至19:00,第一时间窗内的告警包括根因告警1、衍生告警1-1、衍生告警1-2、根因告警2、衍生告警2-1以及衍生告警2-2。根因告警1的发生时间点为18:00,则根因告警1对应的相对时长为0分钟。衍生告警1-1的发生时间点为18:10,则衍生告警1-1对应的相对时长为10分钟。衍生告警1-2的发生时间点为18:15,则衍生告警1-2对应的相对时长为15分钟;根因告警2的发生时间点为18:10,则根因告警2对应的相对时长为10分钟,衍生告警2-1的发生时间点为18:20,则衍生告警2-1对应的相对时长为20分钟,衍生告警2-2的发生时间点为18:40,则衍生告警2-2对应的相对时长为40分钟;获取到的预测时间窗的长度可以是15分钟以及30分钟。
在此场景下,对于根因告警1,可以获取15分钟(预测时间窗的长度)与0分钟(相对时长)的和,得到15分钟;对于衍生告警1-1,获取15分钟(预测时间窗的长度)与10分钟(相对时长)的和,得到25分钟;对于衍生告警1-2,获取15分钟(预测时间窗的长度)与15分钟(相对时长)的和,得到30分钟;对于根因告警2,可以获取30分钟(预测时间窗的长度)与10分钟(相对时长)的和,得到40分钟;对于衍生告警2-1,获取30分钟(预测时间窗的长度)与20分钟(相对时长)的和,得到80分钟;对于衍生告警2-2,获取30分钟(预测时间窗的长度)与40分钟(相对时长)的和,得到70分钟。因此可以获取15分钟、25分钟、30分钟、40分钟、80分钟、70分钟中的最大值为70分钟,则目标长度为70分钟。
步骤二、将该第一时间窗的长度调整至该目标长度,得到该第二时间窗。
第二时间窗的长度为该目标长度。第二时间窗的时间起始点可以和第一时间窗的起始点相同。例如,如果第一时间窗为18:00至18:10,第一时间窗的长度为10分钟,获取到目标长度为20分钟,将第一时间窗的长度从10分钟扩大至20分钟,则得到第二时间窗18:00至18:20。
可选地,可以设置预设误差范围,获取预测时间窗的长度与第一时间窗的长度之间的差值,对差值与预设误差范围进行比较,当该预测时间窗的长度与该第一时间窗的长度之间的差值在预设误差范围之外,则根据该预测时间窗的长度,调整该第一时间窗的长度。当该预测时间窗的长度与该第一时间窗的长度之间的差值在预设误差范围之内,可以对第一时间窗内的告警进行分析。
通过当预测时间窗的长度与该第一时间窗的长度之间的差值在预设误差范围之外,再调整时间窗的长度,可以容许时间窗的当前长度具有一定程度的误差,接受当前的时间窗内出现一些划分错误的告警数量的情况,实现时间窗长度的预测准确性以及预测效率之间的平衡,避免每次预测的时间窗内都出现根因告警以及根因告警对应的衍生告警分离的情况,也就避免每次预测失误所带来的无止境的循环,保障时间窗长度预测过程的收敛性,提高时间窗长度预测过程的性能,增强时间窗提取的鲁棒性。并且,运维人员可以自定义地设置该误差阈值,从而自定义地控制容许时间窗内划分错误的告警数量,提高了灵活性。
在一种可能的实现中,参见图9,上述步骤801至步骤803可以为迭代的过程,当对第一时间窗的长度调整一次后,可以继续执行上述步骤801至步骤803一次或多次,从而继续调整第一时间窗的长度,直到该预测时间窗的长度与该第一时间窗的长度之间的差值在预设误差范围之内时,输出目标长度,从而根据目标长度得到的第二时间窗执行下述步骤804。
通过这种方式,达到的效果至少可以包括:通过迭代的方式,可以不断找寻最优的、与现网情况匹配的时间窗长度,令时间窗的长度可以随着现网情况的动态变化而调整,提高了时间窗的长度的自适应性和灵活性。当告警上报频率降低时,能够生成较小的预测时间窗的长度,也就能够及时缩小时间窗的长度,从而有效地缩短故障分析的等待时间,提升故障处理效率,提高平均恢复时间(英文全称:mean time to restoration,英文简称:MTTR);当现网的告警上报频率较高时,能够生成较大的预测时间窗的长度,也就能够及时扩大时间窗的长度,在一定误差允许范围内,降低了根因告警及其衍生告警被划分到不同时间窗的概率,提高了告警分析的准确率。同时,生成的时间窗长度不会太大,也就避免了由于时间窗的长度过大而使用全量告警进行分析的情况,也就避免了使用全量告警进行分析所带来的较大的***开销,有效提高了告警分析的性能。
该预设误差范围可以根据误差阈值确定。具体来讲,使用预设误差范围进行调整的方式可以包括下述调整方式一至调整方式四中的任意一项:
调整方式一、可以获取预测时间窗的长度与第一时间窗的长度之间的第一差值,对该预测时间窗的长度与该第一时间窗的长度之间的第一差值与第一误差阈值进行比较,当第一差值大于第一误差阈值时,表明第一时间窗的长度相对于预测时间窗的长度来说过小,如果根据当前的第一时间窗进行告警分析会导致准确性过差,则计算机设备确定预测时间窗的长度与该第一时间窗的长度之间的差值在预设误差范围之外,可以扩大该第一时间窗的长度。当第一差值不大于第一误差阈值时,表明第一时间窗的长度的准确性属于可接受的程度,则计算机设备确定预测时间窗的长度与该第一时间窗的长度之间的差值在预设误差范围之内,可以直接对第一时间窗内的告警进行分析。当下一次执行上述步骤801至步骤803,并确定下一次获取到的第一差值大于第一误差阈值时,再扩大第一时间窗的长度。
第一误差阈值可以视为最大允许的误差。关于获取第一误差阈值的方式,在一种可能的实现中,计算机设备可以接收设置指令,根据该设置指令获取该第一误差阈值,该设置指令包括第一误差阈值。在另一种可能的实现中,第一误差阈值可以预先存储在计算机设备中,计算机设备可以读取预先存储的第一误差阈值,本实施例对获取第一误差阈值的方式不做限定。
调整方式一中的预设误差范围为第一差值不大于第一误差阈值。该第一差值是指以预测时间窗的长度为被减数,以第一时间窗的长度为减数,计算预测时间窗的长度减去第一时间窗的长度后得到的差值,也即是,该第一差值可以是预测时间窗的长度与第一时间窗的长度之间的差的绝对值,该预测时间窗的长度大于该第一时间窗的长度。
第一误差阈值的获取方式与第一误差阈值的获取方式同理,在此不做赘述。
例如,如果第一时间窗的长度为10分钟,预测时间窗的长度为20分钟,目标长度为15分钟,第二误差阈值为3分钟,则可以获取20分钟与10分钟之间的差,得到10分钟,该10分钟即为第一差值,可以对10分钟与3分钟进行比较,10分钟大于3分钟,因此可以将第一时间窗的长度从10分钟扩大至15分钟。
调整方式二、可以获取预测时间窗的长度与第一时间窗的长度之间的第二差值,可以对该预测时间窗的长度与该第一时间窗的长度之间的第二差值与第二误差阈值进行比较,当该第二差值大于第二误差阈值时,表明第一时间窗的长度相对于预测时间窗的长度来说过大,如果根据当前的第一时间窗进行告警分析会导致准确性过差,则计算机设备确定预测时间窗的长度与该第一时间窗的长度之间的差值在预设误差范围之外,可以缩小该第一时间窗的长度;当第二差值不大于第二误差阈值时,表明预测时间窗的长度的准确性属于可接受的程度,则计算机设备确定预测时间窗的长度与该第一时间窗的长度之间的差值在预设误差范围之内,可以直接对第一时间窗内的告警进行分析。当下一次执行上述步骤801至步骤803,并确定下一次获取到的第二差值大于第二误差阈值时,再缩小第一时间窗的长度。
调整方式二中的预设误差范围为第二差值不大于第二误差阈值。该第二差值是指以第一时间窗的长度为被减数,以预测时间窗的长度为减数,计算第一时间窗的长度减去预测时间窗的长度后得到的差,也即是,该第二差值可以是第一时间窗的长度与预测时间窗的长度之间的差的绝对值,该第一时间窗的长度大于该预测时间窗的长度。
第二误差阈值的获取方式与第一误差阈值的获取方式同理,在此不做赘述。
例如,如果第一时间窗的长度为20分钟,预测时间窗的长度为10分钟,目标长度为15分钟,第二误差阈值为3分钟,则可以获取20分钟与10分钟之间的差,得到10分钟,该10分钟即为第二差值,可以对10分钟与3分钟进行比较,10分钟大于3分钟,因此可以将第一时间窗的长度从20分钟缩小至15分钟。
在一种可能的实现中,当对第一时间窗的长度缩小一次后,可以继续执行上述步骤801至步骤803一次或多次,从而继续缩小第一时间窗的长度,直到预测时间窗的长度与该第一时间窗的长度之间的第二差值不大于第二误差阈值时,输出目标长度,从而根据第二时间窗执行下述步骤804。
在另一种可能的实现中,也可以获取目标长度与第一时间窗的长度之间的差值,判断差值是否在预设误差范围之外,当该目标长度与该第一时间窗的长度之间的差值在预设误差范围之外,则根据该目标长度,调整该第一时间窗的长度,详见下述调整方式三至调整方式四。当该目标长度与该第一时间窗的长度之间的差值在预设误差范围之内,可以对第一时间窗内的告警进行分析。
调整方式三、可以获取目标长度与第一时间窗的长度之间的第三差值,对该目标长度与该第一时间窗的长度之间的第三差值与第三误差阈值进行比较,当该第三差值大于第三误差阈值时,表明第一时间窗的长度相对于目标长度来说过小,如果根据当前的第一时间窗进行告警分析会导致准确性过差,则计算机设备确定目标长度与该第一时间窗的长度之间的差值在预设误差范围之外,可以扩大该第一时间窗的长度。当第三差值不大于第三误差阈值时,表明第一时间窗的长度的准确性属于可接受的程度,则计算机设备确定目标长度与该第一时间窗的长度之间的差值在预设误差范围之内,可以直接对第一时间窗内的告警进行分析。当下一次执行上述步骤801至步骤803,并确定下一次获取到的第三差值大于第三误差阈值时,再扩大第一时间窗的长度。
调整方式三中的预设误差范围为第三差值大于第三误差阈值。该第三差值是指以目标长度为被减数,以第一时间窗的长度为减数,计算目标长度减去第一时间窗的长度后得到的差,也即是,该第三差值可以是目标长度与第一时间窗的长度之间的差的绝对值,该目标长度大于该第一时间窗的长度。
例如,如果第一时间窗的长度为10分钟,目标长度为20分钟,第三误差阈值为3分钟,则可以获取20分钟与10分钟之间的差,得到10分钟,该10分钟即为第三差值,可以对10分钟与3分钟进行比较,10分钟大于3分钟,因此可以将第一时间窗的长度从10分钟扩大至20分钟。
在一种可能的实现中,当对第一时间窗的长度扩大一次后,可以继续执行上述步骤801至步骤803一次或多次,从而继续扩大第一时间窗的长度,直到目标长度与该第一时间窗的长度之间的第三差值不大于第三误差阈值时,输出目标长度,从而根据第二时间窗执行下述步骤804。
调整方式四、可以获取目标长度与第一时间窗的长度之间的第四差值,可以对该目标长度与该第一时间窗的长度之间的第四差值与第四误差阈值进行比较,当该第四差值大于第四误差阈值时,表明第一时间窗的长度相对于目标长度来说过大,如果根据当前的第一时间窗进行告警分析会导致准确性过差,则计算机设备确定目标长度与该第一时间窗的长度之间的差值在预设误差范围之外,可以缩小该第一时间窗的长度;当第四差值不大于第四误差阈值时,表明目标长度的准确性属于可接受的程度,则计算机设备确定目标长度与该第一时间窗的长度之间的差值在预设误差范围之内,可以直接对第二时间窗内的告警进行分析。当下一次执行上述步骤801至步骤803,并确定下一次获取到的第四差值大于第四误差阈值时,再缩小第一时间窗的长度。
调整方式四中的预设误差范围为第四差值大于第四误差阈值。该第四差值是指以第一时间窗的长度为被减数,以目标长度为减数,计算第一时间窗的长度减去目标长度后得到的差,也即是,该第四差值可以是第一时间窗的长度与目标长度之间的差的绝对值,该第一时间窗的长度大于该目标长度。
第四误差阈值的获取方式与第一误差阈值的获取方式同理,在此不做赘述。
例如,如果第一时间窗的长度为20分钟,目标长度为10分钟,第四误差阈值为3分钟,则可以获取20分钟与10分钟之间的差,得到10分钟,该10分钟即为第四差值,可以对10分钟与3分钟进行比较,10分钟大于3分钟,因此可以将第一时间窗的长度从20分钟缩小至10分钟。
在一种可能的实现中,当对第一时间窗的长度缩小一次后,可以继续执行上述步骤801至步骤803一次或多次,从而继续缩小第一时间窗的长度,直到目标长度与该第一时间窗的长度之间的第四差值不大于第四误差阈值时,输出目标长度,从而根据第二时间窗执行下述步骤804。
需要说明的一点是,本实施例对第一误差阈值、第二误差阈值、第三误差阈值以及第四误差阈值之间的大小关系不做限定。第一误差阈值、第二误差阈值、第三误差阈值以及第四误差阈值这四种阈值中的不同阈值可以相同,也可以不同。
通过上述调整方式一至调整方式四,可以在第一时间窗的长度过小时扩大第一时间窗的长度,也可以在第一时间窗的长度过大时缩小第一时间窗的长度,从而达到灵活调整的效果。在一种可能的实现中,该目标长度与该第一时间窗的长度可以符合目标大小关系,该目标大小关系包括下述任意一项:
(1)该目标长度大于该第一时间窗的长度,且该目标长度与该第一时间窗的长度之间的第一差大于第一误差阈值,该第一差的被减数为该目标长度,该第一差的减数为该第一时间窗的长度。作为示例,令目标长度与该第一时间窗的长度符合目标大小关系的实现方式可以为上述调整方式一或调整方式三。
(2)该目标长度小于该第一时间窗的长度,且该目标长度与该第一时间窗的长度之间的第二差大于第二误差阈值,该第二差的被减数为该第一时间窗的长度,该第二差的减数为该目标长度。作为示例,令目标长度与该第一时间窗的长度符合目标大小关系的实现方式可以为上述调整方式二或调整方式四。
804、计算机设备对第二时间窗内的告警进行分析。
关于获取第二时间窗内的告警的方式,对于告警数据流中的任一个或多个告警,计算机设备可以判断该一个或多个告警的发生时间点是否落入第二时间窗,如果该一个或多个告警的发生时间点落入第二时间窗,则获取该一个或多个告警。
关于对告警进行分析的方式,在一种可能的实现中,可以对告警进行根因分析,得到根因分析结果。该根因分析结果包括而不限于:告警中的根因告警、告警中的衍生告警、根因告警与衍生告警之间的对应关系中的一项或多项。根因分析的实施方式可以包括:对第二时间窗内的告警进行聚类,得到至少一个类。将同一个类中的告警输入根因分析模型,输出根因分析结果。其中,根因分析模型用于根据告警预测根因分析结果。
需要说明的一点是,上述仅是以由单台计算机设备执行上述告警分析方法为例进行描述,可选地,也可以由计算机设备集群执行上述告警分析方法,该计算机设备集群的***架构可以如图3所示或者如图4所示,不同计算机设备可以执行图8实施例中不同或相同的步骤,不同计算机设备可以位于不同或相同的地点。
本实施例提供了一种在告警分析的过程中,动态地调整时间窗的长度的方法。通过挖掘出告警的特征与时间窗的长度之间的关系,根据当前时间窗内告警的特征,获取预测时间窗的长度,利用预测时间窗的长度,来调整时间窗的当前长度,可以提高告警分析的灵活性。随着现网的实际情况不断变化,告警的特征随之变化,那么预测时间窗的长度可以随之变化,使得时间窗调整的幅度可以随着现网情况相应变化,提高告警分析方法的适应性,保证告警分析过程可以应对现网复杂多变的情况。
结合上述图5实施例以及图8实施例,本申请实施例还提供了如图10所示的逻辑架构。如图10所示,该逻辑架构包括网络、网管***、告警分析***、大数据存储以及处理引擎。网管***可以提供为上述实施例中的计算机设备。
网络可以是运营商或企业部署的网络环境,网络包括各级网络设备以及不同网络设备之间的网络链路。如果网络设备或者网络链路出现故障,网络设备会上报告警给网管***。
网管***主要包括告警采集模块、告警数据库模块、告警降噪模块、降噪规则数据库模块等。告警采集模块用于采集网络中新上报的告警,并对采集的告警进行汇总以及格式统一,然后将格式统一的告警存入告警数据库;告警数据库模块用于存储告警;告警降噪模块用于加载降噪规则,使用降噪规则对告警进行降噪,从而过滤掉无效的告警;降噪规则模块用于存储降噪规则。其中,告警降噪模块可以使用规则执行引擎对告警进行降噪,该规则执行引擎可以是Drools(Drools即JBoss rules,是一种易于访问企业策略、易于调整以及易于管理的开源业务规则引擎)。
告警分析***包括告警转储服务、大数据引擎、时间窗提取服务、类库、大数据存储与处理引擎、类(Situation)管理服务、用户界面(英文全称:User Interface,英文简称:UI)、告警订阅模块、特征提取模块、特征提取模块、预测模型推理模块、预测模型训练模块、模型库以及时间窗长度判断模块。
告警转储服务用于接收网管***发送的告警,对告警进行缓存,并将告警发送至大数据引擎中。
时间窗提取服务用于从网管***中订阅降噪后的告警,使用上述实施例提供的方法,获取时间窗的长度,将时间窗的长度发送至告警分析模块。并且,时间窗提取服务可以将降噪后的告警发送至大数据引擎。时间窗提取服务的具体逻辑架构可以如图11所示。
大数据引擎:用于实时存储告警,并对其他模块提供查询告警的服务。大数据引擎可以是Druid(Druid是一种数据库连接池)。
告警分析模块:用于从时间窗提取服务获取时间窗长度,根据时间窗长度,从大数据引擎获取告警,对告警进行分析。分析可以包括告警聚合和根因分析。告警分析模块可以得到每个告警对应的类,将类写入类库。其中,告警分析模块可以周期性地从时间窗提取服务获取时间窗长度,从而周期性地对告警进行分析。
类库:用于存储告警分析模块得到的类,可以称为Situation数据库。类库可以将存储的类提供给类管理服务。
类管理服务:可以称为Situation管理服务,与类库对接。类管理服务用于查询、统计类以及告警,从而支持UI服务所需的相关功能。
大数据存储与处理引擎:是上述各个模块的底层框架。大数据存储与处理引擎包括一个或多个数据引擎及其管理服务。大数据存储与处理引擎可以提供大数据存储、分析能力以及管道(英文:Pipeline)运行框架,Pipeline运行框架的开始为数据输入至一个数据源,Pipeline运行框架的结束为数据输出至另一个数据源。Pipeline运行框架可以实现周期性、可控的自动化数据处理流程,方便告警分析模块周期性运转。如图10中的***内部虚线框所示,Pipeline运行框架的一次运行流程为:大数据引擎读取告警,大数据引擎将告警输出至告警分析模块,告警分析模块对告警进行分析,将分析结果写入类库。
UI服务:用于展示告警及告警分析的结果。
告警订阅模块:用于在从网管***中获取新增的告警,根据时间窗的当前长度,筛选告警,根据告警的特征来预测预测时间窗的长度。同时,告警订阅模块还可以从告警库中拉取历史告警,并将历史告警读写至本地文件,以便运维人员对历史告警进行人工标注,以使预测模型根据标注后的历史告警,完成模型训练。
特征提取模块:用于接收告警订阅模块发送的告警,提取告警中的五种关键特征,特征提取模块可以支持特征扩展。
预测模型推理模块:用于从模型库中加载预测模型,基于每个告警的特征预测对应的预测时间窗的长度,并将预测时间窗的长度发送至时间窗长度判断模块
预测模型训练模块:用于使用模型训练算法,通过输入的样本告警的特征以及样本告警的标签,训练得到预测模型,将预测模型存入模型库,以便模型推理模块调用预测模型。
模型库:用于管理和存储预测模型。
时间窗长度判断模块:用于计算每个告警的预测时间窗的长度,并根据误差阈值,判断时间窗的当前长度是否能够在允许的误差范围内,即时间窗是否恰好包括告警及其全部衍生告警。时间窗长度判断模块的具体处理步骤还请参见上述步骤803。
参见图11,时间窗提取服务的逻辑架构可以如图11所示,包括预测模型推理模块以及预测模型训练模块。预测模型推理模块用于执行图8实施例。预测模型推理模块可以实时运行。预测模型训练模块用于执行图5实施例。预测模型训练模块可以定时运行或周期性运行。
针对预测模型推理模块的运行流程,如图11所示,告警订阅模块从网管***订阅新增告警,获取时间窗内的告警,将得到的告警发送至特征提取模块,特征提取模块对告警进行特征提取,将告警的特征发送至预测模型推理模块。预测模型推理模块从模型库中加载预测模型,通过预测模型,为每个告警预测对应的预测时间窗的长度;根据每个告警的发生时间点,计算每个告警对应的差;根据每个告警对应的差以及预测时间窗的长度,计算每个差以及预测时间窗的长度的和,得到多个和。时间窗长度判断模块将多个和与时间窗的当前长度进行比较,判断是需要将时间窗的当前长度扩大至多个和中的最大值,再重新预测扩大后的时间窗内的告警所对应的预测时间窗的长度,还是直接输出时间窗的当前长度。
针对预测模型训练模块的运行流程,如图11所示,告警订阅模块从告警库中订阅一定时间范围的告警并写入本地文件,在人工标注告警的标签后,将标注后的告警发送至告警特征提取模块,以进行特征提取。预测模型训练模块通过模型训练算法,完成预测模型的训练,得到预测模型,并将预测模型存入模型库中,以便预测模型推理模块从模型库中调用预测模型。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
图12是本申请实施例提供的一种告警分析装置的结构示意图,告警分析装置可以应用于上述各个实施例中的计算机设备,如图12所示,该装置包括:
获取模块1201,用于执行上述步骤801;该获取模块1201,还用于执行上述步骤802;调整模块1202,用于执行上述步骤803;分析模块1203,用于执行上述步骤804。
可选地,该获取模块1201,用于将该告警的特征输入预测模型,输出该预测时间窗的长度。
可选地,该获取模块1201,用于执行上述步骤506;该装置还包括:模型训练模块,用于执行上述步骤507。
可选地,该调整模块1202,用于使用预测误差条件调整时间窗的长度。
可选地,该调整模块1202,用于执行步骤803中调整方式一至调整方式四中的任意一项。
可选地,该调整模块1202,用于执行步骤803中的步骤一以及步骤二。
可选地,该获取模块1201,用于执行下述任意一项:获取该预测时间窗的长度以及该告警的相对时长之间的和,作为该目标长度;当该告警的数量为多个时,对于多个告警中的每个告警,获取该告警对应的预测时间窗的长度以及该告警的相对时长之间的和,得到多个和,获取该多个和中的最大值,作为该目标长度。
需要说明的一点是,图12实施例提供的告警分析装置在分析告警时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的告警分析装置与告警分析方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
应理解,这里的装置1200以功能模块的形式体现。这里的术语“模块”可以指应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。在一个可选例子中,本领域技术人员可以理解,装置1200可以具体为上述实施例中的计算机设备,装置1200可以用于执行上述方法实施例中与计算机设备对应的各个流程和/或步骤,也即是,装置1200具有实现上述方法中计算机设备执行的相应步骤的功能;该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块;例如获取模块、分析模块等可以由处理器替代,分别执行各个方法实施例中的处理操作,为避免重复,在此不再赘述。
上述各个方案的上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
在一个示例性实施例中,本申请还提供了一种包含指令的计算机程序产品,当其在计算机设备上运行时,使得该计算机设备能够实现上述实施例中告警分析方法以及预测模型训练方法中的至少一项。
在一个示例性实施例中,本申请还提供了一种芯片,包括处理器,用于从存储器中调用并运行该存储器中存储的指令,使得安装有该芯片的设备执行上述告警分析方法以及预测模型训练方法中的至少一项。
在一个示例性实施例中,本申请还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,该输入接口、输出接口、该处理器以及该存储器之间通过内部连接通路相连,该处理器用于执行该存储器中的代码,当该代码被执行时,该处理器用于执行上述告警分析方法以及预测模型训练方法中的至少一项。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如,数字视频光盘(digital video disc,DVD)、或者半导体介质(例如固态硬盘)等。
本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本申请中的字符“/”,一般表示前后关联对象是一种“或”的关系。
本申请中术语“多个”的含义是指两个或两个以上,例如,多个数据包是指两个或两个以上的数据包。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,本领域技术人员可以理解,“第一”“第二”等字样不对数量和执行顺序进行限定。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
1.一种告警分析方法,其特征在于,所述方法包括:
获取第一时间窗内告警的特征;
将所述告警的特征输入预测模型,通过所述预测模型对所述告警的特征处理,输出预测时间窗的长度,所述预测模型是根据样本告警的特征以及所述样本告警对应的时间窗长度训练得到的;
根据所述预测时间窗的长度,调整所述第一时间窗的长度,得到第二时间窗;
对所述第二时间窗内的告警进行分析。
2.根据权利要求1所述的方法,其特征在于,所述将所述告警的特征输入预测模型,输出预测时间窗的长度之前,所述方法还包括:
获取样本告警的特征以及所述样本告警的标签,所述标签表示目标时间窗的长度,所述目标时间窗包括所述样本告警中的根因告警以及所述根因告警对应的每个衍生告警;
根据所述样本告警的特征以及所述样本告警的标签,训练得到所述预测模型。
3.根据权利要求1至2中任意一项所述的方法,其特征在于,所述预测模型包括神经网络模型、随机森林模型、逻辑回归模型以及岭回归模型中的至少一项;
所述神经网络模型中输入层的节点用于接收输入的告警的特征,所述神经网络模型中输出层的节点用于输出预测时间窗的长度;
所述随机森林模型中决策树的根节点用于接收输入的告警的特征,所述决策树的叶子节点用于输出预测时间窗的长度;
所述逻辑回归模型的自变量为告警的特征,所述逻辑回归模型的因变量为预测时间窗的长度;
所述岭回归模型的自变量为告警的特征,所述岭回归模型的因变量为预测时间窗的长度。
4.根据权利要求1所述的方法,其特征在于,所述告警的特征包括所述告警的名称、所述告警的级别、所述告警的事件类型、所述告警的发生时间点以及在所述发生时间点发生的告警数量中的至少一项。
5.根据权利要求1所述的方法,其特征在于,所述根据所述预测时间窗的长度,调整所述第一时间窗的长度,包括:
当所述预测时间窗的长度与所述第一时间窗的长度之间的差值在预设误差范围之外,根据所述预测时间窗的长度,调整所述第一时间窗的长度。
6.根据权利要求1所述的方法,其特征在于,所述根据所述预测时间窗的长度,调整所述第一时间窗的长度,得到第二时间窗,包括:
根据所述预测时间窗的长度以及所述告警的相对时长,获取目标长度,所述相对时长表示所述告警在所述第一时间窗中的位置;
将所述第一时间窗的长度调整至所述目标长度,得到所述第二时间窗。
7.根据权利要求6所述的方法,其特征在于,所述相对时长为所述告警的发生时间点与所述第一时间窗的起始时间点之间的差。
8.根据权利要求6或7所述的方法,其特征在于,所述根据所述预测时间窗的长度以及所述告警的相对时长,获取目标长度,包括下述任意一项:
获取所述预测时间窗的长度以及所述告警的相对时长之间的和,作为所述目标长度;
当所述告警的数量为多个时,对于多个告警中的每个告警,获取所述告警对应的预测时间窗的长度以及所述告警的相对时长之间的和,得到多个和,获取所述多个和中的最大值,作为所述目标长度。
9.一种告警分析装置,其特征在于,所述装置包括:
获取模块,用于获取第一时间窗内告警的特征;
所述获取模块,还用于将所述告警的特征输入预测模型,输出预测时间窗的长度,所述预测模型是根据样本告警的特征以及所述样本告警对应的时间窗长度训练得到的;
调整模块,用于根据所述预测时间窗的长度,调整所述第一时间窗的长度,得到第二时间窗;
分析模块,用于对所述第二时间窗内的告警进行分析。
10.根据权利要求9所述的装置,其特征在于,
所述获取模块,用于获取样本告警的特征以及所述样本告警的标签,所述标签表示目标时间窗的长度,所述目标时间窗包括所述样本告警中的根因告警以及所述根因告警对应的每个衍生告警;
所述装置还包括:模型训练模块,用于根据所述样本告警的特征以及所述样本告警的标签,训练得到所述预测模型。
11.根据权利要求9至10中任意一项所述的装置,其特征在于,所述预测模型包括神经网络模型、随机森林模型、逻辑回归模型以及岭回归模型中的至少一项;
所述神经网络模型中输入层的节点用于接收输入的告警的特征,所述神经网络模型中输出层的节点用于输出预测时间窗的长度;
所述随机森林模型中决策树的根节点用于接收输入的告警的特征,所述决策树的叶子节点用于输出预测时间窗的长度;
所述逻辑回归模型的自变量为告警的特征,所述逻辑回归模型的因变量为预测时间窗的长度;
所述岭回归模型的自变量为告警的特征,所述岭回归模型的因变量为预测时间窗的长度。
12.根据权利要求9所述的装置,其特征在于,所述告警的特征包括所述告警的名称、所述告警的级别、所述告警的事件类型、所述告警的发生时间点以及在所述发生时间点发生的告警数量中的至少一项。
13.根据权利要求9所述的装置,其特征在于,所述调整模块,用于当所述预测时间窗的长度与所述第一时间窗的长度之间的差值在预设误差范围之外,根据所述预测时间窗的长度,调整所述第一时间窗的长度。
14.根据权利要求9所述的装置,其特征在于,所述调整模块,用于:
根据所述预测时间窗的长度以及所述告警的相对时长,获取目标长度,所述相对时长表示所述告警在所述第一时间窗中的位置;
将所述第一时间窗的长度调整至所述目标长度,得到所述第二时间窗。
15.根据权利要求14所述的装置,其特征在于,所述相对时长为所述告警的发生时间点与所述第一时间窗的起始时间点之间的差。
16.根据权利要求14或15所述的装置,其特征在于,所述获取模块,用于执行下述任意一项:
获取所述预测时间窗的长度以及所述告警的相对时长之间的和,作为所述目标长度;
当所述告警的数量为多个时,对于多个告警中的每个告警,获取所述告警对应的预测时间窗的长度以及所述告警的相对时长之间的和,得到多个和,获取所述多个和中的最大值,作为所述目标长度。
17.一种计算机设备,其特征在于,所述计算机设备包括一个或多个处理器和一个或多个易失性或非易失性存储器,所述一个或多个易失性或非易失性存储器中存储有至少一条指令,所述指令由所述一个或多个处理器加载并执行以实现如权利要求1至权利要求8中任意一项所述的告警分析方法所执行的操作。
18.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至权利要求8中任意一项所述的告警分析方法所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910175478.0A CN111669281B (zh) | 2019-03-08 | 2019-03-08 | 告警分析方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910175478.0A CN111669281B (zh) | 2019-03-08 | 2019-03-08 | 告警分析方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111669281A CN111669281A (zh) | 2020-09-15 |
CN111669281B true CN111669281B (zh) | 2021-11-30 |
Family
ID=72382085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910175478.0A Active CN111669281B (zh) | 2019-03-08 | 2019-03-08 | 告警分析方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111669281B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022116111A1 (en) * | 2020-12-03 | 2022-06-09 | Boe Technology Group Co., Ltd. | Computer-implemented method for defect analysis, computer-implemented method of evaluating likelihood of defect occurrence, apparatus for defect analysis, computer-program product, and intelligent defect analysis system |
CN112422351B (zh) * | 2021-01-21 | 2022-12-09 | 南京群顶科技股份有限公司 | 一种基于深度学习的网络告警预测模型建立方法及装置 |
CN113302614B (zh) * | 2021-04-25 | 2023-02-03 | 华为技术有限公司 | 数据管理方法、装置和终端设备 |
CN113672467A (zh) * | 2021-08-24 | 2021-11-19 | 中国电信股份有限公司 | 运维预警方法及装置、电子设备、存储介质 |
CN115314415B (zh) * | 2022-07-08 | 2023-09-26 | 北京天融信网络安全技术有限公司 | 网络安全态势预测方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101958803A (zh) * | 2010-09-09 | 2011-01-26 | 中兴通讯股份有限公司 | 基于通讯网络的告警压缩***及方法 |
CN104200401A (zh) * | 2014-09-11 | 2014-12-10 | 南京南瑞继保工程技术有限公司 | 一种基于自适应时间窗的安稳动作信息分析处理方法 |
CN106921507A (zh) * | 2015-12-25 | 2017-07-04 | 株式会社日立制作所 | 在无线通信网络中对用户投诉进行预测的方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2551546B (en) * | 2016-06-21 | 2020-02-12 | Ffe Ltd | Improvements in or relating to beam phasing |
-
2019
- 2019-03-08 CN CN201910175478.0A patent/CN111669281B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101958803A (zh) * | 2010-09-09 | 2011-01-26 | 中兴通讯股份有限公司 | 基于通讯网络的告警压缩***及方法 |
CN104200401A (zh) * | 2014-09-11 | 2014-12-10 | 南京南瑞继保工程技术有限公司 | 一种基于自适应时间窗的安稳动作信息分析处理方法 |
CN106921507A (zh) * | 2015-12-25 | 2017-07-04 | 株式会社日立制作所 | 在无线通信网络中对用户投诉进行预测的方法和装置 |
Non-Patent Citations (3)
Title |
---|
基于双约束滑动时间窗口的告警预处理方法研究;李彤岩,李兴明;《计算机研究应用》;20120911;第582页第1段-第584页 * |
基于有向滑动时间窗的报警动态选择算法;汪永伟,苏会芳,张红旗等;《计算机工程与设计》;20150216;全文 * |
基于自扩展时间窗的告警多级聚合与关联方法;李洪成; 吴晓平;《工程科学与技术》;20170120;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111669281A (zh) | 2020-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111669281B (zh) | 告警分析方法、装置、设备及存储介质 | |
US10594582B2 (en) | Introspection driven monitoring of multi-container applications | |
CN109684181B (zh) | 告警根因分析方法、装置、设备及存储介质 | |
CN110351150B (zh) | 故障根源确定方法及装置、电子设备和可读存储介质 | |
AU2016213726B2 (en) | Core network analytics system | |
CN112073208B (zh) | 一种告警分析方法、装置、芯片***、存储介质 | |
US10693711B1 (en) | Real-time event correlation in information networks | |
US20180287903A1 (en) | Adjusting monitoring based on inspection of network traffic | |
US11805005B2 (en) | Systems and methods for predictive assurance | |
US20200112489A1 (en) | Intelligent Network Equipment Failure Prediction System | |
US10581667B2 (en) | Method and network node for localizing a fault causing performance degradation of a service | |
US11281518B2 (en) | Method and system for fault localization in a cloud environment | |
US10797938B2 (en) | Automatic monitoring, correlation, and resolution of network alarm conditions | |
US20210097431A1 (en) | Debugging and profiling of machine learning model training | |
US11196633B2 (en) | Generalized correlation of network resources and associated data records in dynamic network environments | |
US11722371B2 (en) | Utilizing unstructured data in self-organized networks | |
WO2020053792A1 (en) | Malchain detection | |
AU2021218159B2 (en) | Utilizing machine learning models to determine customer care actions for telecommunications network providers | |
US20230105304A1 (en) | Proactive avoidance of performance issues in computing environments | |
US11468365B2 (en) | GPU code injection to summarize machine learning training data | |
US11212162B2 (en) | Bayesian-based event grouping | |
CN115049493A (zh) | 一种区块链数据追踪方法、装置及电子设备 | |
CN114385398A (zh) | 一种请求响应状态确定方法、装置、设备和存储介质 | |
CN114676002A (zh) | 基于phm技术的***运维方法及装置 | |
EP4068693A1 (en) | Methods and devices for network monitoring |
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 |