CN115016971A - 应用程序的异常修复方法、装置、存储介质及计算机设备 - Google Patents

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

Info

Publication number
CN115016971A
CN115016971A CN202210736908.3A CN202210736908A CN115016971A CN 115016971 A CN115016971 A CN 115016971A CN 202210736908 A CN202210736908 A CN 202210736908A CN 115016971 A CN115016971 A CN 115016971A
Authority
CN
China
Prior art keywords
application program
repaired
abnormal
repairing
preset
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
CN202210736908.3A
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.)
Pingan Payment Technology Service Co Ltd
Original Assignee
Pingan Payment Technology Service Co Ltd
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 Pingan Payment Technology Service Co Ltd filed Critical Pingan Payment Technology Service Co Ltd
Priority to CN202210736908.3A priority Critical patent/CN115016971A/zh
Publication of CN115016971A publication Critical patent/CN115016971A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Abstract

本发明公开了一种应用程序的异常修复方法、装置、存储介质及计算机设备,涉及信息技术领域,主要在于能够提高应用程序的异常修复准确度。其中方法包括:获取待修复应用程序在预设时间内出现的异常次数;判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。本发明使用与对应用程序的异常情况进行修复。

Description

应用程序的异常修复方法、装置、存储介质及计算机设备
技术领域
本发明涉及信息技术领域,尤其是涉及一种应用程序的异常修复方法、装置、存储介质及计算机设备。
背景技术
随着APP(应用程序)的用户量逐渐上升,如何保证APP的线上稳定运行成为一项至关重要的任务,尤其是对于金融类APP用户,如果遇到APP的连续崩溃且无法及时修复,不仅会降低公司在消费者心中的口碑,同时会流失一部分重要的客户。因此对于APP产线问题的快速定位与修复成为体现金融类APP竞争力的重要指标。
目前,当应用程序出现异常时,通常通过格式化处理来对应用程序的异常情况进行修复。然而,导致应用程序出现异常的原因有很多,仅仅通过格式化应用程度不能修复应用程序的所有异常情况,从而导致应用程序的异常修复准确度较低。
发明内容
本发明提供了一种应用程序的异常修复方法、装置、存储介质及计算机设备,主要在于能够提高应用程序的异常修复准确度。
根据本发明的第一个方面,提供一种应用程序的异常修复方法,包括:
获取待修复应用程序在预设时间内出现的异常次数;
判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;
若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;
基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;
根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
根据本发明的第二个方面,提供一种应用程序的异常修复装置,包括:
第一获取单元,用于获取待修复应用程序在预设时间内出现的异常次数;
判断单元,用于判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;
第二获取单元,用于若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;
生成单元,用于基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;
修复单元,用于根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
根据本发明的第三个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
获取待修复应用程序在预设时间内出现的异常次数;
判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;
若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;
基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;
根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
根据本发明的第四个方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
获取待修复应用程序在预设时间内出现的异常次数;
判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;
若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;
基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;
根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
根据本发明提供的一种应用程序的异常修复方法、装置、存储介质及计算机设备,与目前通过格式化处理来对应用程序的异常情况进行修复的方式相比,本发明通过获取待修复应用程序在预设时间内出现的异常次数;并判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;与此同时,若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;之后基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;最终根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复,由此通过判断所述待修复应用程序在预设时间内出现的异常次数是否待大于第一预设次数,若所述异常次数大于所述第一预设次数,则根据所述待修复应用程序对应的异常日志,确定所述待修复应用程序对应的第一修复方案,最终根据所述第一修复方案,对所述待修复应用程的异常情况进行修复,避免仅通过格式化应用程序来实现对应用程序异常情况的修复,从而提高了应用程序的异常修复准确度。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例提供的一种应用程序的异常修复方法流程图;
图2示出了本发明实施例提供的另一种应用程序的异常修复方法流程图;
图3示出了本发明实施例提供的一种应用程序的异常修复装置的结构示意图;
图4示出了本发明实施例提供的另一种应用程序的异常修复装置的结构示意图;
图5示出了本发明实施例提供的一种计算机设备的实体结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
目前,通过格式化处理来对应用程序的异常情况进行修复的方式,导致对应用程序的异常情况进行修复的准确度较低。
为了解决上述问题,本发明实施例提供了一种应用程序的异常修复方法,如图1所示,所述方法包括:
101、获取待修复应用程序在预设时间内出现的异常次数。
其中,所述异常次数可以是同一种异常情况出现的次数,也可以是不同异常情况出现的次数。
对应本发明实施例,为了克服现有技术中应用程序异常情况的修复准确度较低的问题,本发明实施例通过判断所述待修复应用程序在预设时间内出现的异常次数是否待大于第一预设次数,若所述异常次数大于所述第一预设次数,则根据所述待修复应用程序对应的异常日志,确定所述待修复应用程序对应的第一修复方案,最终根据所述第一修复方案,对所述待修复应用程的异常情况进行修复,避免仅通过格式化应用程序来实现对应用程序异常情况的修复,从而提高了应用程序的异常修复准确度。本发明实施例主要应用于对应用程序异常情况进行修复的场景,本发明实施例的执行主体为能够对应用程序异常情况进行修复的装置或者设备,具体可以设置在客户端或者服务器一侧。
具体地,预设时间内可以是一周之内、3天之内或者4天之内,所述预设时间内具体是多少本发明实施例不做具体限定。用户在使用应用程序的过程中,监控系统记录应用程序在预设时间内出现的异常次数,例如,用户在登录所述应用程序时,应用程序出现闪退的情况,用户在一周之内登录所述应用程序,一共出现了4次闪退,则监控系统采集并记录所述待修复应用程序在一周之内一共出现了4次闪退的情况,又如,用户在使用应用程序的过程中出现了卡顿的情况,用户在三天之内使用所述应用程序时,一共出现了2次卡顿的情况,则监控系统采集并记录所述待修复应用程序在三天之内一共出现了2次卡顿的异常情况,按照上述方法通过监控系统即可获取所述待修复应用程序在预设时间内出现的异常系数,并根据所述待修复应用程序在预设时间内出现的异常次数,确定与所述异常次数对应的目标修复方案,最终根据所述异常次数对应的目标修复方案,对所述待修复应用程序的异常情况进行修复,避免了仅通过格式化应用程序来对异常情况进行修复的情况,从而提高了应用程序的异常修复准确度。
102、判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数。
其中,所述第一预设次数由开发人员根据实际情况而设定,所述第一预设次数可以为3次、4次或者5次,需要说明的是,所述第一预设次数具体是多少次本发明实施例不做具体限定。
对于本发明实施例,在获取所述待修复应用程序在预设时间内出现的异常次数之后,为了确定所述待修复应用程序对应的修复方案,首先需要判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数,若大于所述第一预设次数,则采用大于所述第一预设次数对应的修复方案对所述待修复应用程序的异常情况进行修复,例如,若第一预设次数为3次,所述待修复应用程序在一周之内一共出现了4次闪退,即异常次数大于所述第一预设次数,则此时需要采用4次异常对应的修复方案对所述待修复应用程序进行修复,由此通过获取所述待修复应用程序在预设时间内出现的异常系数,并采用与所述异常次数相对应的修复方案对所述待修复应用程序进行修复,能够避免仅采用格式化处理的方式来对应用程序进行修复的情况,从而提高了应用程序的异常修复准确度。
103、若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志。
其中,所述异常日志中记录有对待修复应用程序的异常情况描述信息,以及异常情况对应的代码信息等。
对于本发明实施例,在判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数之后,若所述所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则需要获取所述待修复应用程序对应的异常日志,并基于所述异常日志,确定所述待修复应用程序对应的第一修复方案,若所诉所述待修复应用程序在预设时间内出现的异常次数小于或等于所述第一预设次数,则采用第三修复方案对所述待修复应用程序进行修复,例如,若第一预设次数为3次,异常次数为5次,即异常次数大于第一预设次数,此时需要获取所述待修复应用程序对应的异常日志,并基于所述异常日志,确定所述待修复应用程序对应的第一修复方案,最终利用所述第一修复方案对所述待修复应程序的异常情况进行修复,从而提高了应用程序的异常修复准确度。
104、基于所述异常日志,生成所述待修复应用程序对应的第一修复方案。
其中,所述第一修复方案为所述待修复应用程序对应的热修复包。
对于本发明实施例,在获取所述待修复应用程序对应的异常日志后,将所述异常日志通过预设通讯方式发送至所述开发人员终端,以便所述开发人员终端的开发人员基于所述异常日志,生成所述待修复应用程序对应的热修复包,最终基于所述热修复包,对所述待修复应用程序的异常情况进行修复,其中,本发明实施例也可以将获取到待修复应用程序对应的异常日志存储至预设位置处,并采用邮件的方式将通知信息发送至开发人员终端,开发人员终端的开发人员基于通知信息,到预设位置处获取所述异常日志,最终根据所述异常日志,生成所述待修复应用程序对应的热修复包,即第一修补方案,并基于所述第一修复方案,自动对所述待修复应用程序的异常情况进行修复,避免人为手动进行修复的情况,从而提高了应用程序的异常修复效率。
105、根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
对于本发明实施例,采用一套异常修复系统对所述待修复应用程序进行修复,所述异常修复系统包括自解析模块、大数据监控模块、开发人员终端模块、方案评估模块、方案配置模块,所述自解析模块用于监测应用程序的异常情况以及在预设时间内出现的异常次数,当异常次数小于或等于所述第一预设次数,所述自解析模块会采用相应的修复方式自动对所述应用程序进行修复,当异常次数大于所述第一预设次数时,所述自解析模块获取所述应用程序对应的异常日志,并将所述异常日志上传至所述大数据监控模块,所述大数据监控模块会基于所述异常日志,生成待修复应用程序对应的异常报告,并通过邮件等方式将所述异常报告发送至开发人员终端模块,所述开发人员终端模块的开发人员基于所述异常报告,生成所述待修复应用程序对应的热修复包,并将所述热修复包发送至所述方案评估模块,所述方案评估模块对接收到的热修复包进行单元测试和回归测试,其中,所述单元测试为仅对应用程序的异常部分对应的热修复包进行测试,所述回归测试为对整个应用程序对应的热修复包进行测试,所述方案评估模块中存储有所述待修复应用程序对应的源代码,经过所述方案评估模块的测试后,若热修复包测试通过,则将所述测试后的热修复包及其对应的应用程序标识传输至所述方案配置平台进行存储,后续自解析模块会到所述方案配置平台中获取与所述待修复应用程序对应的热修复包,若热修复包测试未通过,则方案评估模块会生成评估报告,并将所述评估报告发送至所述开发人员终端,所述开发人员终端的开发人员基于所述评估报告和所述异常报告,重新生成所述待修复应用程序对应的热修复包,之后将所述重新生成后的热修复包继续发送至所述方案评估模块进行测试,若测试通过,则将所述重新生成的热修复包发送至所述方案配置平台进行存储,其中,所述方案配置平台中可以存储各种应用程序对应的热修复包,每个热修复包都对应着应用程序的标识信息,自解析模块基于所述待修复应用程序对应的标识信息,到所述方案配置平台中获取相应的热修复包,并最终基于获取到的热修复包,自动对所述待修复应用程序的异常情况进行修复,避免人为对所述待修复应用程序进行格式化处理,从而提高了所述应用程序的异常修复效率,与此同时,也提高了所述应用程序的异常修复准确度。
根据本发明提供的一种应用程序的异常修复方法,与目前通过格式化处理来对应用程序的异常情况进行修复的方式相比,本发明通过获取待修复应用程序在预设时间内出现的异常次数;并判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;与此同时,若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;之后基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;最终根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复,由此通过判断所述待修复应用程序在预设时间内出现的异常次数是否待大于第一预设次数,若所述异常次数大于所述第一预设次数,则根据所述待修复应用程序对应的异常日志,确定所述待修复应用程序对应的第一修复方案,最终根据所述第一修复方案,对所述待修复应用程的异常情况进行修复,避免仅通过格式化应用程序来实现对应用程序异常情况的修复,从而提高了应用程序的异常修复准确度。
进一步的,为了更好的说明上述对应用程序的异常情况进行修复的过程,作为对上述实施例的细化和扩展,本发明实施例提供了另一种应用程序的异常修复方法,如图2所示,所述方法包括:
201、获取待修复应用程序在预设时间内出现的异常次数。
对于本发明实施例,可以采用异常修复系统中的自解析模块监控所述待修复应用程的运行情况,若所述待修复应用程序在运行过程中出现异常情况,则记录所述异常情况及其对应的异常次数,之后采集待修复应用程序在预设时间内出现的异常次数,并判断所述异常系数是否大于第一预设次数,若所述异常次数大于所述第一预设次数,则所述自解析模块将所述待修复应用程序对应的异常日志传输至所述异常修复系统中的数据监控模块,例如,若预设时间为1周,则在自解析模块将采集周期设置为1周,则每经过1周,所述自解析模块都会计算所述待修复应用程在1周之内出现的异常次数。
202、判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数。
对于本发明实施例,在所述自解析模块获取所述待修复应用程序在预设时间内出现的异常次数后,为了确定所述待修复应用程序对应的修复方案,所述自解析模块还要判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数,若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志,例如,若预设时间为3天,第一预设次数为4次,在所述待修复应用程序在运行过程中,利用自解析模块采集到的3天之内的异常次数为5次,即异常次数大于所述第一预设次数,则利用自解析模块获取所述待修复应用程序对应的异常日志,并基于所述异常日志,生成所述待修复应用程序对应的第一修复方案,最终基于所述第一修复方案,对所述待修复应用程序进行修复。进一步地,在判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数之后,所述方法还包括:若所述待修复应用程序在预设时间内出现的异常次数小于或等于所述第一预设次数,则判断所述待修复应用程序在预设时间内出现的异常次数是否大于第二预设次数,其中,所述第一预设次数大于所述第二预设次数;若所述待修复应用程序在预设时间内出现的异常次数大于所述第二预设次数,则将所述待修复应用程序重置为初始化状态。
具体地,在判断所述待修复应用程序在预设时间内的异常次数是否大于第一预设次数后,若所述待修复应用程序在预设时间内的异常次数小于或等于所述第一预设次数,则为了确定所述待修复应用程序对应的修复方案,还需要判断所述待修复应用程序在预设时间内的异常次数是否大于第二预设次数,若所述待修复应用程序在预设时间内的异常次数大于第二预设次数,则此时启动所述自解析模块中的自修复流程对应的二级安全模式,所述二级安全模式即为采用自修复流程将所述待修复应用程序重置为初始化状态,即对所述待修复应用程序进行格式化处理,恢复所述待修复应用程序的出厂化设置。进一步地,在判断所述待修复应用程序在预设时间内出现的异常次数是否大于第二预设次数后,为了对所述待修复应用程序进行精准修复,所述方法还包括:若所述待修复应用程序在预设时间内出现的异常次数小于或等于所述第二预设次数,则删除所述待修复应用程序中的缓存数据。
具体地,在判断所述待修复应用程序在预设时间内出现的异常次数是否大于第二预设次数后,若所述待修复应用程序在预设时间内出现的异常次数小于或等于所述第二预设次数,则此时启动所述自解析模块中的自修复流程对应的一级安全模式,所述一级安全模式即为采用自修复流程删除所述待修复应用程序中的业务缓存数据,即释放所述缓存中的存储空间,其中,在清除所述业务缓存中的数据时,需要保留所述待修复应用程序对应的登录信息,所述登录信息包括账号信息和密码信息等。
203、若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志。
对于本发发明实施例,在判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数后,若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则此时自解析模块需要获取所述待修复应用程对应的异常日志,并基于所述异常日志,生成所述待修复应用程序对应的第一修复方案,最终基于所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
例如,设置的第一预设次数为4次,第二预设次数为2次,若获取到的待修复应用程序在预设时间内出现的异常次数为3次,即所述异常次数小于所述第一预设次数,且大于所述第二预设次数,此时自解析模块启动自修复流程将所述待修复应用程程序重置为初始化状态,若获取到的待修复应用程序在预设时间内出现的异常次数为1次,即所述异常次数小于所述第二预设次数,此时自解析模块启动自修复流程删除所述待修复应用程序中的业务缓存数据,若所述待修复应用程序为微信,则次数需要删除所述微信中缓存的聊天记录和图片等数据,若获取到的待修复应用程序在预设时间内出现的异常次数为5次,即所述异常次数大于所述第一预设次数,此时自解析模块调取所述待修复应用程序对应的异常日志,并基于所述异常日志,生成所述待修复应用程对应的第一修复方案。
204、基于所述异常日志,生成所述待修复应用程序对应的第一修复方案。
对于本发明实施例,在自解析模块调取所述待修复应用程序对应的异常日志后,需要基于所述日常日志,生成所述待修复应用程序对应的第一修复方案,基于此,步骤204具体包括:基于所述异常日志,生成所述待修复应用程序对应的异常修复通知;调用预设通讯工具接口,将所述异常修复通知发送至开发人员终端,以便所述开发人员终端的开发人员基于所述异常修复通知查看所述异常日志,并确定所述待修复应用程序对应的第一修复方案。
具体地,所述自解析模块将所述异常日志传输至所述数据监控模块,所述数据监控模块将所述异常日志存储至目标数据库中,此时所述数据监控模块基于所述异常日志,生成所述待修复应用程序对应的异常报告,并基于所述异常报告,生成所述待修复应用程序对应的异常通知,并将所述异常通知以预设通讯工具,如邮件的形式发送给开发人员,开发人员基于所述异常通知,到所述数据监控模块中的目标数据库中获取所述异常日志,并基于所述异常日志,生成所述待修复应用程序对应的热修复包,最终基于所述热修复包,对所述待修复应用程序的异常情况进行修复。
205、提取所述第一修复方案中携带的第一标识信息,以及确定所述待修复应用程序对应的第二标识信息。
对于本发明实施例,在生成所述待修复应用程序对应的第一修复方案之后,为了提高所述待修复应用程序的异常修复准确度,需要对所述第一修复方案进行方案评估,即对第一热修复包进行测试,基于此,所述测试方法包括:对所述第一修复方案进行方案评估,得到所述第一修复方案对应的评估分值;判断所述评估分值是否大于预设分值;若所述评估分值大于所述预设分值,则根据评估后的第一修复方案,对所述待修复应用程序的异常情况进行修复。
具体地,将所述第一热修复包输入至所述方案评估模块中进行测试,其中,所述方案评估模块中存储有待修复应用程序对应的源代码,将所述第一热修复包输入至所述方案评估模块中,所述方案评估模块会模拟运行所述应用程序,所述方案评估模块首先基于所述第一热修复包,单独执行应用程序的异常部分,之后基于所述第一热修复包,执行应用程序的所有运行过程,测试完成后,所述方案评估模块会输出所述第一热修复包对应的评估分值,为了判断所述热修复包是否通过测试,需要判断所述评估分值是否大于预设分值,若所述评估分值大于所述预设分值,则确定所述第一热修复包通过测试,并将通过测试后的热修复包及其对应的第一应用程序标识信息传输至所述方案配置平台中进行存储,其中,所述方案配置平台中可以同时存储多个热修复包及其对应的应用程序标识信息,所述应用程序标识信息唯一能够确定所述热修复包对应的待修复应用程序。进一步地,在判断所述所述评估分值是否大于预设分值之后,为了提高所述待修复应用程的异常修复准确度,所述方法还包括:若所述评估分值小于或等于所述预设分值,则基于所述异常日志,生成所述待修复应用程序对应的第二修复方案;并根据所述第二修复方案,对所述待修复应用程序的异常情况进行修复。
具体地,在判断所述评估分值是否大于预设分值之后,若所述评估分值小于或等于所述预设分值,则确定所述热修复包未通过测试,此时所述方案评估模块会生成所述热修复包对应的评估报告,其中,所述评估报告中会记录测试未通过的描述信息和未通过的代码等信息,并将所述评估报告发送至所述开发人员终端,所述开发人员终端的开发人员基于所述评估报告中记录的各项信息和所异常日志,重新生成所述待修复应用程序对应的第二热修复包,之后将所述第二热修复包再传输至所述方案评估系统中进行测试,得到所述第二评估分值,并判断所述第二评估分值是否大于预设分值,若所述第二评估分值大于所述预设分值,则确定所述第二热修复包通过测试,此时基于所述第二热修复包,对所述待修复应用程序的异常情况进行修复,若所述第二评估分值小于或等于所述预设分值,则方案评估系统继续生成所述第二热修复包对应的评估报告,并将所述评估报告发送至开发人员处,所述开发人员需要重新生成所述待修复应用程序对应的第三热修复包,以此往复,直到所述热修复包通过测试为止,最终基于通过测试的热修复包,对所述待修复应用程序的异常情况进行测试。
进一步地,若所述热修复包通过测试,则方案评估模块将所述热修复包传输至所述方案配置平台中进行存储,此时自解析系统会基于所述待修复应用程序对应的第二标识信息到所述方案配置平台中获取与所述待修复应用程序对应的热修复包,其中,所述方案配置平台中的热修复包中包含第一标识信息,所述第一标识信息能够唯一确定所述热修复包需要修复的应用程序。
206、判断所述第一标识信息和所述第二标识信息是否相同。
具体地,所述方案配置平台中可能会存储多个热修复包,每个热修复包都有其对应的第一标识信息,为了提高所述待修复应用程序的异常修复准确度,在确定所述待修复应用程序对应的第二标识信息后,需要判断所述第二标识信息是否与所述第一标识信息相同,若所述第二标识信息与所述第一标识信息相同,则确定所述自解析模块获取到了正确的热修复包,若所述第一标识信息与所述第二标识信息不相同,则确定所述自解析模块获取到了错误的热修复包,此时需要将所述热修复包放回至所述方案配置模块中,并在所述方案配置模块中重新获取与所述待修复应用程序对应的热修复包。
207、若所述第一标识信息与所述第二标识信息相同,则根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
对于本发明实施例,在判断所述第一标识信息是否等于所述第二标识信息后,若所述第一表述信息等于所述第二标识信息,则确定所述自解析模块获取到正确的热修复包,之后基于所述正确的热修复包,对所述待修复应用程序的异常情况进行修复,对所述待修复应用程序的异常情况进行修复后,所述自解析模块会将修复后的应用程序的运行报告上报至所述数据监控平台,所述数据监控平台将所述运行报告反馈至所述方案评估模块,所述方案评估模块基于所述运行报告,适应性地对自身的测试功能进行优化。
根据本发明提供的另一种应用程序的异常修复方法,与目前通过格式化处理来对应用程序的异常情况进行修复的方式相比,本发明通过获取待修复应用程序在预设时间内出现的异常次数;并判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;与此同时,若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;之后基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;最终根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复,由此通过判断所述待修复应用程序在预设时间内出现的异常次数是否待大于第一预设次数,若所述异常次数大于所述第一预设次数,则根据所述待修复应用程序对应的异常日志,确定所述待修复应用程序对应的第一修复方案,最终根据所述第一修复方案,对所述待修复应用程的异常情况进行修复,避免仅通过格式化应用程序来实现对应用程序异常情况的修复,从而提高了应用程序的异常修复准确度。
进一步地,作为图1的具体实现,本发明实施例提供了一种应用程序的异常修复装置,如图3所示,所述装置包括:第一获取单元31、判断单元32、第二获取单元33、生成单元34和修复单元35。
所述第一获取单元31,可以用于获取待修复应用程序在预设时间内出现的异常次数。
所述判断单元32,可以用于判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数。
所述第二获取单元33,可以用于若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志。
所述生成单元34,可以用于基于所述异常日志,生成所述待修复应用程序对应的第一修复方案。
所述修复单元35,可以用于根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
在具体应用场景中,为了判断是否需要将所述待修复应用程序重置为初始化状态,如图4所示,所述装置还包括:初始化单元36。
所述判断单元32,还可以用于若所述待修复应用程序在预设时间内出现的异常次数小于或等于所述第一预设次数,则判断所述待修复应用程序在预设时间内出现的异常次数是否大于第二预设次数,其中,所述第一预设次数大于所述第二预设次数。
所述初始化单元36,可以用于若所述待修复应用程序在预设时间内出现的异常次数大于所述第二预设次数,则将所述待修复应用程序重置为初始化状态。
在具体应用场景中,为了判断是否需要删除所述待修复应用程序中的缓存数据,所述装置还包括:删除单元37。
所述删除单元37,可以用于若所述待修复应用程序在预设时间内出现的异常次数小于或等于所述第二预设次数,则删除所述待修复应用程序中的缓存数据。
在具体应用场景中,为了基于所述异常日志,生成所述待修复应用程序对应的第一修复方案,所述生成单元34包括:生成模块341和调用模块342。
所述生成模块341,可以用于基于所述异常日志,生成所述待修复应用程序对应的异常修复通知。
所述调用模块342,可以用于调用预设通讯工具接口,将所述异常修复通知发送至开发人员终端,以便所述开发人员终端的开发人员基于所述异常修复通知查看所述异常日志,并确定所述待修复应用程序对应的第一修复方案。
在具体应用场景中,为了判断所述第一修复方案是否通过测试,所述装置还包括:评估单元38。
所述评估单元38,可以用于对所述第一修复方案进行方案评估,得到所述第一修复方案对应的评估分值。
所述判断单元32,还可以用于判断所述评估分值是否大于预设分值。
所述修复单元35,具体可以用于若所述评估分值大于所述预设分值,则根据评估后的第一修复方案,对所述待修复应用程序的异常情况进行修复。
在具体应用场景中,若所述第一修复方案未通过测试,则需要生成所述待修复应用程序对应的第二修复方案,基于此,所述生成单元34,还可以用于若所述评估分值小于或等于所述预设分值,则基于所述异常日志,生成所述待修复应用程序对应的第二修复方案。
所述修复单元35,还可以用于根据所述第二修复方案,对所述待修复应用程序的异常情况进行修复。
在具体应用场景中,为了根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复,所述修复单元35,包括提取模块351、判断模块352和修复模块353。
所述提取模块351,可以用于提取所述第一修复方案中携带的第一标识信息,以及确定所述待修复应用程序对应的第二标识信息。
所述判断模块352,可以用于判断所述第一标识信息和所述第二标识信息是否相同。
所述修复模块353,可以用于若所述第一标识信息与所述第二标识信息相同,则根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
需要说明的是,本发明实施例提供的一种应用程序的异常修复装置所涉及各功能模块的其他相应描述,可以参考图1所示方法的对应描述,在此不再赘述。
基于上述如图1所示方法,相应的,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:获取待修复应用程序在预设时间内出现的异常次数;判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
基于上述如图1所示方法和如图3所示装置的实施例,本发明实施例还提供了一种计算机设备的实体结构图,如图5所示,该计算机设备包括:处理器41、存储器42、及存储在存储器42上并可在处理器上运行的计算机程序,其中存储器42和处理器41均设置在总线43上所述处理器41执行所述程序时实现以下步骤:获取待修复应用程序在预设时间内出现的异常次数;判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
通过本发明的技术方案,本发明通过获取待修复应用程序在预设时间内出现的异常次数;并判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;与此同时,若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;之后基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;最终根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复,由此通过判断所述待修复应用程序在预设时间内出现的异常次数是否待大于第一预设次数,若所述异常次数大于所述第一预设次数,则根据所述待修复应用程序对应的异常日志,确定所述待修复应用程序对应的第一修复方案,最终根据所述第一修复方案,对所述待修复应用程的异常情况进行修复,避免仅通过格式化应用程序来实现对应用程序异常情况的修复,从而提高了应用程序的异常修复准确度。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

