CN117724881A - 程序异常修复方法、装置、计算机设备和存储介质 - Google Patents

程序异常修复方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN117724881A
CN117724881A CN202311402813.9A CN202311402813A CN117724881A CN 117724881 A CN117724881 A CN 117724881A CN 202311402813 A CN202311402813 A CN 202311402813A CN 117724881 A CN117724881 A CN 117724881A
Authority
CN
China
Prior art keywords
program
exception
abnormal
program file
abnormality
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.)
Pending
Application number
CN202311402813.9A
Other languages
English (en)
Inventor
武妍格
温建波
雷卓敏
郝军波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202311402813.9A priority Critical patent/CN117724881A/zh
Publication of CN117724881A publication Critical patent/CN117724881A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本申请涉及一种程序异常修复方法、装置、计算机设备和存储介质。本申请涉及大数据技术领域,该方法包括:获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;根据程序异常类型和各故障概率,对异常程序文件进行异常修复。通过上述方法可以增加程序异常修复效率。

Description

程序异常修复方法、装置、计算机设备和存储介质
技术领域
本申请涉及大数据技术领域,特别是涉及一种程序异常修复方法、装置、计算机设备和存储介质。
背景技术
目前,编程语言被广泛应用于金融领域,由于编程语言的严谨性,导致编程语言在使用的过程中频繁出现错误,使得金融业务无法流畅进行。
为了修复编程语言中的错误,保证金融业务的流畅进行,当前的方法通常是让有经验的编程工程师进行人工修复,而对于刚接触编程语言的新员工,修复编程语言中的错误就会变的十分困难,且效率低下,因此急需一种能够加快编程语言修复的方法。
发明内容
基于此,有必要针对上述技术问题,提供一种能够增加程序异常修复效率的程序异常修复方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种程序异常修复方法。该方法包括:
获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;
将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;
根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
在其中一个实施例中,根据程序异常类型和各故障概率,对异常程序文件进行异常修复,包括:
根据程序异常类型,查找程序异常类型对应的目标历史修复记录;
根据历史修复记录和故障概率,对异常程序文件进行异常修复。
在其中一个实施例中,根据程序异常类型,查找程序异常类型对应的历史修复记录,包括:
根据程序异常类型,查找程序异常类型对应的多个候选历史修复记录,各候选历史修复记录中携带历史修复时刻;
根据各历史修复时刻,从各候选历史修复记录中选取目标历史修复记录,目标历史修复记录对应的历史修复时刻与当前时刻在时序上相邻。
在其中一个实施例中,获取异常程序文件,包括:
获取当前的异常报错日志,并根据异常报错日志确定当前异常事件的异常类型是否为程序异常类型;
若当前异常事件的异常类型为程序异常类型,则从异常报错日志中提取当前异常事件对应的异常程序文件。
在其中一个实施例中,从异常报错日志中提取当前异常事件对应的异常程序文件,包括:
根据异常报错日志,确定异常报错日志中当前异常事件对应的报错位置;
从异常报错日志中提取报错位置对应的上文程序文件和下文程序文件;
将上文程序文件和下文程序文件作为异常程序文件。
在其中一个实施例中,该方法还包括:
获取样本程序文件,并将样本程序文件输入至词袋模型中,得到样本程序文件对应的样本词向量,样本程序文件为存在异常的程序文件;
将样本词向量输入至初始预测模型中,得到样本词向量对应的样本预测结果;
根据样本预测结果对初始预测模型的模型参数进行调整,得到故障预测模型。
第二方面,本申请还提供了一种程序异常修复装置。该装置包括:
向量转化模块,用于获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;
故障预测模块,用于将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;
故障修复模块,用于根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
第三方面,本申请还提供了一种计算机设备。计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;
将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;
根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
第四方面,本申请还提供了一种计算机可读存储介质。计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;
将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;
根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
第五方面,本申请还提供了一种计算机程序产品。计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;
将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;
根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
上述程序异常修复方法、装置、计算机设备和存储介质。先获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;再将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;最后根据程序异常类型和各故障概率,对异常程序文件进行异常修复,上述方法可以根据异常程序文件预测执行故障概率,即预测执行过程可能出现故障的概率,且能够依预测得到的据程序异常类型和执行故障概率对异常程序文件进行异常修复,相比于传统技术中在确定发生故障之后,人工再对异常程序文件进行修复的方法,大大增加了故障修复的效率。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图
图1为一个实施例中程序异常修复方法的应用环境图;
图2为一个实施例中程序异常修复方法的流程示意图;
图3为另一个实施例中程序异常修复方法的流程示意图;
图4A为一个实施例中故障预测模型模型训练过程的流程示意图;
图4B为一个实施例中利用梯度下降的方法进行参数调整的示意图;
图5为又一个实施例中程序异常修复方法的流程示意图;
图6为一个实施例中程序异常修复装置的结构框图;
图7为另一个实施例中程序异常修复装置的结构框图;
图8为又一个实施例中程序异常修复装置的结构框图;
图9为再一个实施例中程序异常修复装置的结构框图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
现有的程序异常修复方法中,为了保证程序异常的正常修复,通常需要有经验的运维人员根据自身的经验对程序异常进行人工修复,但是此种方法,对运维人员的要求过高,例如,新入职的运维人员经验尚浅,就无法对程序异常进行高效修复,此外,人工修复的方法速度过慢,当存在较多程序异常时,无法实现快速对程序异常进行修复,因此现有技术中存在修复效率过低的情况。
本申请实施例提供的程序异常修复方法,可以应用于如图1所示的应用环境中。在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图1所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储做相关处理时所需的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现下述任意实施例所示的程序异常修复方法。
在一个实施例中,如图2所示,提供了一种程序异常修复方法,以该方法应用于图1中的计算机设备为例进行说明,包括以下步骤:
S201,获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量。
其中,异常程序文件为发生异常的程序代码组成的文件;词袋模型为用于将代码转化为词向量的神经网络模型。
具体的,可以在检测到异常报错日志时,将异常报错日志对应的程序代码提取出来作为异常程序文件,并将异常程序文件输入至词袋模型中,词袋模型的输出结果即为异常程序文件对应的目标词向量。
可选的,获取异常程序文件的方法还可以是,获取当前的异常报错日志,并根据异常报错日志确定当前异常事件的异常类型是否为程序异常类型;若当前异常事件的异常类型为程序异常类型,则从异常报错日志中提取当前异常事件对应的异常程序文件。
其中,程序异常类型表征了该异常为程序代码发生异常。
具体的,获取当前的异常报错日志,根据异常报错日志搜索该异常报错日志对应的问题清单,问题清单中携带了当前异常事件的异常类型,从问题清单中查找当前异常事件的异常类型,只有当确定当前异常事件的异常类型为程序异常类型时,才从异常报错日志中提取当前异常事件对应的异常程序文件;当确定当前异常事件的异常类型为程序异常类型时,则不进行后续处理。
可选的,从异常报错日志中提取当前异常事件对应的异常程序文件的方法还可以是,根据异常报错日志,确定异常报错日志中当前异常事件对应的报错位置;从异常报错日志中提取报错位置对应的上文程序文件和下文程序文件;将上文程序文件和下文程序文件作为异常程序文件。
具体的,可以将异常报错日志与对照日志进行对比,找到异常报错日志中当前异常事件对应的报错位置,复制报错位置的上文程序文件,复制报错位置的下文程序文件,并将上文程序文件和下文程序文件拼接在一起,即得到了异常程序文件。
可选的,问题清单中也可以携带异常程序文件,当确定异常报错日之后,直接从异常报错日志对应的问题清单中获取异常程序文件。
S202,将目标词向量输入至故障预测模型中,得到目标预测结果。
其中,预测结果包括程序异常类型和程序异常类型的执行故障概率;执行故障概率为在程序发生异常的情况下继续执行业务,业务发生故障的概率;故障预测模型为根据目标词向量对故障进行预测的神经网络模型。
具体的,将目标词向量输入至故障预测模型中,故障预测模型会根据目标词向量输出程序异常类型和程序异常类型的执行故障概率。
S203,根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
具体的,若故障概率大于故障规律阈值,则根据程序异常类型,查找该类型程序异常的程序异常修复方法,并基于程序异常修复方法对异常程序文件进行异常修复,例如,根据程序异常修复方法重新撰写形成新的程序文件,利用新的程序文件代替原有的异常程序文件,即完成了异常程序文件的修复。
上述实施例中,先获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;再将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;最后根据程序异常类型和各故障概率,对异常程序文件进行异常修复,上述方法可以根据异常程序文件预测执行故障概率,即预测执行过程可能出现故障的概率,且能够依预测得到的据程序异常类型和执行故障概率对异常程序文件进行异常修复,相比于传统技术中在确定发生故障之后,人工再对异常程序文件进行修复的方法,大大增加了故障修复的效率。
上述实施例中,阐述了如何对异常程序文件进行异常修复,而在这个过程中,根据程序异常类型和各故障概率,对异常程序文件进行异常修复的过程最为关键,因此,在本实施例中,如图3所示,详细阐述了异常程序文件的修复过程,具体方法包括:
S301,根据程序异常类型,查找程序异常类型对应的目标历史修复记录。
其中,目标历史修复记录为与异常程序文件同类型程序异常在历史时段的修复记录。
具体的,每次对异常程序文件都会形成目标历史修复记录,将目标历史修复记录和程序异常类型关联存储至计算机设备的存储系统中,此时可以把程序异常类型作为关键词,在计算机设备的存储系统中搜索与程序异常类型对应的目标历史修复记录。
可选的,历史修复记录可能存在多个,此时可以利用预设的修复记录评估标准,对各个历史修复记录进行评分,得到各个历史修复记录的评分,选取评分最高的历史修复记录作为目标历史修复记录。
可选的,当历史修复记录存在多个时,获取目标历史修复记录的方法还可以是根据程序异常类型,查找程序异常类型对应的多个候选历史修复记录,各候选历史修复记录中携带历史修复时刻;根据各历史修复时刻,从各候选历史修复记录中选取目标历史修复记录,目标历史修复记录对应的历史修复时刻与当前时刻在时序上相邻。
具体的,异常程序文件可能对应多个历史修复记录,即候选历史修复记录,根据各候选历史修复记录中的历史修复时刻,对个候选历史修复记录按照历史修复时刻的先后进行排序,选取历史修复时刻距离当前时刻最近的候选历史修复记录作为目标历史修复记录;即目标历史修复记录对应的历史修复时刻与当前时刻在时序上相邻。
S302,根据目标历史修复记录和故障概率,对异常程序文件进行异常修复。
具体的,每个异常程序文件都存在与其对应的故障概率,可以根据故障概率的大小对各异常程序文件进行修复排期,例如,故障概率大的异常程序文件优先进行排期,最终参考目标历史修复记录,根据修复排期的先后,对各异常程序文件进行修复,示例性的,具体修复方式可以是复制目标历史修复记录中的程序文件,利用从目标历史修复记录中复制的程序文件覆盖异常程序文件,即完成了异常程序文件的修复。
上述实施例中,先根据程序异常类型查找该程序异常类型对应的目标历史修复记录,再根据目标历史修复记录和故障概率对异常程序文件进行修复,此种方法的修复过程主要依赖于目标历史修复记录,因此,即使是没有经验的新员工,也可以利用目标历史修复记录对异常程序文件进行修复,大大增加了异常程序文件的修复效率,此外,对异常程序文件的修复过程还考虑了故障概率,此种方法可以优先考虑修复重大故障,最大程度的保障了程序的正常运行。
上述两个实施例详细阐述了异常程序文件的修复过程,而在上述步骤中,故障预测模型发挥着不可或缺的作用,因此在本实施例中,如图4A所示,对故障预测模型的训练过程进行了详细阐述,具体方法包括:
S401,获取样本程序文件,并将样本程序文件输入至词袋模型中,得到样本程序文件对应的样本词向量。
其中,样本程序文件为存在异常的程序文件;样本词向量为样本程序文件经词袋模型处理后生成的词向量。
具体的,从计算机设备的存储系统中搜索用于模型训练的样本程序文件,并将样本程序文件输入至词袋模型中,得到样本程序文件对应的样本词向量。
示例性的,还可以利用scikit-learn(机器学习常用算法)随机抽取一定比例(例如80%)的样本程序文件作为训练集,其余的(例如20%)样本程序文件作为验证集,将训练集和验证集中的样本程序文件输入至词袋模型中,得到训练集到的样本词向量和验证集的样本词向量。
S402,将样本词向量输入至初始预测模型中,得到样本词向量对应的样本预测结果。
其中,初始预测模型为还未经训练的神经网络模型;初始预测模型还不具备根据异常程序文件准确得到预测结果的能力。
具体的,将样本词向量输入至初始预测模型中,初始预测模型的输出结果即为样本词向量对应的样本预测结果。
示例性的,可以将包含80%样本程序文件的训练集对应的样本词向量输入至初始预测模型中,初始预测模型的输出结果即为样本词向量对应的样本预测结果。
S403,根据样本预测结果对初始预测模型的模型参数进行调整,得到故障预测模型。
具体的,从计算机设备的存储系统中获取样本程序文件对应的标签预测结果,根据标签预测结果和样本预测结果,计算出损失值,根据损失值对初始预测模型的模型参数进行调整,然后重新计算损失值,知道损失值小于损失值阈值,此时即得到了故障预测模型。
示例性的,在确定损失值小于损失值阈值之后,还可以利用包含20%样本程序文件的验证集对初始预测模型进行验证,若验证不通过,则继续对初始预测模型的参数进行调整,直至验证通过,即得到了故障预测模型。
可选的,还可以采用无监督训练的方法得到故障预测模型,先设定训练目标,将样本程序文件对应的词向量输入至初始预测模型中后,根据样本预测结果与训练目标之间的残差调整初始预测模型的参数,直至残差小于残差阈值,即完成了模型的训练,得到故障预测模型。
可选的,如图4B所示,初始预测模型的参数调整可以选择梯度下降的方法,假设初始预测模型的初始参数点为A点,可以通过梯度下降找到损失值最小的一组参数点B,这样参数点B对应的参数即为最终确定的参数,将参数点B对应的参数代入初始预测模型,即可得到故障预测模型。其中,W1和W2均为初始预测模型的参数。
上述实施例中,先获取样本程序文件,再将样本程序文件转化为词向量,最终基于样本程序文件的词向量训练初始预测模型得到故障预测模型,此种方法大大增加了故障预测模型的准确性。
为了更全面的展示本方案,本实施例给出了一种程序异常修复方法的可选方式,如图5所示:
S501,获取样本程序文件,并将样本程序文件输入至词袋模型中,得到样本程序文件对应的样本词向量。
样本程序文件为存在异常的程序文件。
S502,将样本词向量输入至初始预测模型中,得到样本词向量对应的样本预测结果。
S503,根据样本预测结果对初始预测模型的模型参数进行调整,得到故障预测模型。
S504,获取当前的异常报错日志,并根据异常报错日志确定当前异常事件的异常类型是否为程序异常类型。
S505,若当前异常事件的异常类型为程序异常类型,则从异常报错日志中提取当前异常事件对应的异常程序文件。
S506,将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量。
S507,将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率。
S508,根据程序异常类型,查找程序异常类型对应的多个候选历史修复记录。
其中,各候选历史修复记录中携带历史修复时刻。
S509,根据各历史修复时刻,从各候选历史修复记录中选取目标历史修复记录。
其中,目标历史修复记录对应的历史修复时刻与当前时刻在时序上相邻。
S510,根据目标历史修复记录和故障概率,对异常程序文件进行异常修复。
上述实施例中,先获取样本程序文件,再将样本程序文件转化为词向量,最终基于样本程序文件的词向量训练初始预测模型得到故障预测模型;根据异常报错日志判定当前异常时间是否属于程序异常类型,当确定当前异常事件的异常类型为程序异常类型时,从异常报错日志中提取当前异常事件对应的异常程序文件;通过词袋模型获取异常程序文件对应的目标词向量;将目标词向量输入至故障预测模型中,得到程序异常类型和程序异常类型的执行故障概率;再根据程序异常类型,查找程序异常类型对应的多个候选历史修复记录;从各候选历史修复记录中选取与当前时刻在时序上相邻的目标历史修复记录;最后根据目标历史修复记录和故障概率,对异常程序文件进行异常修复。上述方法可以提前根据异常程序文件提前预测故障,且能够依据程序异常类型和故障概率对异常程序文件进行异常修复,相比于在确定发生故障之后,人工对异常程序文件进行修复的方法,大大增加了故障修复的效率。
上述S501-S510的具体过程可以参见上述方法实施例的描述,其实现原理和技术效果类似,在此不再赘述。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的程序异常修复方法的程序异常修复装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个程序异常修复装置实施例中的具体限定可以参见上文中对于程序异常修复方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种程序异常修复装置6,包括:向量转化模块60、故障预测模块61和故障修复模块62,其中:
向量转化模块60,用于获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;
故障预测模块61,用于将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;
故障修复模块62,用于根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
上述程序异常修复装置6中,先获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;再将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;最后根据程序异常类型和各故障概率,对异常程序文件进行异常修复,上述方法可以根据异常程序文件预测执行故障概率,即预测执行过程可能出现故障的概率,且能够依预测得到的据程序异常类型和执行故障概率对异常程序文件进行异常修复,相比于传统技术中在确定发生故障之后,人工再对异常程序文件进行修复的方法,大大增加了故障修复的效率。
在另一个实施例中,如图7所示,上述图6中的故障修复模块62,包括:
记录查找单元620,用于根据程序异常类型,查找程序异常类型对应的目标历史修复记录;
故障修复单元621,用于根据目标历史修复记录和故障概率,对异常程序文件进行异常修复。
上述实施例中的故障修复模块62,先根据程序异常类型查找该程序异常类型对应的目标历史修复记录,再根据目标历史修复记录和故障概率对异常程序文件进行修复,此种方法的修复过程主要依赖于目标历史修复记录,因此,即使是没有经验的新员工,也可以利用目标历史修复记录对异常程序文件进行修复,大大增加了异常程序文件的修复效率,此外,对异常程序文件的修复过程还考虑了故障概率,此种方法可以优先考虑修复重大故障,最大程度的保障了程序的正常运行。
在另一个实施例中,上述图7中的故障修复单元621,具体用于:
根据程序异常类型,查找程序异常类型对应的多个候选历史修复记录,各候选历史修复记录中携带历史修复时刻;根据各历史修复时刻,从各候选历史修复记录中选取目标历史修复记录,目标历史修复记录对应的历史修复时刻与当前时刻在时序上相邻。
在另一个实施例中,如图8所示,上述图6中的向量转化模块60,包括:
日志获取单元600,获取当前的异常报错日志,并根据异常报错日志确定当前异常事件的异常类型是否为程序异常类型;
文件提取单元601,用于若当前异常事件的异常类型为程序异常类型,则从异常报错日志中提取当前异常事件对应的异常程序文件。
在另一个实施例中,上述图8中的文件提取单元601,具体用于:
根据异常报错日志,确定异常报错日志中当前异常事件对应的报错位置;从异常报错日志中提取报错位置对应的上文程序文件和下文程序文件;将上文程序文件和下文程序文件作为异常程序文件。
在另一个实施例中,如图9所示,上述图6中的程序异常修复装置6,还包括:
样本获取模块63,用于获取样本程序文件,并将样本程序文件输入至词袋模型中,得到样本程序文件对应的样本词向量,样本程序文件为存在异常的程序文件;
样本预测模块64,用于将样本词向量输入至初始预测模型中,得到样本词向量对应的样本预测结果;
参数调整模块65,用于根据样本预测结果对初始预测模型的模型参数进行调整,得到故障预测模型。
上述实施例中的程序异常修复装置6,还可以先获取样本程序文件,再将样本程序文件转化为词向量,最终基于样本程序文件的词向量训练初始预测模型得到故障预测模型,此种方法大大增加了故障预测模型的准确性。
上述程序异常修复装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个示例性的实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储样本程序文件和历史修复记录等数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种程序异常修复方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种程序异常修复方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;
将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;
根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据程序异常类型,查找程序异常类型对应的目标历史修复记录;根据目标历史修复记录和故障概率,对异常程序文件进行异常修复。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据程序异常类型,查找程序异常类型对应的多个候选历史修复记录,各候选历史修复记录中携带历史修复时刻;根据各历史修复时刻,从各候选历史修复记录中选取目标历史修复记录,目标历史修复记录对应的历史修复时刻与当前时刻在时序上相邻。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取当前的异常报错日志,并根据异常报错日志确定当前异常事件的异常类型是否为程序异常类型;若当前异常事件的异常类型为程序异常类型,则从异常报错日志中提取当前异常事件对应的异常程序文件。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
根据异常报错日志,确定异常报错日志中当前异常事件对应的报错位置;从异常报错日志中提取报错位置对应的上文程序文件和下文程序文件;将上文程序文件和下文程序文件作为异常程序文件。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取样本程序文件,并将样本程序文件输入至词袋模型中,得到样本程序文件对应的样本词向量,样本程序文件为存在异常的程序文件;将样本词向量输入至初始预测模型中,得到样本词向量对应的样本预测结果;根据样本预测结果对初始预测模型的模型参数进行调整,得到故障预测模型。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;
将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;
根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据程序异常类型,查找程序异常类型对应的目标历史修复记录;根据目标历史修复记录和故障概率,对异常程序文件进行异常修复。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据程序异常类型,查找程序异常类型对应的多个候选历史修复记录,各候选历史修复记录中携带历史修复时刻;根据各历史修复时刻,从各候选历史修复记录中选取目标历史修复记录,目标历史修复记录对应的历史修复时刻与当前时刻在时序上相邻。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取当前的异常报错日志,并根据异常报错日志确定当前异常事件的异常类型是否为程序异常类型;若当前异常事件的异常类型为程序异常类型,则从异常报错日志中提取当前异常事件对应的异常程序文件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据异常报错日志,确定异常报错日志中当前异常事件对应的报错位置;从异常报错日志中提取报错位置对应的上文程序文件和下文程序文件;将上文程序文件和下文程序文件作为异常程序文件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取样本程序文件,并将样本程序文件输入至词袋模型中,得到样本程序文件对应的样本词向量,样本程序文件为存在异常的程序文件;将样本词向量输入至初始预测模型中,得到样本词向量对应的样本预测结果;根据样本预测结果对初始预测模型的模型参数进行调整,得到故障预测模型。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取异常程序文件,并将异常程序文件输入至词袋模型中,得到异常程序文件对应的目标词向量;
将目标词向量输入至故障预测模型中,得到目标预测结果,预测结果包括程序异常类型和程序异常类型的执行故障概率;
根据程序异常类型和各故障概率,对异常程序文件进行异常修复。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据程序异常类型,查找程序异常类型对应的目标历史修复记录;根据目标历史修复记录和故障概率,对异常程序文件进行异常修复。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据程序异常类型,查找程序异常类型对应的多个候选历史修复记录,各候选历史修复记录中携带历史修复时刻;根据各历史修复时刻,从各候选历史修复记录中选取目标历史修复记录,目标历史修复记录对应的历史修复时刻与当前时刻在时序上相邻。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取当前的异常报错日志,并根据异常报错日志确定当前异常事件的异常类型是否为程序异常类型;若当前异常事件的异常类型为程序异常类型,则从异常报错日志中提取当前异常事件对应的异常程序文件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
根据异常报错日志,确定异常报错日志中当前异常事件对应的报错位置;从异常报错日志中提取报错位置对应的上文程序文件和下文程序文件;将上文程序文件和下文程序文件作为异常程序文件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取样本程序文件,并将样本程序文件输入至词袋模型中,得到样本程序文件对应的样本词向量,样本程序文件为存在异常的程序文件;将样本词向量输入至初始预测模型中,得到样本词向量对应的样本预测结果;根据样本预测结果对初始预测模型的模型参数进行调整,得到故障预测模型。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种程序异常修复方法,其特征在于,所述特征包括:
获取异常程序文件,并将所述异常程序文件输入至词袋模型中,得到所述异常程序文件对应的目标词向量;
将所述目标词向量输入至故障预测模型中,得到目标预测结果,所述预测结果包括程序异常类型和所述程序异常类型的执行故障概率;
根据所述程序异常类型和各所述故障概率,对所述异常程序文件进行异常修复。
2.根据权利要求1所述的方法,其特征在于,所述根据所述程序异常类型和各所述故障概率,对所述异常程序文件进行异常修复,包括:
根据所述程序异常类型,查找所述程序异常类型对应的目标历史修复记录;
根据所述目标历史修复记录和所述故障概率,对所述异常程序文件进行异常修复。
3.根据权利要求2所述的方法,其特征在于,所述根据所述程序异常类型,查找所述程序异常类型对应的目标历史修复记录,包括:
根据所述程序异常类型,查找所述程序异常类型对应的多个候选历史修复记录,各所述候选历史修复记录中携带历史修复时刻;
根据各所述历史修复时刻,从各所述候选历史修复记录中选取目标历史修复记录,所述目标历史修复记录对应的历史修复时刻与当前时刻在时序上相邻。
4.根据权利要求1所述的方法,其特征在于,所述获取异常程序文件,包括:
获取当前的异常报错日志,并根据所述异常报错日志确定当前异常事件的异常类型是否为程序异常类型;
若所述当前异常事件的异常类型为所述程序异常类型,则从所述异常报错日志中提取所述当前异常事件对应的所述异常程序文件。
5.根据权利要求4所述的方法,其特征在于,所述从所述异常报错日志中提取所述当前异常事件对应的所述异常程序文件,包括:
根据所述异常报错日志,确定所述异常报错日志中所述当前异常事件对应的报错位置;
从所述异常报错日志中提取所述报错位置对应的上文程序文件和下文程序文件;
将所述上文程序文件和所述下文程序文件作为所述异常程序文件。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述方法还包括:
获取样本程序文件,并将所述样本程序文件输入至所述词袋模型中,得到所述样本程序文件对应的样本词向量,所述样本程序文件为存在异常的程序文件;
将所述样本词向量输入至初始预测模型中,得到所述样本词向量对应的样本预测结果;
根据所述样本预测结果对所述初始预测模型的模型参数进行调整,得到所述故障预测模型。
7.一种程序异常修复装置,其特征在于,所述装置包括:
向量转化模块,用于获取异常程序文件,并将所述异常程序文件输入至词袋模型中,得到所述异常程序文件对应的目标词向量;
故障预测模块,用于将所述目标词向量输入至故障预测模型中,得到目标预测结果,所述预测结果包括程序异常类型和所述程序异常类型的执行故障概率;
故障修复模块,用于根据所述程序异常类型和各所述故障概率,对所述异常程序文件进行异常修复。
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN202311402813.9A 2023-10-26 2023-10-26 程序异常修复方法、装置、计算机设备和存储介质 Pending CN117724881A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311402813.9A CN117724881A (zh) 2023-10-26 2023-10-26 程序异常修复方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311402813.9A CN117724881A (zh) 2023-10-26 2023-10-26 程序异常修复方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN117724881A true CN117724881A (zh) 2024-03-19

