组件分析方法及相关装置制造方法及图纸

技术编号:33953831 阅读:24 留言:0更新日期:2022-06-29 23:02
本申请公开了一种组件分析方法及相关装置,所述组件分析方法包括:接收第一组件的第一指标的异常信息;判断所述第一组件是否未调用其他组件或者所述第一组件调用的所述其他组件的第一指标是否均未发生异常;其中,所述其他组件的个数为至少一个;若是,则判定所述第一指标的异常是由于所述第一组件导致;否则,获得被所述第一组件调用且所述第一指标发生异常的第二组件,将所述第二组件作为第一组件,并返回至判断所述第一组件是否未调用其他组件或者所述第一组件调用的所述其他组件的第一指标是否均未发生异常的步骤。通过上述方式,本申请能够定位到导致系统或组件异常的根因。因。因。

【技术实现步骤摘要】
组件分析方法及相关装置


[0001]本申请属于互联网
,具体涉及一种组件分析方法及相关装置。

技术介绍

[0002]随着计算机和互联网技术的不断发展,容器化技术的出现有效地解决了不同组件之间的环境隔离、资源限制等难题,加速了组件在分布式计算环境中的大规模部署、动态迁移和弹性伸缩。但同时,这些组件在分布式环境中的部署位置和实例数量变得不确定。组件复杂、高频的动态迁移和弹性伸缩,以及海量的用户并发访问,给系统的稳定性保障带来了严峻的考验,组件部署位置和实例数量的不确定性加剧了系统排障的难度。
[0003]目前,常见的排障系统在分布式计算环境下,往往很难精确定位到系统或组件异常的根因,排障时间较长,导致系统可用性降低。

技术实现思路

