一种根因确定方法、装置、计算机设备及存储介质与流程

文档序号:25053358发布日期:2021-05-14 13:34阅读:105来源:国知局
一种根因确定方法、装置、计算机设备及存储介质与流程

1.本发明涉及运维技术领域,更具体地说,涉及一种根因确定方法、装置、计算机设备及存储介质。


背景技术:

2.互联网平台提供的互联网业务复杂冗长,任何一个链路或节点的故障都可能引起大量的告警。现有技术通常是由运维人员花费大量时间寻找告警出现的原因,不仅人工成本高、定位效率低,而且人工定位依赖于个人主观意识、个人对互联网平台的熟悉程度以及个人当时所处的环境和状态,往往存在根因确定不准确的情况。


技术实现要素:

3.有鉴于此,为解决上述问题,本发明提供一种根因确定方法、装置、计算机设备及存储介质,以在降低根因确定的人工成本、提高根因确定效率的基础上,提高根因确定的准确性,技术方案如下:
4.一种根因确定方法,包括:
5.接收根因确定请求,获取所述根因确定请求指示的待进行根因确定的第一预警信息;
6.根据历史预警信息确定首次对所述第一预警信息指示的预警内容进行预警的第二预警信息;
7.从变更数据集中确定用于作为所述第二预警信息的候选根因的至少一条目标变更数据,所述变更数据集包括响应互联网平台的业务、机器或网络中任意一项或多项的变更生成的变更数据,所述目标变更数据指示的变更时间与所述第二预警信息的预警时间存在关联关系;
8.根据所述第二预警信息指示的预警特征和所述目标变更数据指示的变更特征,计算所述第二预警信息和所述目标变更数据之间的关联信息;
9.基于所述第二预警信息分别与所述至少一条目标变更数据中每条目标变更数据之间的关联信息,生成所述第一预警信息的根因确定结果。
10.一种根因确定装置,包括:
11.请求接收单元,用于接收根因确定请求,获取所述根因确定请求指示的待进行根因确定的第一预警信息;
12.首次预警确定单元,用于根据历史预警信息确定首次对所述第一预警信息指示的预警内容进行预警的第二预警信息;
13.目标变更数据确定单元,用于从变更数据集中确定用于作为所述第二预警信息的候选根因的至少一条目标变更数据,所述变更数据集包括响应互联网平台的业务、机器或网络中任意一项或多项的变更生成的变更数据,所述目标变更数据指示的变更时间与所述第二预警信息的预警时间存在关联关系;
14.关联信息计算单元,用于根据所述第二预警信息指示的预警特征和所述目标变更数据指示的变更特征,计算所述第二预警信息和所述目标变更数据之间的关联信息;
15.结果生成单元,用于基于所述第二预警信息分别与所述至少一条目标变更数据中每条目标变更数据之间的关联信息,生成所述第一预警信息的根因确定结果。
16.一种计算机设备,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现所述根因确定方法。
17.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器加载并执行,实现所述根因确定方法的各步骤。
18.本申请提供一种根因确定方法、装置、计算机设备及存储介质,在获取待进行根因确定的第一预警信息后,从历史预警信息中获取首次对第一预警信息指示的预警内容进行预警的第二预警信息,进而依赖于第二预警信息和变更数据集生成第一预警信息的根因确定结果。本申请提供的根因确定方式可以实现对第一预警信息根因的自动确定,相对于现有人工根因确定方式而言,可以降低根因确定的人工成本、提高根因确定效率及准确性。并且,本申请在确定第一预警信息后,并未直接利用第一预警信息来实现根因确定,而是利用历史上首次对第一预警信息指示的预警内容进行预警的第二预警信息实现对第一预警信息的根因确定,减少了因时间推移导致的根因确定结果不准确的情况,进一步提高了根因确定结果的准确性。
附图说明
19.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
20.图1为本申请实施例提供的一种根因确定系统的架构示意图;
21.图2为本申请实施例提供的一种变更数据及拆解示意图;
22.图3为本申请实施例提供的一种预警信息的维度信息示意图;
23.图4为本申请实施例提供的一种输出事件集合示意图;
24.图5为本申请实施例提供的一种根因定位方法流程图;
25.图6为本申请实施例提供的一种根据历史预警信息确定首次对第一预警信息指示的预警内容进行预警的第二预警信息的方法流程图;
26.图7为本申请实施例提供的一种比对第二预警信息的特征信息和目标变更数据的特性信息,得到第二预警信息和目标变更数据的关联信息的方法流程图;
27.图8为本申请实施例提供的一种根因确定装置的结构示意图;
28.图9为本申请实施例提供的一种根因确定方法所适用于的计算机设备的硬件结构框图。
具体实施方式
29.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
30.云技术(cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
31.云技术(cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
32.本申请涉及云技术中的跟因确定工具。示例性的,该根因确定工具可以为下文所述的互联网应用。
33.本申请实施例中,根因确定工具中涉及到的信息存储有关的内容可以采用区块链的方式实现。
34.区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
35.区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
36.平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
37.互联网平台提供的互联网业务复杂冗长,任何一个链路或节点的故障都可能引起大量的告警。现有技术通常是由运维人员花费大量时间寻找告警出现的原因,不仅人工成本高、定位效率低,而且人工定位依赖于个人主观意识、个人对互联网平台的熟悉程度以及
个人当时所处的环境和状态,往往存在根因确定不准确的情况。
38.一种实现方式,可以将本申请实施例提供的一种根因确定方法应用于第一互联网平台,以实现对第一互联网平台产生的预警信息的根因确定。
39.另一种实现方式,可以将本申请实施例提供的一种根因确定方法应用于第一互联网平台的运营分析和故障诊断平台(该运营分析和故障诊断平台可以称为第二互联网平台),由第二互联网平台实现对第一互联网平台产生的预警信息的根因确定。
40.示例性的,第一互联网平台可以为互联网在线广告平台,互联网播放平台、互联网即时通信平台等等,在此不做限定。
41.以上仅仅本申请实施例提供的一种根因确定方法的优选应用场景,有关本申请实施例提供的根因确定方法的具体应用场景,本领域技术人员可根据自己的需求进行设置,在此不做限定。
42.示例性的,以互联网在线广告平台为例,互联网在线广告平台的运营分析和故障诊断平台中现有监控配置千余条,覆盖了数以万计条曲线;广告业务复杂冗长,任何一个链路和节点的故障都可能引起大量的告警,业务和运维人员往往需要花费大量零碎的时间,在互联网在线广告平台的每个可能带来异常的变更中寻找告警出现的原因,而人工来定位则依赖个人思考问题的方式,对互联网在线广告平台的熟悉程度以及个人当时所处的环境和状态,进而导致问题可能不会被及时发现。
43.由此,本申请实施例提供一种根因确定方法、装置、计算机设备及存储介质,可以在告警产生后,能减少人工干预,快速准确的定位出告警产生的问题原因。
44.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
45.本申请实施例提供的一种根因确定方法应用于根因确定系统,根因确定系统应用于第一互联网平台/第二互联网平台以实现对告警信息的根因确定。
46.图1为本申请实施例提供的一种根因确定系统的架构示意图,如图1所示,本申请实施例提供的根因确定系统涉及到变更数据管理,预警信息处理以及根因匹配服务。
47.首先,变更数据管理部分可以认为应用于变更数据管理模块,变更数据管理部分负责:
48.1.将业务变更相关的日志数据,如业务版本发布信息,配置文件发布信息,其他业务相关的变更信息,结合变更信息和业务数据,对变更信息进行扩充后,拆解成维度值进行存储
49.2.业务相关机器的硬件信息(cpu,内存,io使用状态),进程信息等,对机器硬件状态进行判断,记录异常信息,并通过业务信息进行扩张后,拆解成维度值进行存储
50.3.变更数据通过维度和值的方式向模块外部提供服务
51.比如,为了将变更数据和预警信息之间可以建立关联关系,我们将变更数据拆解成维度,标签和说明。其中维度通常是标记数据中确切存在的属性,比如时间,系统名,服务,站点集,idc,ip等;标签是指通常情况下应该会具备的属性,比如ocpa实验层的实验都会被打上ocpa业务标签;说明则用于变更数据的解释备注,更多的作用是用于人工理解。对于互联网在线广告平台,外部相关的变更暂时无法拿到,内部相关变更数据及拆解如图2所示。
52.参见图2可知,变更数据的来源入口可以为业务层、网络层或机器层。即,变更数据可能是响应业务层的变更生成(即,响应业务的变更生成),或者,响应网络层的变更生成(即,响应网络的变更生成),或者响应机器层的变更生成(即,响应机器的变更生成)。
53.示例性的,变更数据在业务层的来源入口可以为:实验系统、leflow、模型平台、广告位管理系统、featrue flag、配置发布cc、调价白名单、小叮当等。比如,变更数据可能是响应实验系统变更生成、响应leflow的变更生成、响应模型平台变更生成、响应广告位管理系统的变更生成、响应featrue flag的变更生成、响应配置发布cc的变更生成、响应调价白名单的变更生成、响应小叮当的变更生成。
54.示例性的,变更数据在网络层的来源入口可以为:网络故障信息、l5变更信息、set变更信息。比如,变更数据可能是响应网络故障信息生成、响应 l5变更信息生成、响应set变更信息生成。
55.示例性的,变更数据在机器层的来源入口可以为:机器上下线、机器故障、进程crash。比如,变更数据可能是响应机器上下线生成、响应机器故障生成、响应进程crash生成。
56.以上仅仅是本申请实施例提供的变更数据的优选来源入口,有关变更数据的具体来源入口本领域技术人员可根据自己的需求进行设置,在此不做限定。
57.需要说明的是,可以将标签和说明也均认为是维度。变更数据中除了包括维度的特征信息,还可以包括指标的特征信息。其中,维度也可以称为维度特征,指标可以称为指标特征,维度特征的特征信息可以称为维度信息,指标特征的特征信息可以称为指标信息。
58.以互联网在线广告平台为例,互联网在线广告平台的指标可以为广告曝光率、广告点击率等。以上仅仅是本申请实施例提供的互联网在线广告平台的指标的优选内容,有关互联网在线广告平台的指标的具体内容,本领域技术人员可根据自己的需求进行设置,在此不做限定。
59.预警信息处理应用于预警信息处理模块,预警信息处理模块负责两个事情:
60.1.拆分预警信息中的维度信息
61.比如,一个在22点发生的服务失败率的预警信息,经过处理后得到该预警信息的维度信息如图3所示。
62.2.根据预警信息中的非时间维度信息,找到该类预警的首次预警时间
63.3.将首次预警时间,预警发生的其他非时间维度信息结合在一起,作为输入预警向根因匹配服务模块发送根因确定请求。
64.一种实现方式,在拆分出预警信息(该预警信息可以称为第一预警信息) 中的维度信息后,维度信息中包括时间维度信息和非时间维度信息,找出首次发出该非时间维度信息的预警信息(该预警信息也可以称为第二预警信息),将首次发出该非时间维度信息的预警信息作为输入预警向根因匹配服务模块发送根因确定请求。其中,时间维度的特征信息可以认为是时间维度信息,第一预警信息的时间维度信息可以认为是该第一预警信息的预警时间。
65.示例性的,首次预警的计算方式可以为:对于收到的告警信息进行存储,当收到新告警时,将该告警的维度、指标、业务id与历史的预警信息作比对,以上三者相同时,且发生时间差小于3*预警检测周期时,认为本次预警与该次警具备同样的首次告警出现时间,并
以上次预警首次出现时间相同;如大于等于,则本次预警即为首次预警时间。
66.最后,根因匹配服务应用于根因匹配服务模块,根因匹配服务模块负责:
67.1.接收输入的根因确定请求,根据不同的业务选择需要匹配的数据变更项,从变更数据管理模块中获取变更查找的变更事件集。
68.示例性的,变更数据也可以称为变更事件,从变更数据管理模块中获取的变更事件集可以认为是至少一条目标变更数据。
69.2.根据预警信息发出的业务,对不同维度的数据进行匹配,不同的维度有不同的权重,不同的维度本身会有包含或者交叉关系,这些会在匹配服务中处理,最终对每个事件进行打分分级
70.3.对变更事件集,按照根因匹配服务的匹配步骤2中的打分分级结果,按照从相关性从高到低进行排列,选择需要的集合,输出作为最终整个服务匹配到的事件集。
71.示例性的,以对于图3中的预警信息为例,最终匹配输出的事件集合如图4所示。
72.进一步的,本申请实施例提供的根因确定系统对外暴露的服务主要包括变更数据查询请求和响应,目前提供基于hppt+json的接口,其他格式的接口需要会根据后续需求决定。
73.变更数据查询请求:
74.示例性的,变更数据查询请求可以认为是根因确定请求,为了兼容多种告警业务数据,查询变更请求需要考虑告警业务的多样性,请求的格式可以为
[0075][0076]
以上仅仅是本申请实施例提供的一种变更数据查询请求的格式的优选内容,有关变更数据查询请求的格式具体内容,本领域技术人员可根据自己的需求进行设置,在此不做限定。
[0077]
查询变更数据响应:
[0078]
查询变更数据响应可以认为是根因确定请求的根因确定结果。变更数据的响应,则需要依据变更源系统的不同而不同。响应格式为
[0079]
[0080][0081]
本申请实施例提供一种根因确定系统,该根因确定系统可以实现对预警信息的根因的自动确定,不需要依赖于人工对预警信息进行根因定位;相对于现有的人工根因定位方式而言,降低了根因定位人工成本、提高了根因定位效率及根因定位准确性。
[0082]
下面结合上述实施例对本申请实施例提供的一种根因确定系统说明,对本申请实施例提供的一种根因确定方法进行详细介绍。
[0083]
图5为本申请实施例提供的一种根因定位方法流程图。
[0084]
如图5所示,该方法包括:
[0085]
s501、接收根因确定请求,获取根因确定请求指示的待进行根因确定的第一预警信息;
[0086]
用户可以在终端上安装互联网应用,互联网应用可以为第一互联网平台或第二互联网平台,互联网应用可以向用户展示互联网平台的预警信息。示例性的,若互联网应用为第一互联网平台,互联网应用可以展示第一互联网平台的预警信息;若互联网应用为第一互联网平台的运营分析和故障诊断平台(该运营分析和故障诊断平台可以称为第二互联网平台),互联网应用可以展示第一互联网平台的预警信息。
[0087]
相应的,用户可以从互联网应用展示的预警信息中选取待进行根因确定的预警信息,为了便于区分,可以将待进行根因确定的预警信息称为第一预警信息;并根据第一预警信息向互联网应用发送根因确定请求,该根因确定请求指示第一预警信息。
[0088]
s502、根据历史预警信息确定首次对第一预警信息指示的预警内容进行预警的第二预警信息;
[0089]
图6为本申请实施例提供的一种根据历史预警信息确定首次对第一预警信息指示的预警内容进行预警的第二预警信息的方法流程图。
[0090]
如图6所示,该方法包括:
[0091]
s601、确定互联网平台的至少一个业务中产生当前第一预警信息的目标业务;
[0092]
示例性的,互联网应用接收到根因确定请求,获取根因确定请求指示的待进行根因确定的第一预警信息后,可以确定产生第一预警信息的互联网平台。不论互联网应用为第一互联网平台还是第二互联网平台,产生第一预警信息的互联网平台均可以认为是第一互联网平台。
[0093]
因互联网平台提供一个或多个业务,互联网平台提供的一个或多个业务可以称为至少一个业务。互联网应用接收到根因确定请求后,获取根因确定请求指示的待进行根因确定的第一预警信息,并确定至少一个业务中产生当前该第一预警信息的业务,为了便于区分,将产生当前该第一预警信息的业务称为目标业务。
[0094]
s602、获取目标业务的预警检测周期;
[0095]
示例性的,针对至少一个业务中的每个业务,预先设置有该业务的预警检测周期,进而在确定目标业务后,获取目标业务的预警检测周期。不同业务的预警检测周期可以相同,也可以不同,在此不做限定。
[0096]
s603、确定指示的预警内容与当前第一预警信息指示的预警内容相同且预警时间距离当前第一预警信息的预警时间最近的历史预警信息;
[0097]
示例性的,第一预警信息携带的业务id、维度信息和指标信息可以认为是第一预警信息指示的预警内容。需要说明的是,预警信息携带的业务id为互联网平台中产生该预警信息的业务的唯一标识信息。当前第一预警信息携带的业务id可以认为是目标业务的id。
[0098]
以预警内容为业务id、维度信息和指标信息为例,如果两个预警信息不仅携带的
业务id相同,而且携带的维度信息相同且携带的指标信息也相同,则可以认为两个预警信息指示的预警内容相同。
[0099]
本申请实施例中,预警信息还携带有预警时间,预警信息的预警时间表征互联网平台产生预警信息的时间。预警信息携带的时间维度的特征信息可以认为是预警信息携带的预警时间。
[0100]
比如,互联网平台的目标业务因某个原因产生一个预警信息后,如果间隔目标业务的预警检测周期该原因还未解决,则目标业务还会在产生一个预警信息。这两个预警信息指示的预警内容相同,但是携带的预警时间不同。
[0101]
s604、判断当前第一预警信息的预警时间与当前历史预警信息的预警时间之间的时间间隔是否满足目标条件;如果当前第一预警信息的预警时间与当前历史预警信息的预警时间之间的时间间隔满足目标条件,执行步骤s605;如果当前第一预警信息的预警时间与当前历史预警信息的预警时间之间的时间间隔不满足目标条件,执行步骤s606;
[0102]
示例性的,计算当前第一预警信息的预警时间和当前所确定的历史预警信息的预警时间之间的时间间隔,判断该时间间隔是否小于目标时间间隔;如果该时间间隔小于目标时间间隔,则确定当前第一预警信息的预警时间与当前历史预警信息的预警时间之间的时间间隔满足目标条件;如果该时间间隔不小于目标时间间隔,则确定当前第一预警信息的预警时间与当前历史预警信息的预警时间之间的时间间隔不满足目标条件。
[0103]
本申请实施例中,目标条件与预警检测周期有关。示例性的,目标时间间隔可以为目标业务的预警检测周期的预设倍数。预设倍数可以为3倍、5倍等,在此不做限定。以目标业务的预警检测周期为2天、预设倍数为3倍为例,目标时间间隔可以为6天。
[0104]
以上仅仅是本申请实施例提供的目标条件的优选内容,有关目标条件的具体内容,本领域技术人员可根据自己的需求进行设置,在此不做限定。
[0105]
s605、将第一预警信息更新为当前历史预警信息,并返回执行步骤s603;
[0106]
本申请实施例中,如果当前第一预警信息的预警时间与当前所确定的历史预警信息的预警时间之间的时间间隔满足目标条件,则可以将当前所确定的历史预警信息作为新的第一预警信息。比如,如果当前第一预警信息为预警信息1,当前所确定的历史预警信息为预警信息2,如果预警信息1的预警时间和预警信息2的预警时间之间的时间间隔满足目标条件,则当前的第一预警信息更新为预警信息2。
[0107]
s606、将当前第一预警信息确定为第二预警信息。
[0108]
本申请实施例,如果当前第一预警信息的预警时间与当前所确定的历史预警信息的预警时间之间的时间间隔不满足目标条件,则可以将当前第一预警信息确定为第二预警信息。比如,如果当前第一预警信息为预警信息1,当前所确定的历史预警信息为预警信息2,如果预警信息1的预警时间和预警信息2的预警时间之间的时间间隔不满足目标条件,则可以确定第二预警信息为预警信息1。
[0109]
示例性的,以当前第一预警信息为预警信息1、当前历史预警信息为预警信息2为例,如果预警信息1的预警时间与预警信息2的预警时间之间的时间间隔不满足目标条件,将预警信息1确定为第二预警信息;如果预警信息1 的预警时间与预警信息2的预警时间之间的时间间隔满足目标条件,将预警信息2确定为当前的第一预警信息,并返回执行步骤s603,确定指示的预警内容与预警信息2指示的预警内容相同且预警时间距离预警信息2的
预警时间最近的历史预警信息(为了便于区分,可以将该历史预警信息称为预警信息3),进而判断预警信息2的预警时间与预警信息3的预警时间之间的时间间隔是否满足目标条件;如果预警信息2的预警时间与预警信息3的预警时间之间的时间间隔不满足目标条件,将预警信息2确定为第二信息;如果预警信息2的预警时间与预警信息3的预警时间之间的时间间隔满足目标条件,将预警信息3确定为当前的第一预警信息,并返回执行步骤s603

以此类推。
[0110]
以上仅仅是本申请实施例提供的一种确定第二预警信息的优选方式,有关确定第二预警信息的具体方式,本领域技术人员可根据自己的需求进行设置,在此不做限定。
[0111]
s503、从变更数据集中确定用于作为第二预警信息的候选根因的至少一条目标变更数据,变更数据集包括响应互联网平台的业务、机器或网络中任意一项或多项的变更生成的变更数据,目标变更数据指示的变更时间与第二预警信息的预警时间存在关联关系;
[0112]
本申请实施例,可以获取预先设置的目标业务的目标时长;从变更数据集中获取变更时间早于第二预警信息的预警时间的至少一条变更数据;从至少一条变更数据中确定变更时间与第二预警信息的预警时间之间的时间间隔小于目标时长的目标变更数据,目标变更数据用于作为第二预警信息的候选根因。
[0113]
示例性的,变更数据管理模块管理的所有变更数据可以看成是一个变更数据集,可以从变更数据集中获取至少一条目标变更数据,至少一条目标变更数据可以认为构成了变更事件集。
[0114]
示例性的,变更数据携带时间维度,变更数据携带的时间维度的特征信息可以认为是变更时间,变更数据携带的变更时间指示变更数据的产生时间。本申请实施例,互联网平台发生变更的时间和响应变更产生互联网平台的变更数据的时间之间的时间间隔可以忽略不计。
[0115]
s504、根据第二预警信息指示的预警特征和目标变更数据指示的变更特征,计算第二预警信息和目标变更数据之间的关联信息;
[0116]
示例性的,可以将第二预警信息携带的所有特征信息认为是第二预警信息指示的预警特征;可以将目标变更数据携带的所有特征信息认为是目标变更数据指示的变更特征。进一步的,预警信息和变更数据中均可以携带有业务id,业务id可以认为是业务这一维度的特征信息。
[0117]
本申请实施例,针对第二预警信息而言,不论是第二预警信息中的维度特征,还是第二预警信息中的指标特征,均可以称为预警特征,可以获取第二预警信息中携带的所有预警特征的特征信息。
[0118]
针对目标变更数据而言,不论是目标变更数据中的维度特征,还是第二预警信息中的指标特征,均可以称为变更特征,可以获取目标变更数据中携带的所有变更特征的特征信息。
[0119]
进一步的,比对第二预警信息的特征信息和目标变更数据的特性信息,便可得到第二预警信息和目标变更数据之间的关联信息。
[0120]
下面结合图7对本申请实施例提供的一种比对第二预警信息的特征信息和目标变更数据的特性信息,得到第二预警信息和目标变更数据之间的关联信息的方法进行详细说明。
[0121]
如图7所示,该方法包括:
[0122]
s701、确定预先设置的与目标业务匹配的目标特征;
[0123]
示例性的,预先设置的与目标业务匹配的目标特征的数量可以为一个或多个,目标特征可以为维度特征或指标特征。比如,与目标业务匹配的目标特征包括两个维度特征和一个指标特征,这两个维度特征分别为维度特征1 和维度特征2,这一个指标特征为指标特征1。
[0124]
示例性的,以一个特征(不论该特征是维度特征还是指标特征)为例,可以将特征看成key,将该特征的特征信息看成是value,由该key和该value 构成一个键值对。
[0125]
s702、若第二预警信息在目标特征的特征信息和目标变更数据在目标特征的特征信息不相同,或者,若第二预警信息和目标变更数据不存在特征信息相同的维度特征,或者,若第二预警信息和目标变更数据不存在特征信息相同的指标特征,确定目标变更数据处于第一等级;
[0126]
s703、若第二预警信息和目标变更数据之间,既存在特征信息相同的维度特征,也存在特征信息不相同的维度特征,确定目标变更数据处于第二等级;
[0127]
s704、若目标变更数据包括第二预警信息中所有维度特征的特征信息,确定目标变更数据处于第三等级;
[0128]
s705、若第二预警信息包括目标变更数据中所有维度特征的特征信息,确定目标变更数据处于第四等级;其中,目标变更数据处于的等级越高表征目标变更数据与第二预警信息之间的关联程度越高。
[0129]
示例性的,第一等级、第二等级、第三等级和第四等级的等级依次升高。即,第四等级高于第三等级,第三等级高于第二等级,第二等级高于第一等级。
[0130]
结合图7可知,第二预警信息与目标变更数据的关联信息可以通过基于第二预警信息确定的该目标变更数据所处的等级表示,该目标变更数据所处的等级越高,表明该目标变更数据和第二预警信息之间的关联程度越高。
[0131]
s505、基于第二预警信息分别与至少一条目标变更数据中每条目标变更数据之间的关联信息,生成第一预警信息的根因确定结果。
[0132]
本申请实施例,针对至少一条目标变更数据中的每条目标变更数据而言,在计算出第二预警信息和该条目标变更数据之间的关联信息后,可以基于第二预警信息分别和每条目标变更数据之间的关联信息,生成第二预警信息的根因确定结果;该第二预警信息的根因确定结果便是第一预警信息的根因确定结果。
[0133]
示例性的,可以按照目标变更数据的变更时间从晚到早的顺序,对至少一条目标变更数据中属于同一等级的各条目标变更数据进行排序,生成该等级的变更数据序列;按照等级从高到低的顺序,对各个等级的变更数据序列进行排序,以生成第一预警信息的根因确定结果。
[0134]
比如,从至少一条目标变更数据中确定处于第一等级的所有目标变更数据,并对处于第一等级的所有目标变更数据按照变更时间从晚到早的顺序进行排序得到第一等级的变更数据序列1;从至少一条目标变更数据中确定处于第二等级的所有目标变更数据,并对处于第二等级的所有目标变更数据按照变更时间从晚到早的顺序进行排序得到第二等级的变更数据序列2;从至少一条目标变更数据中确定处于第三等级的所有目标变更数据,
并对处于第三等级的所有目标变更数据按照变更时间从晚到早的顺序进行排序得到第三等级的变更数据序列3;从至少一条目标变更数据中确定处于第四等级的所有目标变更数据,并对处于第四等级的所有目标变更数据按照变更时间从晚到早的顺序进行排序得到第四等级的变更数据序列4;根据变更数据序列4、变更数据序列3、变更数据序列2和变更数据序列1生成第二预警信息的根因确定结果,该根因确定结果也可以认为是第一预警信息的根因确定结果。其中,根因确定结果由依次排序的变更数据序列4、变更数据序列3、变更数据序列2 和变更数据序列1构成。
[0135]
进一步的,本申请实施例提供的一种根因确定方法,还可以针对每个等级,获取预先设置的该等级的变更数据条数,从该等级的变更数据序列中依次获取排序靠前的该变更数据条数个目标变更数据,生成该等级的目标变更数据序列。
[0136]
相应的,按照等级从高到低的顺序,对各个等级的变更数据序列进行排序,以生成第一预警信息的根因确定结果,包括:按照等级从高到低的顺序,对各个等级的目标变更数据序列进行排序,以生成第一预警信息的根因确定结果。
[0137]
仍以上述为例,在确定第一等级的变更数据序列1、第二等级的变更数据序列2、第三等级的变更数据序列3以及第四等级的变更数据序列4以后,如果第一等级的变更数据条数为2,第二等级的变更数据条数为2,第三等级的变更数据条数为3,第四等级的变更数据条数为5,则变更数据序列中1依次排序的前两条目标变更数据构成第一等级的目标变更数据序列1,变更数据序列2中依次排序的前两条目标变更数据构成第二等级的目标变更数据序列2,变更数据序列3中依次排序的前三条目标变更数据构成第三等级的目标变更数据序列3,变更数据序列4中依次排序的前五条目标变更数据构成第四等级的目标变更数据序列4;进而根据目标变更数据序列1、目标变更数据序列2、目标变更数据序列3和目标变更数据序列4生成第一预警信息的根因确定结果,该根因确定结果由依次排序的目标变更数据序列4、目标变更数据序列3、目标变更数据序列2和目标变更数据序列1构成。
[0138]
下面结合具体实例对本申请实施例提供的一种比对第二预警信息的特征信息和目标变更数据的特性信息,得到第二预警信息和目标变更数据之间的关联信息;基于第二预警信息分别与至少一条目标变更数据中每条目标变更数据之间的关联信息,以生成第一预警信息的根因确定结果的方法进行说明。
[0139]
本申请实施例提供的一种比对第二预警信息的特征信息和目标变更数据的特性信息,得到第二预警信息和目标变更数据之间的关联信息的方法可以认为是分级算法,分级算法通过计算第二预警信息和目标变更数据的特征信息的关系,对特定的第二预警信息,将目标变更数据分为a,b,c,d四个等级,并且每个等级对第二预警信息产生影响的可能性从高依次到低。
[0140]
示例性的,d级可以认为是第一等级,c级可以认为是第二等级,b级可以认为是第三等级,a级可以认为是第四等级。
[0141]
【step 1】
[0142]
输入指标数据记为:inputmetricset
[0143]
输入维度数据记为:inputdimensionset
[0144]
变更指标数据记为:changemetricset
[0145]
变更维度数据记为:changedimensionset
[0146]
示例性的,第二预警信息的所有指标数据可以认为是inputmetricset,第二预警信息的所有维度数据可以认为是inputdimensionset;目标变更数据的所有指标数据可以认为是changemetricset,目标变更数据的所有维度数据可以认为是changedimensionset。
[0147]
【step 2】
[0148]
若配置了必须匹配的指标数据,计算inputmetricset和changemetricset的交集,若为空,则记录本次匹配结果为'd',结束
[0149]
【step 3】
[0150]
计算inputdimensionset和changedimensionset的交集,记为 intersectionset。
[0151]
若交集为空,则本次匹配结果为'd',结束
[0152]
【step 4】
[0153]
若配置了必须匹配的维度数据,且intersectionset不含有该维度值,则本次匹配结果为'd',结束
[0154]
【step 5】
[0155]
若changedimensionset是inputdimensionset的子集,则本次匹配结果为'a', 结束
[0156]
若inputdimensionset是changedimensionset的子集,则本次匹配结果为'b', 结束
[0157]
若inputdimensionset和changedimensionset既有交集,又各自有差异,则本次匹配结果为'c',结束
[0158]
需要说明的是,必须匹配的指标数据和必须匹配的维度数据均可以认为是目标特征的特征信息。
[0159]
本申请实施例提供的一种基于第二预警信息分别与至少一条目标变更数据中每条目标变更数据之间的关联信息,生成第一预警信息的根因确定结果的方法可以认为是分级内排序及输出方法。
[0160]
分级内排序
[0161]
对于一次输入请求,获取到变更列表(即变更事件集),并对每次变更事件进行分级。对于分级后的每个事件集合中,采用事件发生的顺序进行排序,事件后发生的始终排在最前面。
[0162]
输出
[0163]
对于一个输入请求,依次经过分级和分级内排序后,按如下方式进行输出
[0164]
记结果集合resultlist为空
[0165]
【step1】
[0166]
优先输入'a'级变更,并按事件发生的时间顺序依次添加到resultlist尾部
[0167]
【setp2】
[0168]
查看结果是否满足请求中匹配的事件数量,若满足,则返回resultlist;否则将'b'级变更按事件发生的时间顺序依次添加到resultlist尾部
[0169]
【step3】
[0170]
查看结果是否满足请求中匹配的事件数量,若满足,则返回resultlist;否则将'c'级变更按事件发生的时间顺序依次添加到resultlist尾部
[0171]
【step 4】
[0172]
若没有匹配到任何变更事件,返回空
[0173]
本申请实施例提供的一种根因确定方法的实现过程依赖于对配置数据的配置,配置数据主要存储在mysql中,如下。
[0174]
实验信息映射表
[0175]
表名:tbl_exp_map
[0176]
简介:该表维护实验层与其可能影响的服务和指标信息
[0177]
字段类型说明fexplayeridunsigned int实验层idfexplayernamevarchar(512)实验层名字fdimensionkeyvarchar(128)影响的维度名fdimensionvaluesvarchar(256)影响的维度值,多个值用;分割fmetricvarchar(64)影响的指标名fmetricweightunsigned int对指标影响的权重,以100为基数
[0178]
leflow模块信息映射表
[0179]
表名:tbl_leflow_map
[0180]
简介:该表维护leflow中的模块,与对应的服务,环境等信息
[0181]
字段类型说明fidunsigned intid,主keyfmodulenamevarchar(256)模块名,唯一keyfserversvarchar(256)映射的服务,多个值以;号分割fenvvarchar(32)环境
[0182]
接入业务配置表
[0183]
表名:tbl_busz_config
[0184]
简介:该表维护业务接入根因定位系统所分配的业务id,所需要归因匹配的维度,以及指标数据
[0185][0186]
进一步的,本申请实施例为了更好的可视化,以及提供搜索查询功能,变更数据的
存储使用了elasticsearch,其存储的模版如下:
[0187]
[0188]
[0189][0190]
后续,随着接入的业务系统的增多,可以根据业务系统的情况对该模版进行扩充。以上仅仅是本申请实施例提供的一种变更数据存储模板的优选内容,有关变更数据存储模板的具体内容,本领域技术人员可根据自己的需求进行设置,在此不做限定。
[0191]
更进一步的,本申请实施例提供的一种根因确定方法还可以实现容灾及扩展性。
[0192]
示例性的,容灾主要涉及到的是无状态服务的集群、故障预警等。
[0193]
示例性的,扩展性主要涉及到的是设计上保留功能的扩展。
[0194]
以上仅仅是本申请实施例提供的容灾和扩展性的优选内容,有关容灾和扩展性的具体内容,本领域技术人员可根据自己的需求进行设置,在此不做限定。
[0195]
本申请提供了一种快速高效定位预警根因的方法,在业务故障告警的同时将最可能发生问题的原因快速定位出来,大大缩短了人工查找问题的时间,加速了问题修复效率,为业务的可用性提高提供了有效的工具支撑。
[0196]
图8为本申请实施例提供的一种根因确定装置的结构示意图。
[0197]
如图8所示,该装置包括:
[0198]
请求接收单元801,用于接收根因确定请求,获取根因确定请求指示的待进行根因确定的第一预警信息;
[0199]
首次预警确定单元802,用于根据历史预警信息确定首次对第一预警信息指示的预警内容进行预警的第二预警信息;
[0200]
目标变更数据确定单元803,用于从变更数据集中确定用于作为第二预警信息的候选根因的至少一条目标变更数据,变更数据集包括响应互联网平台的业务、机器或网络中任意一项或多项的变更生成的变更数据,目标变更数据指示的变更时间与第二预警信息
的预警时间存在关联关系;
[0201]
关联信息计算单元804,用于根据第二预警信息指示的预警特征和目标变更数据指示的变更特征,计算第二预警信息和目标变更数据之间的关联信息;
[0202]
结果生成单元805,用于基于第二预警信息分别与至少一条目标变更数据中每条目标变更数据之间的关联信息,生成第一预警信息的根因确定结果。
[0203]
本申请实施例中,优选的,首次预警确定单元包括:
[0204]
目标业务确定单元,用于确定互联网平台的至少一个业务中产生当前第一预警信息的目标业务;
[0205]
预警检测周期获取单元,用于获取目标业务的预警检测周期;
[0206]
历史预警信息确定单元,用于确定指示的预警内容与当前第一预警信息指示的预警内容相同且预警时间距离当前第一预警信息的预警时间最近的历史预警信息;
[0207]
判断单元,用于判断当前第一预警信息的预警时间与当前历史预警信息的预警时间之间的时间间隔是否满足目标条件,目标条件与预警检测周期有关;
[0208]
第一执行单元,用于如果当前第一预警信息的预警时间与当前历史预警信息的预警时间之间的时间间隔满足目标条件,将第一预警信息更新为当前历史预警信息,并返回历史预警信息确定单元;
[0209]
第二执行单元,用于如果当前第一预警信息的预警时间与当前历史预警信息的预警时间之间的时间间隔不满足目标条件,将当前第一预警信息确定为第二预警信息。
[0210]
本申请实施例中,优选的,目标变更数据确定单元包括:
[0211]
目标时长获取单元,用于获取预先设置的目标业务的目标时长;
[0212]
变更数据获取单元,用于从变更数据集中获取变更时间早于第二预警信息的预警时间的至少一条变更数据;
[0213]
目标变更数据确定子单元,用于从至少一条变更数据中确定变更时间与第二预警信息的预警时间之间的时间间隔小于目标时长的目标变更数据,目标变更数据用于作为第二预警信息的候选根因。
[0214]
本申请实施例中,优选的,关联信息计算单元包括:
[0215]
第一特征信息获取单元,用于获取第二预警信息携带的至少一个预警特征中每个预警特征的特征信息,至少一个预警特征包括互联网平台的维度特征和指标特征中的任意一项或多项;维度特征指示业务、机器或网络;
[0216]
第二特征信息获取单元,用于确定目标变更数据携带的至少一个变更特征中每个变更特征的特征信息,至少一个变更特征包括互联网平台的维度特征和指标特征中的任意一项或多项;
[0217]
计算单元,用于比对第二预警信息的特征信息和目标变更数据的特性信息得到第二预警信息和目标变更数据的关联信息。
[0218]
本申请实施例中,优选的,计算单元包括:
[0219]
目标特征确定单元,用于确定预先设置的与目标业务匹配的目标特征;
[0220]
第一确定单元,用于若第二预警信息在目标特征的特征信息和目标变更数据在目标特征的特征信息不相同,或者,若第二预警信息和目标变更数据不存在特征信息相同的维度特征,或者,若第二预警信息和目标变更数据不存在特征信息相同的指标特征,确定目
标变更数据处于第一等级;
[0221]
第二确定单元,用于若第二预警信息和目标变更数据之间,既存在特征信息相同的维度特征,也存在特征信息不相同的维度特征,确定目标变更数据处于第二等级;
[0222]
第三确定单元,用于若目标变更数据包括第二预警信息中所有维度特征的特征信息,确定目标变更数据处于第三等级;
[0223]
第四确定单元,用于若第二预警信息包括目标变更数据中所有维度特征的特征信息,确定目标变更数据处于第四等级;
[0224]
其中,目标变更数据处于的等级越高表征目标变更数据与第二预警信息之间的关联程度越高。
[0225]
本申请实施例中,优选的,结果生成单元,包括:
[0226]
变更数据序列生成单元,用于按照目标变更数据的变更时间从晚到早的顺序,对至少一条目标变更数据中属于同一等级的各条目标变更数据进行排序,生成等级的变更数据序列;
[0227]
结果生成子单元,用于按照等级从高到低的顺序,对各个等级的变更数据序列进行排序,以生成第一预警信息的根因确定结果。
[0228]
进一步的,本申请实施例提供的一种结果生成单元还包括:
[0229]
目标变更数据序列生成单元,用于针对每个等级,获取预先设置的该等级的变更数据条数,从该等级的变更数据序列中依次获取排序靠前的该变更数据条数个目标变更数据,生成该等级的目标变更数据序列;
[0230]
相应的,结果生成子单元,具体用于按照等级从高到低的顺序,对各个等级的目标变更数据序列进行排序,以生成第一预警信息的根因确定结果。
[0231]
如图9所示,为本申请实施例提供的计算机设备的一种实现方式的结构图,该计算机设备包括:
[0232]
存储器901,用于存储程序;
[0233]
处理器902,用于执行程序,程序具体用于:
[0234]
接收根因确定请求,获取根因确定请求指示的待进行根因确定的第一预警信息;
[0235]
根据历史预警信息确定首次对第一预警信息指示的预警内容进行预警的第二预警信息;
[0236]
从变更数据集中确定用于作为第二预警信息的候选根因的至少一条目标变更数据,变更数据集包括响应互联网平台的业务、机器或网络中任意一项或多项的变更生成的变更数据,目标变更数据指示的变更时间与第二预警信息的预警时间存在关联关系;
[0237]
根据第二预警信息指示的预警特征和目标变更数据指示的变更特征,计算第二预警信息和目标变更数据之间的关联信息;
[0238]
基于第二预警信息分别与至少一条目标变更数据中每条目标变更数据之间的关联信息,生成第一预警信息的根因确定结果。
[0239]
处理器902可能是一个中央处理器cpu,或者是特定集成电路asic (application specific integrated circuit)。
[0240]
控制设备还可以包括通信接口903以及通信总线904,其中,存储器901、处理器902以及通信接口903通过通信总线904完成相互间的通信。
[0241]
本申请实施例还提供了一种可读存储介质,其上存储有计算机程序,计算机程序被处理器加载并执行,实现上述的根因确定方法的各步骤,具体实现过程可以参照上述实施例相应部分的描述,本实施例不做赘述。
[0242]
本申请还提出了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述根因确定方法方面或根因确定装置方面的各种可选实现方式中所提供方法,具体实现过程可以参照上述相应实施例的描述,不做赘述。
[0243]
本申请提供一种根因确定方法、装置、计算机设备及存储介质,在获取待进行根因确定的第一预警信息后,从历史预警信息中获取首次对第一预警信息指示的预警内容进行预警的第二预警信息,进而依赖于第二预警信息和变更数据集生成第一预警信息的根因确定结果。本申请提供的根因确定方式可以实现对第一预警信息根因的自动确定,相对于现有人工根因确定方式而言,可以降低根因确定的人工成本、提高根因确定效率,并且,因不需要依赖于个人主观意识、个人对互联网平台的熟悉程度以及个人当时所处的环境和状态,实现对预警信息的根因的确定,可以提高根因确定结果的准确性。进一步的,本申请在确定第一预警信息后,并未直接利用第一预警信息来实现根因确定,而是利用历史上首次对第一预警信息指示的预警内容进行预警的第二预警信息实现对第一预警信息的根因确定,减少了因时间推移导致的根因确定结果不准确的情况,进一步提高了根因确定结果的准确性。
[0244]
以上对本发明所提供的一种根因确定方法、装置、计算机设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
[0245]
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0246]
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0247]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一
致的最宽的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1