Family

ID=90207620

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311402813.9A Pending CN117724881A (zh) 2023-10-26 2023-10-26 程序异常修复方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN117724881A (zh)

Similar Documents

Publication Publication Date Title
US9569298B2 (en) Multi-stage failure analysis and prediction
WO2021252734A1 (en) Systems and methods for managing machine learning models
US10839314B2 (en) Automated system for development and deployment of heterogeneous predictive models
US9292650B2 (en) Identifying layout pattern candidates
WO2019056720A1 (zh) 自动化测试用例管理方法、装置、设备及存储介质
JP2023547849A (ja) ラベルなしセンサデータを用いた産業システム内の稀な障害の自動化されたリアルタイムの検出、予測、及び予防に関する、方法または非一時的コンピュータ可読媒体
CN117318052B (zh) 发电机组进相试验无功功率预测方法、装置和计算机设备
Persona et al. Age replacement policy in a random environment using systemability
CN112379913B (zh) 基于风险识别的软件优化方法、装置、设备及存储介质
CN113902540A (zh) 一种用于风险识别的方法和装置
KR20220122484A (ko) 설명 가능한 프로세스 예측
WO2024087404A1 (zh) 核反应堆故障判定方法、装置、设备、存储介质和产品
WO2021059291A1 (en) Method and system for identification and analysis of regime shift
CN117724881A (zh) 程序异常修复方法、装置、计算机设备和存储介质
WO2021115269A1 (zh) 用户集群的预测方法、装置、计算机设备和存储介质
CN114580399A (zh) 文本纠错方法、装置、电子设备及存储介质
CN117590149B (zh) 基于大数据技术的故障解决方案生成方法、装置和设备
WO2023153140A1 (ja) プロジェクト成否予測装置、予測モデルの機械学習方法、およびプロジェクト成否予測方法
CN117909797A (zh) 电力建设企业电力应急能力预测方法、装置和计算机设备
CN116881028A (zh) 应用程序闪退处理方法、装置、设备、介质和程序产品
CN117076256A (zh) 异常识别方法、异常处理方法以及模型训练方法
CN117421311A (zh) 基于人工智能的数据校验方法、装置、设备及存储介质
CN117149481A (zh) 异常修复方法、装置、计算机设备和存储介质
CN117273922A (zh) 交易预警方法、装置、计算机设备和存储介质
CN117973940A (zh) 城市系统电力应急能力预测方法、装置和计算机设备

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