Claims (10)

1.一种应用程序的异常修复方法,其特征在于,包括:
获取待修复应用程序在预设时间内出现的异常次数;
判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;
若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;
基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;
根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
2.根据权利要求1所述的方法,其特征在于,在所述判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数之后,所述方法还包括:
若所述待修复应用程序在预设时间内出现的异常次数小于或等于所述第一预设次数,则判断所述待修复应用程序在预设时间内出现的异常次数是否大于第二预设次数,其中,所述第一预设次数大于所述第二预设次数;
若所述待修复应用程序在预设时间内出现的异常次数大于所述第二预设次数,则将所述待修复应用程序重置为初始化状态。
3.根据权利要求2所述的方法,其特征在于,在所述判断所述待修复应用程序在预设时间内出现的异常次数是否大于第二预设次数之后,所述方法还包括:
若所述待修复应用程序在预设时间内出现的异常次数小于或等于所述第二预设次数,则删除所述待修复应用程序中的缓存数据。
4.根据权利要求1所述的方法,其特征在于,所述基于所述异常日志,生成所述待修复应用程序对应的第一修复方案,包括:
基于所述异常日志,生成所述待修复应用程序对应的异常修复通知;
调用预设通讯工具接口,将所述异常修复通知发送至开发人员终端,以便所述开发人员终端的开发人员基于所述异常修复通知查看所述异常日志,并确定所述待修复应用程序对应的第一修复方案。
5.根据权利要求1所述的方法,其特征在于,在根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复之前,所述方法还包括:
对所述第一修复方案进行方案评估,得到所述第一修复方案对应的评估分值;
判断所述评估分值是否大于预设分值;
若所述评估分值大于所述预设分值,则根据评估后的第一修复方案,对所述待修复应用程序的异常情况进行修复。
6.根据权利要求5所述的方法,其特征在于,在所述判断所述评估分值是否大于预设分值之后,所述方法还包括:
若所述评估分值小于或等于所述预设分值,则基于所述异常日志,生成所述待修复应用程序对应的第二修复方案;
所述根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复,包括:
根据所述第二修复方案,对所述待修复应用程序的异常情况进行修复。
7.根据权利要求1所述的方法,其特征在于,所述根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复,包括:
提取所述第一修复方案中携带的第一标识信息,以及确定所述待修复应用程序对应的第二标识信息;
判断所述第一标识信息和所述第二标识信息是否相同;
若所述第一标识信息与所述第二标识信息相同,则根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
8.一种应用程序的异常修复装置,其特征在于,包括:
第一获取单元,用于获取待修复应用程序在预设时间内出现的异常次数;
判断单元,用于判断所述待修复应用程序在预设时间内出现的异常次数是否大于第一预设次数;
第二获取单元,用于若所述待修复应用程序在预设时间内出现的异常次数大于所述第一预设次数,则获取所述待修复应用程序对应的异常日志;
生成单元,用于基于所述异常日志,生成所述待修复应用程序对应的第一修复方案;
修复单元,用于根据所述第一修复方案,对所述待修复应用程序的异常情况进行修复。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202210736908.3A 2022-06-27 2022-06-27 应用程序的异常修复方法、装置、存储介质及计算机设备 Pending CN115016971A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210736908.3A CN115016971A (zh) 2022-06-27 2022-06-27 应用程序的异常修复方法、装置、存储介质及计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210736908.3A CN115016971A (zh) 2022-06-27 2022-06-27 应用程序的异常修复方法、装置、存储介质及计算机设备

