本发明涉及信息处理领域,尤其涉及一种监控数据的故障定位方法及装置。
背景技术:
目前在各个领域都存在基础的监控系统,当发生故障(例如:代码的bug,网络波动,硬件设备的故障,操作不当等故障)时,会产生大量有关联性的故障告警。为了能够更快的发现故障根因,提高整个定位效率,目前在各个领域也存在不少故障定位系统的实现方案。例如:将故障类别进行类别细分通过树模型进行训练,将故障定位问题转变为故障类型的多分类问题,从而得到因果关系。然而,现有的故障定位方法不仅无法保证故障处理的时效性,且由于部分故障的根因的多样性强,很多故障事件并不是高概率事件,对于低概率事件在进行故障定位时无法有效的避免无效的关联项的影响,从而导致定位的准确性低。
技术实现要素:
针对现有故障定位准确性低的问题,现提供一种旨在可提高故障定位准确性的监控数据的故障定位方法、装置、计算机设备及存储介质。
为实现上述目的,本发明提供一种监控数据的故障定位方法,包括下述步骤:
获取源告警信息;
基于所述源告警信息的类型对所述源告警信息进行增维,生成扩展信息;
根据cmdb模型对所述扩展信息进行识别生成故障定位结果。
优选的,获取源告警信息的步骤,包括:
采集源告警信息,识别所述源告警信息的类型,所述源告警信息的类型包括系统类告警信息和应用类告警信息。
优选的,所述扩展信息包括故障应用扩展信息或告警扩展信息;
基于所述源告警信息的类型对所述源告警信息进行增维,生成扩展信息的步骤,包括:
当所述源告警信息为应用类告警信息时,根据所述源告警信息获取故障应用信息;
当所述源告警信息为系统类告警信息时,判断所述源告警信息是否有效;
基于存储关联数据库对所述故障应用信息或有效的所述系统类告警信息进行增维,生成故障应用扩展信息或告警扩展信息并存储。
优选的,当所述源告警信息为应用类告警信息时,根据所述源告警信息获取故障应用信息的步骤,包括:
当所述源告警信息为应用类告警信息时,基于所述源告警信息获取相应的调用链路数据,根据所述调用链路数据获取故障根节点的故障应用信息。
优选的,基于存储关联数据库对所述故障应用信息或有效的所述系统类告警信息进行增维,生成故障应用扩展信息或告警扩展信息并存储的步骤,包括:
根据所述故障应用信息中的根节点数据查询所述存储关联数据库,获取与所述根节点数据关联的信息,基于与所述根节点数据关联的信息生成故障应用扩展信息;
依据有效的所述系统类告警信息所属的应用名查询所述存储关联数据库,获取与所述应用名关联的信息,基于与所述应用名关联的信息生成告警扩展信息。
优选的,根据cmdb模型对所述扩展信息进行识别生成故障定位结果的步骤,包括:
所述cmdb模型包括配置管理数据库专家模型;
在预设时间范围内,基于获取的所述告警扩展信息生成待关联集合;
通过所述配置管理数据库专家模型将所述故障应用扩展信息与所述待关联集合中的信息进行匹配、递归获取关联结果,将所述关联结果作为所述故障定位结果。
优选的,根据cmdb模型对所述扩展信息进行识别生成故障定位结果的步骤,包括:
所述cmdb模型包括配置管理数据库专家模型和频繁项集模型;
在预设时间范围内,基于获取的所述告警扩展信息生成待关联集合;
通过所述配置管理数据库专家模型将所述故障应用扩展信息与所述待关联集合中的信息进行匹配、递归获取关联结果;
判断所述关联结果中是否包括关联关系;
当关联结果中包括关联关系时,将所述关联结果作为所述故障定位结果;
当关联结果中不包括关联关系时,对所述故障应用扩展信息进行泛化,获取所述故障应用泛化信息;
通过频繁项集模型基于预设数据集合对所述故障应用泛化信息进行关联匹配获取所述故障定位结果。
为实现上述目的,本发明还提供一种监控数据的故障定位装置,包括:
获取单元,用于获取源告警信息;
生成单元,用于基于所述源告警信息的类型对所述源告警信息进行增维,生成扩展信息;
定位单元,用于根据cmdb模型对所述扩展信息进行识别生成故障定位结果。
为实现上述目的,本发明还提供一种计算机设备,所述计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
上述技术方案的有益效果:
本技术方案中,监控数据的故障定位方法、装置、计算机设备及存储介质,通过对获取的源告警信息增维生成扩展信息,达到了对源告警信息进行丰富的目的,以便于利用丰富后的扩展信息进行数据关联,提高数据关联的准确性;利用cmdb模型对扩展信息进行识别生成故障定位结果,可提升故障定位的时效性,有效避免无效关联的对故障定位的影响,保证故障定位的准确性。
附图说明
图1为本发明所述的监控数据的故障定位方法的一种实施例的方法流程图;
图2为本发明中对源告警信息进行增维生成扩展信息的流程图;
图3为本发明中对告警扩展信息进行识别生成故障定位结果的一种实施例的流程图;
图4为本发明中对告警扩展信息进行识别生成故障定位结果的另一种实施例的流程图;
图5为本发明所述监控数据的故障定位装置的一种实施例的模块图;
图6为本发明所述的计算机设备一实施例的硬件架构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
本发明提供的监控数据的故障定位方法、装置、计算机设备及存储介质,适用于银行、金融、保险等业务领域。本发明通过对获取的源告警信息增维生成扩展信息,达到了对源告警信息进行丰富的目的,以便于利用丰富后的扩展信息进行数据关联,提高数据关联的准确性;利用cmdb模型对扩展信息进行识别生成故障定位结果,可提升故障定位的时效性,有效避免无效关联的对故障定位的影响,保证故障定位的准确性。
实施例一
请参阅图1,本实施例的一种监控数据的故障定位方法,所述方法包括下述步骤:
s1.获取源告警信息;
在实际应用中,可以通过监控系统在告警触发时新增告警动作,将告警数据同步发送至kafka(kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据)从而实现源告警信息的收集。监控系统可采用zabbix(zabbix是一个基于web界面的提供分布式系统监视以及网络监视功能的企业级的开源技术),通过在操作(action)中配置新增调用数据采集接口进行数据传输,在应用层可采用开源监控系统在告警发送时调用统一的数据发送接口收集源告警信息;其余变更系统及日志监控系统的也可采用相同的采集方式收集源告警信息。考虑到在告警发生时,可产生庞大的告警数据量,因此可采用吞吐量强大的kafka作为消息队列进行源告警信息的缓存。
进一步地,步骤s1获取源告警信息的步骤可包括:
采集源告警信息,识别所述源告警信息的类型,所述源告警信息的类型可包括系统类告警信息和应用类告警信息。
其中,应用类告警信息可包括应用告警信息、业务指标告警信息和日志告警信息等。系统类告警信息可包括网络告警信息、服务器告警信息、存储设备告警信息及变更信息等。
在本步骤中,可根据源告警信息携带的标识,识别源告警信息对应的类型,如:系统类告警信息或应用类告警信息。
s2.基于所述源告警信息的类型对所述源告警信息进行增维,生成扩展信息;
其中:所述扩展信息可包括故障应用扩展信息或告警扩展信息;
需要说明的是:由于应用系统及业务指标的监控状态直接反映了软件产品的可用性,所以在本实施例中设定应用类告警信息触发故障定位事件,而其余来源告警(系统类告警信息)则不触发故障定位事件,只是作为数据关联项进行存储。
参考图2所示,进一步地,在步骤s2中,基于所述源告警信息的类型对所述源告警信息进行增维,生成扩展信息的步骤,包括:
s21.当所述源告警信息为应用类告警信息时,根据所述源告警信息获取故障应用信息;
具体地,在步骤s21中,当所述源告警信息为应用类告警信息时,基于所述源告警信息获取相应的调用链路数据,根据所述调用链路数据获取故障根节点的故障应用信息。
在实际应用中,应用间调用都是通过rpc(全称:remoteprocedurecallprotocol,中文:远程过程调用协议)框架实现的,根据调用链路数据进行应用间的调用,以调用链路数据为message_id,root_id,parent_id,child_id为例,其中message_id表示标记一次调用请求生命周期的全局id;root_id表示标记调用请求起始点;parent_id表示标记上游ip信息;child_id表示标记即将调用方的ip。系统调用时在rpc中间件这层进行数据拦截,获取调用链路数据。当系统异常时,通过调用链路数据可以获取故障根节点的故障应用信息,从而定位应用层的故障根节点。
s22.当所述源告警信息为系统类告警信息时,判断所述源告警信息是否有效;
由于系统类告警信息的告警量庞大,很多时候大量的告警其实只是一种预警,例如磁盘剩余空间不足10%,文件共享系统的剩余空间不足10%等,所以需要对系统类告警信息是否对业务指标产生影响进行分类,过滤掉无效的系统类告警信息,防止过多无效的系统类告警信息对故障定位进行干扰,在后续对扩展信息进行识别时,只考虑会对业务指标产生过影响的应用类告警信息进行关联。
作为举例而非限定,在本步骤中可采用xgboost算法对系统类告警信息是否对业务指标产生影响进行识别。
选取5000条样本告警数据(每一条数据均配置有相应的类别标记)。样本告警数据的特征向量(特征分类表1)可包括告警级别、告警类型、告警来源、处理时效、应用等级、应用类组、所在机房、业务指标是否投诉、是否有效等均采用one-hot的编码格式。通过xgboost算法进行训练,生成离线模型。利用该离线模型对系统类告警信息进行识别判断其是否有效,以便于过滤掉无效的告警关联项。记录无效的系统类告警信息,并将有效的系统类告警信息存储于待关联集合中。
表1
s23.基于存储关联数据库对所述故障应用信息或有效的所述系统类告警信息进行增维,生成故障应用扩展信息或告警扩展信息并存储。
由于现有的告警信息(如:源告警信息)内容贫瘠,只包括告警级别,告警时间,告警服务器ip,主机名,告警描述,告警阈值,不利于后续的数据关联,所以在本步骤中可基于存储关联数据库(如:cmdb,cmdb存储与管理企业it架构中设备的各种配置信息,它与所有服务支持和服务交付流程都紧密相联,支持这些流程的运转、发挥配置信息的价值)以源告警信息中服务器ip为中心进行故障应用信息的增维及系统类告警信息的增维。
具体地,步骤s23的可包括:
根据所述故障应用信息中的根节点数据查询所述存储关联数据库,获取与所述根节点数据关联的信息,基于与所述根节点数据关联的信息生成故障应用扩展信息;
需要说明的是,存储关联数据库预先存有系统数据的关联信息,通过查询存储关联数据库可获取与根节点数据关联的信息,进而基于相应的关联信息生成与故障应用信息对应的故障应用扩展信息。
依据有效的所述系统类告警信息所属的应用名查询所述存储关联数据库,获取与所述应用名关联的信息,基于与所述应用名关联的信息生成告警扩展信息。
作为举例而非限定,获取到源告警信息时,对于系统层的信息可根据源告警信息的ip地址所属宿主机地址获取连接的交换机信息、防火墙信息等;对于应用层的信息可根据源告警信息的ip获取所属的应用名,进而获取容器类型、暴露的端口、对外的域名、连接的数据库地址、缓存地址、告警时段的调度任务信息以及其他系统交互的消息队列名称等,从而将源告警信息丰富到涵盖系统层、网络层、应用层、数据层及中间件层的多维数据,实现增维的目的。
s3.根据cmdb模型对所述扩展信息进行识别生成故障定位结果。
在步骤s3中,当所述cmdb模型包括配置管理数据库专家模型,根据cmdb模型对所述扩展信息进行识别生成故障定位结果的步骤,包括(如图3所示):
s301.在预设时间范围内,基于获取的所述告警扩展信息生成待关联集合;
需要说明的是:待关联集合为实时更新的集合,该集合由经步骤s22判断后的有效的系统类告警信息组成。
s302.通过所述配置管理数据库专家模型将所述故障应用扩展信息与所述待关联集合中的信息进行匹配、递归获取关联结果,将所述关联结果作为所述故障定位结果。
配置管理数据库专家模型是一个存储仓库,用于集中存储和管理待关联集合中的所有实体元素,在配置管理数据库专家模型中,配置项、属性和关联关系是配置管理数据库专家模型的三个基本元素,三者结合而成的配置模型是现实待关联集合中的实体元素在监控系统的真实投影。配置项是在配置管理控制下的调用链路数据、源告警信息的类型、告警级别、告警类型、告警来源、处理时效、应用等级、应用类组、所在机房、业务指标是否投诉、是否有效等逻辑资源;属性是是配置项的具体描述;关联关系描述在配置管理数据库中配置项之间存在着各种关系。在实际应用中,将故障应用扩展信息与待关联集合中的配置项进行匹配,获取匹配的配置项,并基于递归方式依据配置项的属性和关联关系获取与该故障应用扩展信息关联的关联关系信息,逐层进行匹配,直至获取关联结果,从而将该关联结果作为故障定位结果。
于本实施例中,以存储有效的系统类告警信息及变更信息的待关联集合为基础,选取预设时间范围内作为关联时间段,假定这个时间段内发生的告警具有关联关系,告警发生时将故障应用信息和待关联集合中的配置项逐个进行匹配,如果匹配成功将被关联告警信息作为关联方继续在对应关联集进行关联,以此递归进行直到没有新的关联关系生成为止。在本实施例中的配置管理数据库专家模型是基于cmdb的数据强关联,关联准确率很高。
在步骤s3中,当所述cmdb模型包括配置管理数据库专家模型和频繁项集模型时,根据cmdb模型对所述扩展信息进行识别生成故障定位结果的步骤,包括(如图4所示):
s311.在预设时间范围内,基于获取的所述告警扩展信息生成待关联集合;
s312.通过所述配置管理数据库专家模型将所述故障应用扩展信息与所述待关联集合中的信息进行匹配、递归获取关联结果;
于本实施例中,以存储有效的系统类告警信息及变更信息的待关联集合为基础,选取预设时间范围内作为关联时间段,假定这个时间段内发生的告警具有关联关系,告警发生时将故障应用信息和待关联集合进行两两关联,如果关联成功将被关联告警信息作为关联方继续在对应关联集进行关联,以此递归进行直到没有新的关联关系生成为止。
s313.判断所述关联结果中是否包括关联关系,若是,执行步骤s314;若否,执行步骤s315;
于本步骤中,当关联结果没有关联关系时,需结合频繁项集模型进行故障定位,具体参考步骤s314至步骤s316。
s314.将所述关联结果作为所述故障定位结果;
s315.对所述故障应用扩展信息进行泛化,获取所述故障应用泛化信息;
s316.通过频繁项集模型基于预设数据集合对所述故障应用泛化信息进行关联匹配获取所述故障定位结果。
频繁项集模型的本质是将大量数据分为若干子集,根据每个子集中,各个数据同时出现的频繁度大小判断数据之间是否存在关联性,再根据关联性数据集中的置信度大小来判断关联关系中的因果导向。但是频繁项集算法在故障定位场景中的一个巨大缺点就是关联关系是建立在频繁度上的,只有频繁度很高的告警才能挖掘关联关系,但是告警事件随机性很高,而且对于专业互联网公司来说告警重复度也很低。如果将频繁度阈值调低也会出现很多无效的关联关系,为此在本实施例中是对经泛化后的故障应用扩展信息采用频繁项集模型进行定位,以避免上述缺陷。
于本实施例中,将故障应用扩展信息进行多层泛化,例如:应用a的接口a有调用其他应用某接口不通的告警产生,那么可以泛化成以下几类,基于调用链路数据,所以不考虑接口调用的上下游,范围由小到分别为,报错类型(接口调用是否超时、参数是否合法、数据库操作是否异常等) 接口名 应用名,接口名 应用名。同理系统层告警也可以进行如此泛化,例如,ip1的磁盘空间不足5%,可以泛化为ip1 监控分组(ip1对应的应用分组,应用服务器组、数据库组、中间件组) 磁盘空间(告警类型分类、磁盘空间、cpu使用率、应用进程),剩下的低维泛化方法同应用层一致。然后将每一层的泛化告警都通过apriori算法生成关联多层的频繁项集。泛化后可能出现多对多的因果关系,所以需要计算出各种根因的占比进行故障根因的可能性判断。由于告警内容的泛化处理将频繁项集的阈值实际上降低了,并且由于泛化分类并没有产生因阈值降低而导致的诸多无效关联。相对传统的频繁项集的关联模式有较大关联效果提升。
作为举例而非限定,对频繁项集模型基于预设数据集合对故障应用泛化信息进行关联的具体过程为:提供一预设数据集合,统计预设数据集合中相同数据的出现次数,清除预设数据集合中不满足频繁度阈值的数据,以一定的时间维度切分预设数据集合,生成多个1级数据集合;以两条同一时间范围内的数据作为2级的数据,统计2级数据集合中相同的数据的出现次数,清除不满足频繁度阈值的2级数据;以3条同一时间范围内的数据作为3级数据集合,统计3级数据集合中相同数据的出现次数,清除不满足频繁度阈值的3级数据;计算多级数据间的置信度,输出有向性关联关系。
采用配置管理数据库专家模型和频繁项集模型既可以实现规则模型带来的准确性,也同时也一定程度的避免了大量复杂规则模型的难以维护以及由规则覆盖面不足导致的定位缺失。其中传统的频繁项集模型通过挖掘高概率相同时间维度内的共同事件最为关联事件,其中最大的问题是很多故障事件并不是高概率事件,而如果调低频繁项阈值会增加很多无效关联项影响定位准确性。本实施例通过将每条源告警信息进行分层泛化的形式,其实是对源告警信息的多级分类,并以此生成多级的频繁项模型,由于泛化的过程一定程度上增加事件重复概率,也同时避免了无效关联的影响,而多级泛化可以在即便无法进行准确关联的情况提供出大致的怀疑方向,加速故障发生时的定位及处理过程。
监控数据的故障定位方法能够将根据应用间调用链路获取故障报警时的故障根节点的故障应用信息,并且在数据丰富及预分类,源告警信息泛化后通过配置管理数据库专家模型及频繁项集模进行故障定位;根据调用链路数据能够高效的理清应用间的调用关系,准确的关注到链路中故障节点而不是最顶层的报错应用,而配置管理数据库专家模型在故障定位时的准确性以及频繁项集模型加告警泛化的高覆盖性能够有效的进行互补,并且可以在海量告警中进行准确的关联,在无准确关联的情况下也能提供大致的怀疑方向,极大的加速故障处理过程,减小故障损失。
实施例二
请参阅图5,本实施例的一种监控数据的故障定位装置1包括:获取单元11、生成单元12和定位单元13,其中:
获取单元11,用于获取源告警信息;
在本实施例中,通过获取单元11采集源告警信息,识别所述源告警信息的类型,所述源告警信息的类型可包括系统类告警信息和应用类告警信息。具体地,可根据源告警信息携带的标识,识别源告警信息对应的类型,如:系统类告警信息或应用类告警信息。
其中,应用类告警信息可包括应用告警信息、业务指标告警信息和日志告警信息等。系统类告警信息可包括网络告警信息、服务器告警信息、存储设备告警信息及变更信息等。
生成单元12,用于基于所述源告警信息的类型对所述源告警信息进行增维,生成扩展信息;
其中:所述扩展信息可包括故障应用扩展信息或告警扩展信息;
当所述源告警信息为应用类告警信息时,根据所述源告警信息获取故障应用信息;
具体地,当所述源告警信息为应用类告警信息时,基于所述源告警信息获取相应的调用链路数据,根据所述调用链路数据获取故障根节点的故障应用信息。
当所述源告警信息为系统类告警信息时,判断所述源告警信息是否有效;
由于系统类告警信息的告警量庞大,很多时候大量的告警其实只是一种预警,例如磁盘剩余空间不足10%,文件共享系统的剩余空间不足10%等,所以需要对系统类告警信息是否对业务指标产生影响进行分类,过滤掉无效的系统类告警信息,防止过多无效的系统类告警信息对故障定位进行干扰,在后续对扩展信息进行识别时,只考虑会对业务指标产生过影响的应用类告警信息进行关联。
基于存储关联数据库对所述故障应用信息或有效的所述系统类告警信息进行增维,生成故障应用扩展信息或告警扩展信息并存储.
具体地,可根据所述故障应用信息中的根节点数据查询所述存储关联数据库,获取与所述根节点数据关联的信息,基于与所述根节点数据关联的信息生成故障应用扩展信息;
需要说明的是,存储关联数据库预先存有系统数据的关联信息,通过查询存储关联数据库可获取与根节点数据关联的信息,进而基于相应的关联信息生成与故障应用信息对应的故障应用扩展信息。
依据有效的所述系统类告警信息所属的应用名查询所述存储关联数据库,获取与所述应用名关联的信息,基于与所述应用名关联的信息生成告警扩展信息。
定位单元13,用于根据cmdb模型对所述扩展信息进行识别生成故障定位结果。
在本实施例中,定位单元13在预设时间范围内,基于获取的所述告警扩展信息生成待关联集合;通过所述配置管理数据库专家模型将所述故障应用扩展信息与所述待关联集合中的信息进行匹配、递归获取关联结果,将所述关联结果作为所述故障定位结果。
于本实施例中,以存储有效的系统类告警信息及变更信息的待关联集合为基础,选取预设时间范围内作为关联时间段,假定这个时间段内发生的告警具有关联关系,告警发生时将故障应用信息和待关联集合进行两两关联,如果关联成功将被关联告警信息作为关联方继续在对应关联集进行关联,以此递归进行直到没有新的关联关系生成为止。在本实施例中的配置管理数据库专家模型是基于cmdb的数据强关联,关联准确率很高。
在本实施例中,监控数据的故障定位装置1通过对获取的源告警信息增维生成扩展信息,达到了对源告警信息进行丰富的目的,以便于利用丰富后的扩展信息进行数据关联,提高数据关联的准确性;利用cmdb模型对扩展信息进行识别生成故障定位结果,可提升故障定位的时效性,有效避免无效关联的对故障定位的影响,保证故障定位的准确性。
实施例三:
为实现上述目的,本发明还提供一种计算机设备2,该计算机设备2包括多个计算机设备2,实施例二的监控数据的故障定位装置1的组成部分可分散于不同的计算机设备2中,计算机设备2可以是执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备2至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器23、网络接口22以及监控数据的故障定位装置1(参考图6)。需要指出的是,图6仅示出了具有组件-的计算机设备2,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,所述存储器21至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备2的内部存储单元,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备2的外部存储设备,例如该计算机设备2上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,所述存储器21还可以既包括计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备2的操作系统和各类应用软件,例如实施例一的监控数据的故障定位方法的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器23在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器23通常用于控制计算机设备2的总体操作例如执行与所述计算机设备2进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器23用于运行所述存储器21中存储的程序代码或者处理数据,例如运行所述的监控数据的故障定位装置1等。
所述网络接口22可包括无线网络接口或有线网络接口,该网络接口22通常用于在所述计算机设备2与其他计算机设备2之间建立通信连接。例如,所述网络接口22用于通过网络将所述计算机设备2与外部终端相连,在所述计算机设备2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(globalsystemofmobilecommunication,gsm)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi-fi等无线或有线网络。
需要指出的是,图6仅示出了具有部件21-23的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器21中的所述监控数据的故障定位装置1还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器21中,并由一个或多个处理器(本实施例为处理器23)所执行,以完成本发明。
实施例四:
为实现上述目的,本发明还提供一种计算机可读存储介质,其包括多个存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘、服务器、app应用商城等等,其上存储有计算机程序,程序被处理器23执行时实现相应功能。本实施例的计算机可读存储介质用于存储监控数据的故障定位装置1,被处理器23执行时实现实施例一的监控数据的故障定位方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
1.一种监控数据的故障定位方法,其特征在于,包括下述步骤:
获取源告警信息;
基于所述源告警信息的类型对所述源告警信息进行增维,生成扩展信息;
根据cmdb模型对所述告警扩展信息进行识别生成故障定位结果。
2.根据权利要求1所述的监控数据的故障定位方法,其特征在于,获取源告警信息的步骤,包括:
采集源告警信息,识别所述源告警信息的类型,所述源告警信息的类型包括系统类告警信息和应用类告警信息。
3.根据权利要求2所述的监控数据的故障定位方法,其特征在于,所述告警扩展信息包括故障应用扩展信息或告警扩展信息;
基于所述源告警信息的类型对所述源告警信息进行增维,生成扩展信息的步骤,包括:
当所述源告警信息为应用类告警信息时,根据所述源告警信息获取故障应用信息;
当所述源告警信息为系统类告警信息时,判断所述源告警信息是否有效;
基于存储关联数据库对所述故障应用信息或有效的所述系统类告警信息进行增维,生成故障应用扩展信息或告警扩展信息并存储。
4.根据权利要求3所述的监控数据的故障定位方法,其特征在于,当所述源告警信息为应用类告警信息时,根据所述源告警信息获取故障应用信息的步骤,包括:
当所述源告警信息为应用类告警信息时,基于所述源告警信息获取相应的调用链路数据,根据所述调用链路数据获取故障根节点的故障应用信息。
5.根据权利要求3所述的监控数据的故障定位方法,其特征在于,基于存储关联数据库对所述故障应用信息或有效的所述系统类告警信息进行增维,生成故障应用扩展信息或告警扩展信息并存储的步骤,包括:
根据所述故障应用信息中的根节点数据查询所述存储关联数据库,获取与所述根节点数据关联的信息,基于与所述根节点数据关联的信息生成故障应用扩展信息;
依据有效的所述系统类告警信息所属的应用名查询所述存储关联数据库,获取与所述应用名关联的信息,基于与所述应用名关联的信息生成告警扩展信息。
6.根据权利要求3所述的监控数据的故障定位方法,其特征在于,根据cmdb模型对所述告警扩展信息进行识别生成故障定位结果的步骤,包括:
所述cmdb模型为配置管理数据库专家模型;
在预设时间范围内,基于获取的所述告警扩展信息生成待关联集合;
通过所述配置管理数据库专家模型将所述故障应用扩展信息与所述待关联集合中的信息进行匹配、递归获取关联结果,将所述关联结果作为所述故障定位结果。
7.根据权利要求3所述的监控数据的故障定位方法,其特征在于,根据cmdb模型对所述告警扩展信息进行识别生成故障定位结果的步骤,包括:
所述cmdb模型包括配置管理数据库专家模型和频繁项集模型;
在预设时间范围内,基于获取的所述告警扩展信息生成待关联集合;
通过所述配置管理数据库专家模型将所述故障应用扩展信息与所述待关联集合中的信息进行匹配、递归获取关联结果;
判断所述关联结果中是否包括关联关系;
当关联结果中包括关联关系时,将所述关联结果作为所述故障定位结果;
当关联结果中不包括关联关系时,对所述故障应用扩展信息进行泛化,获取所述故障应用泛化信息;
通过频繁项集模型基于预设数据集合对所述故障应用泛化信息进行关联匹配获取所述故障定位结果。
8.一种监控数据的故障定位装置,其特征在于,包括:
获取单元,用于获取源告警信息;
生成单元,用于基于所述源告警信息的类型对所述源告警信息进行增维,生成扩展信息;
定位单元,用于根据cmdb模型对所述告警扩展信息进行识别生成故障定位结果。
9.一种计算机设备,所述计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
技术总结