一种软件接口评估及故障预警方法及系统与流程

文档序号:22626827发布日期:2020-10-23 19:35阅读:138来源:国知局
一种软件接口评估及故障预警方法及系统与流程

本发明涉及一种软件接口评估及故障预警方法及系统,属于电力计量技术领域。



背景技术:

在“四线一库”设备运维管理方面,在处理日常运维工作中发现软件接口、软件类异常是主要常见故障之一。目前软件接口、软件类异常风险识别效率低,缺乏对其相应的评分、预测、预警手段。针对上述问题,目前尚未提出全面、有效的解决方法。



技术实现要素:

本发明所要解决的技术问题是克服现有技术的缺陷,提供一种软件接口评估及故障预警方法及系统。

为解决上述技术问题,本发明提供一种软件接口评估及故障预警方法,

获取软件接口连接错误的接口故障层级标准;

获取软件接口原始日志中的报错信息,根据软件接口原始日志中的报错信息和所述接口故障层级标准确定软件接口错误的故障层级;

根据确定的软件接口错误的故障层级,统计各故障层级在时间窗内的发生频次;

将统计的各故障层级在时间窗内的发生频次输入预先构建的基于马尔可夫链的软件接口评估及故障预警模型,输出软件接口故障预测及评价。

进一步的,所述接口故障层级标准包括:

根据软件接口连接失败后进行重新连接所需要的时间长短对软件接口连接错误的层级标准划分为轻微、一般、严重三个层级。

进一步的,所述获取软件接口原始日志中的报错信息,根据软件接口原始日志中的报错信息和所述接口故障层级标准确定软件接口错误的故障层级的具体过程包括:

利用树模型对软件接口原始日志进行分类;

在分类后的原始日志的日志语句中抽取连接报错与重新连接成功的语句,并通过时间戳计算该次软件接口错误的持续时间作为数据特征;

根据所述数据特征以及接口故障层级标准,确定软件接口错误的故障层级。

进一步的,在利用树模型对软件接口原始日志进行分类前,统一原始日志中的常见的变量形式。

进一步的,所述利用树模型对软件接口原始日志进行分类的具体过程包括:

采用两层树模型对软件接口原始日志进行分类:

第一层通过日志语句的长度进行分枝;第二层通过第一位置字符进行分枝。

进一步的,所述根据确定的软件接口错误的故障层级,统计各故障层级在时间窗内的发生频次的具体过程包括:

根据确定的软件接口错误的故障层级将报错信息处理为时间窗内发生各故障层级的频次:d(i)=(t(i),d1(i),d2(i),d3(i)),i=0,1,…,m

其中,

d(i):第i个时间窗内发生故障的总数,t(i):第i个时间窗的时间,d1(i):第i个时间窗内发生轻微程度故障的频数,d2(i):第i个时间窗内发生一般程度故障的频数,d3(i):第i个时间窗内发生严重程度故障的频数,i:第i个时间窗,m:时间窗的个数;

根据时间将故障发生的层级形成一条时间链,该时间链为马尔可夫链。

进一步的,所述将统计的各故障层级在时间窗内的发生频次输入预先构建的基于马尔可夫链的软件接口评估及故障预警模型,输出软件接口故障预测及评价的具体过程为:

利用非齐次泊松过程确定在时间窗内的发生故障频次d(i)对应的总均值函数λ(t)的参数λ0,θ,λ0表示故障强度,θ表示强度衰减参数;

根据故障层级发生的马尔可夫链和总均值函数λ(t)中的参数λ0、θ,确定各故障层级在时间t前发生次数的均值函数λ1(t),λ2(t),λ3(t);

利用各故障层级均值函数λ1(t),λ2(t),λ3(t)计算故障值和评价指标。

一种软件接口评估及故障预警系统,包括:

获取模块,用于获取软件接口连接错误的接口故障层级标准;

确定模块,用于获取软件接口原始日志中的报错信息,根据软件接口原始日志中的报错信息和所述接口故障层级标准确定软件接口错误的故障层级;

统计模块,用于根据确定的软件接口错误的故障层级,统计各故障层级在时间窗内的发生频次;

输出模块,用于将统计的各故障层级在时间窗内的发生频次输入预先构建的基于马尔可夫链的软件接口评估及故障预警模型,输出软件接口故障预测及评价。

进一步的,所述确定模块包括:

分类模块,用于利用树模型对软件接口原始日志进行分类;

计算及确定模块,用于在分类后的原始日志的日志语句中抽取连接报错与重新连接成功的语句,并通过时间戳计算该次软件接口错误的持续时间作为数据特征;根据所述数据特征以及接口故障层级标准,确定软件接口错误的故障层级。

进一步的,所述统计模块包括:

第一处理模块,用于根据确定的软件接口错误的故障层级将报错信息处理为时间窗内发生各故障层级的频次:d(i)=(t(i),d1(i),d2(i),d3(i)),i=0,1,…,m