Publications (1)

Publication Number Publication Date
CN115016971A true CN115016971A (zh) 2022-09-06

Family

ID=83077486

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210736908.3A Pending CN115016971A (zh) 2022-06-27 2022-06-27 应用程序的异常修复方法、装置、存储介质及计算机设备

Country Status (1)

Country Link
CN (1) CN115016971A (zh)

Similar Documents

Publication Publication Date Title
CN110730246A (zh) 一种微服务架构下的分布式链路跟踪方法
US10552242B2 (en) Runtime failure detection and correction
CN112395156A (zh) 故障的告警方法和装置、存储介质和电子设备
CN108958965A (zh) 一种bmc监控可恢复ecc错误的方法、装置及设备
CN103440460A (zh) 一种应用系统变更验证方法及验证系统
CN114168429A (zh) 报错分析方法、装置、计算机设备及存储介质
CN112256532A (zh) 测试界面生成方法、装置、计算机设备及可读存储介质
CN115016971A (zh) 应用程序的异常修复方法、装置、存储介质及计算机设备
CN106685744A (zh) 一种故障排除方法、装置及系统
CN109493230A (zh) 一种单边交易的补录方法及装置
CN115587046A (zh) 代码异常的处理方法、装置、存储介质及计算机设备
CN112596750B (zh) 应用测试方法、装置、电子设备及计算机可读存储介质
CN110362464B (zh) 软件分析方法及设备
CN111786991B (zh) 基于区块链的平台认证登录方法及相关装置
CN113127317B (zh) 日志的采集处理方法、系统、设备及存储介质
CN112527521B (zh) 消息处理方法及设备
CN114675997A (zh) 一种数据备份的方法、装置、电子设备及存储介质
CN110289977B (zh) 物流仓库系统的故障检测方法及系统、设备和存储介质
CN112925714A (zh) 应用程序的监测方法及系统、电子设备及存储介质
CN115391227A (zh) 基于分布式系统的故障测试方法、装置、设备及介质
CN115168203A (zh) 接口模拟方法、装置、系统、计算机设备和存储介质
CN113704016A (zh) 云功能组件诊断方法、装置、设备、存储介质及程序产品
CN115437829A (zh) 一种防止调用系统基础类方法崩溃的装置及方法
CN115145628A (zh) 版本回滚方法、装置、设备及存储介质
CN114048101A (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