[0004]本申请提供一种组件分析方法及相关装置,以精确定位到导致系统或组件异常的根因。
[0005]为解决上述技术问题,本申请采用的一个技术方案是:提供一种组件分析方法,包括:接收第一组件的第一指标的异常信息;判断所述第一组件是否未调用其他组件或者所述第一组件调用的所述其他组件的第一指标是否均未发生异常;其中,所述其他组件的个数为至少一个;若是,则判定所述第一指标的异常是由于所述第一组件导致;否则,获得被所述第一组件调用且所述第一指标发生异常的第二组件,将所述第二组件作为第一组件,并返回至判断所述第一组件是否未调用其他组件或者所述第一组件调用的所述其他组件的第一指标是否均未发生异常的步骤。
[0006]为解决上述技术问题,本申请采用的一个技术方案是:提供一种组件分析装置,包括:接收模块,用于接收第一组件的第一指标的异常信息;判断模块,用于判断所述第一组件是否未调用其他组件或者所述第一组件调用的所述其他组件的第一指标是否均未发生异常;其中,所述其他组件的个数为至少一个;第一判定模块,与所述判断模块连接,用于在所述判断模块判断结果为是时,判定所述第一指标的异常是由于所述第一组件导致;第二判定模块,与所述判断模块连接,用于在所述判断模块判断结果为否时,获得被所述第一组件调用且所述第一指标发生异常的第二组件,将所述第二组件作为第一组件,并返回至判断所述第一组件是否未调用其他组件或者所述第一组件调用的所述其他组件的第一指标是否均未发生异常的步骤。
[0007]为解决上述技术问题,本申请采用的一个技术方案是:提供一种电子设备,包括相互耦接的存储器和处理器,所述存储器中存储有程序指令,所述处理器用于执行所述程序指令以实现上述任一实施例中所述的组件分析方法。
[0008]为解决上述技术问题,本申请采用的另一个技术方案是:提供一种存储装置,存储有能够被处理器运行的程序指令,所述程序指令用于实现上述任一实施例中所述的组件分
析方法。
[0009]区别于现有技术情况,本申请的有益效果是:本申请可以对存在调用关系的链路上的组件进行遍历,定位出导致异常发生的根因组件,以提高排障效率,缩短故障恢复的时间,提升系统的可用性。
附图说明
[0010]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图,其中:
[0011]图1为本申请组件分析方法一实施方式的流程示意图;
[0012]图2为本申请组件分析方法另一实施方式的流程示意图;
[0013]图3a为权重矩阵初始化后一实施方式的结构示意图;
[0014]图3b为基于第一个时间子段进行统计一实施方式的结构示意图;
[0015]图3c为基于所有时间子段进行统计后一实施方式的结构示意图;
[0016]图4为本申请组件分析方法另一实施方式的流程示意图;
[0017]图5为本申请组件分析方法另一实施方式的流程示意图;
[0018]图6为本申请组件分析装置一实施方式的结构示意图;
[0019]图7为本申请电子设备一实施方式的结构示意图;
[0020]图8为本申请存储装置一实施方式的结构示意图。
具体实施方式
[0021]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0022]在大规模集群下,组件众多,业务调用链路复杂,基于常规的指标阈值监控和日志监控,虽然能够发现大部分的故障,但故障根因定位困难,导致故障恢复的时间较长。现有方案存在如下问题:
[0023]1)缺失组件指标和日志的输出规范,或者缺乏有效的规范保障机制,导致不同组件的指标、指标属性标签和日志数据结构等往往不同,甚至同名指标在不同组件下的度量方法、数值单位和语义不同,导致排障系统需要针对不同的组件独立建模和分析,针对不同组件的故障根因分析、相关性分析困难变得繁杂、困难,增加了排障系统设计和实现的复杂度和难度。
[0024]2)组件崩溃、卡死等故障依赖线下的调试和分析,故障定位效率较低。
[0025]3)基于常规的指标阈值监控,难以发现指标数据的趋势异常,故障提前预警困难。
[0026]4)缺乏基于调用链路的告警过滤和根因定位,当上游组件或业务发生异常时,容易产生告警风暴,故障根因定位困难。
[0027]为了解决上述现有方案中的至少一个问题,本方案在进行正常的组件分析方法之
前,会预先设置好各个组件的各个指标的输出规范,所有组件在输出指标数据时必须遵守该规范。针对组件指标数据的规范化,具体的,约定组件输出的指标数据为时序数据,符合metrics指标结构和类型规范;且组件能够提供基于http协议的GET请求接口,或具有实现主动推送指标数据的功能,以使得组件在接收到指标数据返回请求或者达到某个条件时返回各项指标数据。同时,该规范在以下方面对指标的输出进行约束:
[0028]1)指标语义规范化,即每个指标的语义明确,对语义有歧义的指标进行细化定义或者统一约定。比如,对于组件的内存使用量,如果定义指标的名称为“memory_usage”,则该指标是否包含缓存不明确,不同的人会有不同的理解,存在语义上的歧义。同时指标的度量单位也不明确,在不同组件中,对该指标可能会采用不同的度量单位,最终会导致排障系统在做统计分析时产生统计计算上的混乱或错误,所以需要细化明确,保证不同组件中同一指标的度量单位相同。比如,将组件的内存使用量细分为“memory_rss_usage_bytes”(其含义为:物理内存使用量,度量单位为字节)和“memory_cache_usage_bytes”(其含义为:缓存内存使用量,度量单位为字节)。
[0029]2)指标维度规范化。所有的组件都必须输出必要的指标数据,一个组件所输出的指标至少需要包含本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种组件分析方法,其特征在于,包括:接收第一组件的第一指标的异常信息;判断所述第一组件是否未调用其他组件或者所述第一组件调用的所述其他组件的第一指标是否均未发生异常;其中,所述其他组件的个数为至少一个;若是,则判定所述第一指标的异常是由于所述第一组件导致;否则,获得被所述第一组件调用且所述第一指标发生异常的第二组件,将所述第二组件作为第一组件,并返回至判断所述第一组件是否未调用其他组件或者所述第一组件调用的所述其他组件的第一指标是否均未发生异常的步骤。2.根据权利要求1所述的组件分析方法,其特征在于,还包括:获得第一预设时间段内发生异常的多个异常项的异常时序数据;其中,所述异常项的属性标签包含组件标签和指标标签,不同所述异常项的所述组件标签和所述指标标签中的至少一个不同;将所述第一预设时间段划分为多个时间子段,基于每个所述时间子段进行统计,将发生异常的所述异常项的自相关权重增加预设值、以及将同时发生异常的两个异常项的互相关权重增加所述预设值;针对每个所述异常项,响应于当前所述异常项的自相关权重超过聚类门限,且与当前所述异常项相关的互相关权重在预设范围内,则将当前所述互相关权重对应的两个所述异常项聚为一类;其中,所述预设范围与所述自相关权重和波动系数相关。3.根据权利要求2所述的组件分析方法,其特征在于,所述基于每个所述时间子段进行统计的步骤之前,包括:初始化权重矩阵;其中,多个所述异常项的个数为N,所述权重矩阵为N行N列矩阵,且所述权重矩阵中第i行第j列元素代表第i个异常项与第j个异常项之间的相关权重;当第i个异常项与第j个异常项相同时,所述相关权重为自相关权重;当第i个异常项与第j个异常项不同时,所述相关权重为互相关权重。4.根据权利要求1所述的组件分析方法,其特征在于,还包括:获取第二预设时间段内同一组件的多个指标的第一历史时序数据;其中,所述组件在所述第二预设时间段内发生异常或未发生异常;基于同一所述组件的任意两个所述指标的第一历史时序数据获得两个所述指标之间的相关性系数;响应于所述相关性系数的绝对值大于或等于第一阈值,则与所述相关性系数相关的两个所述指标存在强相关关系。5.根据权利要求1所述的组件分析方法,其特征在于,还包括:基于当前周期下的当前时刻设置时间窗口,并获得当前周期之前的多个历史周期下的同一所述时间窗口内的目标组件的目标指标的第二历史时序数据;基于所有第二历史时序数据获得同一时刻下的多个所述第二历史时序数据的均值;对不同时刻下的所有所述均值进行拟合以获得拟合函数;基于所述拟合函数、以及所述当前周期下的所述当前时刻之前的多个第二历史时序数据获得所述当前时刻之后的未来时刻的预测值;基于所述预测值获得所述目标指标的趋势判定结果。
6.根据权利要求5所述的组件分析方法,其特征在于,所述基于所述拟合函数、以及所述当前周期下的所述当前时刻之前的第二历史时序数据获得所述当前时刻之后的未来时刻的预测值的步骤,包括:基...

【专利技术属性】
技术研发人员:章清龙明康刘坤
申请(专利权)人:科大讯飞股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1