其中,

d(i):第i个时间窗内发生故障的总数,t(i):第i个时间窗的时间,d1(i):第i个时间窗内发生轻微程度故障的频数,d2(i):第i个时间窗内发生一般程度故障的频数,d3(i):第i个时间窗内发生严重程度故障的频数,i:第i个时间窗,m:时间窗的个数;

第二处理模块,根据时间将故障发生的层级形成一条时间链,该时间链为马尔可夫链。

进一步的,所述计算及确定模块包括:

第一均值函数确定模块,用于利用非齐次泊松过程确定在时间窗内的发生故障频次d(i)对应的总均值函数λ(t)的参数λ0,θ,λ0表示故障强度,θ表示强度衰减参数;

第二均值函数确定模块,用于根据故障层级发生的马尔可夫链和总均值函数λ(t)中的参数λ0、θ,确定各故障层级在时间t前发生次数的均值函数λ1(t),λ2(t),λ3(t);

计算和评价模块,用于利用各故障层级均值函数λ1(t),λ2(t),λ3(t)计算故障值和评价指标。

本发明所达到的有益效果:

1.本发明摆脱传统模型多种主观假设的束缚,以软件接口故障发生层级为分类点,基于马尔科夫链以及非齐次泊松过程等理论运用,构建更加贴合实际的接口评估和故障预警方法。

2.本发明针对软件接口故障层级的划分原理,可以适用于多种不同需求的应用场景。在对软件接口精度要求高的场景下,可以重新定义接口连接时长的划分标准,提高故障预警和接口评估的整体标准。

3.本发明将马尔科夫链模型结合非齐次泊松过程原理,充分拟合了各层级故障发生的趋势,提高接口评估和故障预警的可靠性,同时该原理可以适用于多场合的时间序列预测。

附图说明

图1是本发明实施一种软件接口评估及故障预警技术步骤示意图;

图2是本发明一种软件接口评估及故障预警技术建模示意图。

具体实施方式

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

如图1和2所示,一种基于马尔可夫链的软件接口评估及故障预警方法,具体实施方式如下:

(1)软件接口连接错误层级的划分及安全性定义

根据软件接口连接失败后进行重新连接所需要的时间长短对软件接口连接错误的层级进行划分,具体分为三个层级:轻微、一般、严重。

软件接口的安全性:是对软件接口的一个评分。标准是在未来时间窗内软件接口发生严重层级错误的可能性,可能性越大评分越低。

(2)基础文本数据预处理

基础文本数据预处理目的在于利用分叉树将软件接口报错信息从原始日志中抽取出来。

实现的步骤:

步骤一:总结日志中常见的变量形式,如:ip地址、设备编号、时间戳等,将变量都替换为‘*’形式,便于后续树模型的事件分类,以避免变量这一噪声的出现干扰分类的准确度,本质上是事件template的提取。

步骤二:原始日志的观察,实现分类需要两层树模型:第一层通过日志语句的长度进行分枝;第二层通过第一位置字符进行分枝。

步骤三:在分类后的日志语句中抽取连接报错与重新连接成功的语句,并通过时间戳计算该次软件接口错误的持续时间作为数据特征。根据时间的长短以及故障层级的划分标准得到各软件接口错误的故障层级作为后续特征工程的输入。

(3)特征工程

1)将原始数据处理为时间窗内发生各层级故障的频次:

d(i)=(t(i),d1(i),d2(i),d3(i)),j=0,1,…,m.

2)根据时间将故障发生的层级形成一条时间链,由于故障的发生满足马尔可夫性质,该时间链即为本设计中的马尔可夫链。

(4)软件接口故障预测及评价

1)非齐次泊松过程

a)非齐次泊松过程需要选定特定的均值函数,根据故障总数不存在上界的特点,选择对数泊松执行模型:

λ(t)=1/θln(λ0θt+1)

以上符号注释:

λ(t):均值函数。

λ0(>0):故障强度。

θ(>0):强度衰减参数。

每个层级的故障发生泊松过程均有对应的均值函数。

b)累计软件接口发生某层级错误次数{nj(t)},j=1,2,3{nj(t)},j=1,2,3满足以下性质:

■nj(0)=0

■独立增量性:对于t0<t1<...<tk,n(ti)-n(ti-1)与n(tl)-n(tl-1)相互独立,其中i≠l

■p(n(t+δt)-n(t)=1)=λ(t)δt+o(δt)

■p(n(t+δt)-n(t)≥2)=o(δt)

■其中:λ(s)满足o(δ(t))为高(≥2)阶小量。

■n(t)的分布函数:

以上符号注释:

nj(t):时刻t时,故障层级为j的故障频次。

n:时刻t时,故障层级为j的故障频次。

n(ti):时刻t为i时,故障发生的频次。

n(ti-1):时刻t为i-1时,故障发生的频次。

λ(t):故障强度函数。

o(δt):时间差δt的高阶小量。

λj(t):时刻t时,故障层级为j的均值函数。

c)学习项:总均值函数λ(t)中的参数λ0,θ。

d)使用极大化对数似然函数以参数估计

■对数似然函数

其中包含的等式关系:

■d(i)=n(ti+1)-n(ti)

以上符号释义:

n(i):第i个时间窗内发生故障的总数。

s(i):从起始时间至第i个时间窗的总时间长度。

s(i-1):从起始时间至第i-1个时间窗的总时间长度。

s(m):从起始时间至第m个时间窗的总时间长度。

2)马尔可夫链

由步骤1)中得到总均值函数λ(t)的参数λ0,θ的取值,结合马尔科夫链的概率转移矩阵,可以计算求得各故障层级在时间t前发生次数的均值函数π(t)=(λ1(t),λ2(t),λ3(t))。

a)马尔科夫链:

■输入:马尔科夫链

■参数估计结果:

以上符号释义:

从故障i转移到故障j的概率。

ni,j:从故障i转移到故障j的数目。

nj:从任意故障状态转移到故障j的总数目。

■输出:概率转移矩阵p=[pi,j]3×3

b)各层级故障的均值函数π(t)=(λ1(t),λ2(t),λ3(t))的确定。

输入:总均值函数λ(t),转移矩阵p,马尔科夫链

理论公式:

通过以下迭代公式实现:

a0=o,

a1=λ(t)exp(-λ(t))p,

b0=exp(-λ(t))ι,

输出:λ1(t),λ2(t),λ3(t),即为各故障层级在时间t前发生次数的均值函数。

以上符号释义:

x0:各故障状态的原始占比情况;a0:空矩阵,表示故障发生0次时各故障层级的累计强度不变;a1:故障发生1次的强度;an-1:故障发生n-1次的强度;an:故障发生n次的强度;ι:单位矩阵;b0:第0个时间窗的强度;bn-1:第n-1个时间窗的强度;bn:第n个时间窗的强度;:故障发生次数;m:时间窗。

3)模型输出

■软件接口在时间[s,s+t]内发生各层级故障的预测值:

■软件接口评价指标:

safety=exp{-(λ3(s+t)-λ3(s))}

■故障预警:

设定告警阈值,根据软件接口评价指标中的公式(严重层级故障在下个时间窗内不发生的概率),若不发生严重层级故障的概率过低则告警。

相应的还包括一种软件接口评估及故障预警系统,包括:

获取模块,用于获取软件接口连接错误的接口故障层级标准;

确定模块,用于获取软件接口原始日志中的报错信息,根据软件接口原始日志中的报错信息和所述接口故障层级标准确定软件接口错误的故障层级;

统计模块,用于根据确定的软件接口错误的故障层级,统计各故障层级在时间窗内的发生频次;

输出模块,用于将统计的各故障层级在时间窗内的发生频次输入预先构建的基于马尔可夫链的软件接口评估及故障预警模型,输出软件接口故障预测及评价。

进一步的,所述确定模块包括:

分类模块,用于利用树模型对软件接口原始日志进行分类;

计算及确定模块,用于在分类后的原始日志的日志语句中抽取连接报错与重新连接成功的语句,并通过时间戳计算该次软件接口错误的持续时间作为数据特征;根据所述数据特征以及接口故障层级标准,确定软件接口错误的故障层级。

进一步的,所述统计模块包括:

第一处理模块,用于根据确定的软件接口错误的故障层级将报错信息处理为时间窗内发生各故障层级的频次:d(i)=(t(i),d1(i),d2(i),d3(i)),i=0,1,…,m

其中,

d(i):第i个时间窗内发生故障的总数,t(i):第i个时间窗的时间,d1(i):第i个时间窗内发生轻微程度故障的频数,d2(i):第i个时间窗内发生一般程度故障的频数,d3(i):第i个时间窗内发生严重程度故障的频数,i:第i个时间窗,m:时间窗的个数;

第二处理模块,根据时间将故障发生的层级形成一条时间链,该时间链为马尔可夫链。

进一步的,所述计算及确定模块包括:

第一均值函数确定模块,用于利用非齐次泊松过程确定在时间窗内的发生故障频次d(i)对应的总均值函数λ(t)的参数λ0,θ,λ0表示故障强度,θ表示强度衰减参数;

第二均值函数确定模块,用于根据故障层级发生的马尔可夫链和总均值函数λ(t)中的参数λ0、θ,确定各故障层级在时间t前发生次数的均值函数λ1(t),λ2(t),λ3(t);

计算和评价模块,用于利用各故障层级均值函数λ1(t),λ2(t),λ3(t)计算故障值和评价指标。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

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

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