首页 / 专利库 / 软件 / 软件 / 一种软件故障检测方法及装置

一种软件故障检测方法及装置

阅读:527发布:2021-06-08

专利汇可以提供一种软件故障检测方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 实施例 公开了一种 软件 故障检测方法及装置,所述方法包括:获取用户输入的故障参数,所述故障参数为软件故障时所执行的指令;调用预设 接口 依据所述故障参数模拟故障运行过程,并获得运行日志;对所述运行日志进行故障分析,并展示故障分析结果。本发明实施例提供的软件故障检测方法能够辅助系统运维人员对于故障的检测,使软件开发人员对系统内部运行情况更加了解,解决了现有软件故障检测中费时费 力 的问题,节省了人力排查软件系统故障的时间,提升了软件运行故障的解决效率。,下面是一种软件故障检测方法及装置专利的具体信息内容。

1.一种软件故障检测方法,其特征在于,包括:
获取用户输入的故障参数,所述故障参数为软件故障时所执行的指令;
调用预设接口依据所述故障参数模拟故障运行过程,并获得运行日志;
对所述运行日志进行故障分析,并展示故障分析结果。
2.根据权利要求1所述的方法,其特征在于,所述调用预设接口依据所述故障参数模拟故障运行过程,并获得运行日志包括:
调用预设接口将所述故障参数对应的运行指令发送至故障软件以模拟故障运行过程;
调用预设接口获取模拟故障运行过程的运行日志。
3.根据权利要求1所述的方法,其特征在于,所述调用预设接口包括:
依据预设参数调用测试接口,所述测试接口为软件开发时预留的用于检测的测试接口,或
依据预设参数调用正式接口,所述正式接口为软件正常运行时执行命令调用的接口。
4.根据权利要求1所述的方法,其特征在于,所述运行日志包括运行时间、运行顺序和运行耗时;所述运行顺序为软件根据所述故障参数模拟故障运行过程时的运行步骤。
5.根据权利要求1所述的方法,其特征在于,所述对所述运行日志进行故障分析,并展示故障分析结果包括:
依据所述故障参数确定故障分析对象;
依据所述故障分析对象提取所述运行日志关键信息;
依据所述日志关键信息对软件进行故障分析,生成分析结果并展示。
6.一种软件故障检测装置,其特征在于,包括:
参数获取模,用于获取用户输入的故障参数,所述故障参数为软件故障时所执行的指令;
日志获取模块,用于调用预设接口依据所述故障参数模拟故障运行过程,并获得运行日志;
故障分析模块,用于对所述运行日志进行故障分析,并展示故障分析结果。
7.根据权利要求6所述的装置,其特征在于,所述日志获取模块具体用于:
调用预设接口将所述故障参数对应的运行指令发送至故障软件以模拟故障运行过程;
调用预设接口获取模拟故障运行过程的运行日志。
8.根据权利要求6所述的装置,其特征在于,所述日志获取模块具体用于:
依据预设参数调用测试接口,所述测试接口为软件开发时预留的用于检测的测试接口,或
依据预设参数调用正式接口,所述正式接口为软件正常运行时执行命令调用的接口。
9.根据权利要求6所述的装置,其特征在于,所述日志获取模块具体用于:
调用预设接口依据所述故障参数模拟故障运行过程,并获得运行时间、运行顺序和运行耗时;所述运行顺序为软件根据所述故障参数模拟故障运行过程时的运行步骤。
10.根据权利要求6所述的装置,其特征在于,所述故障分析模块具体用于:
依据所述故障参数确定故障分析对象;
依据所述故障分析对象提取所述运行日志关键信息;
依据所述日志关键信息对软件进行故障分析,生成分析结果并展示。

说明书全文

一种软件故障检测方法及装置

技术领域

[0001] 本发明实施例涉及计算机技术,尤其涉及一种软件故障检测方法及装置。

背景技术

[0002] 随着计算机技术的飞速发展,软件正日益广泛地应用于社会的各个领域,且规模越来越大,复杂性越来越高。随着网络、软件规模的发展和扩大,随时保证软件系统的正常运行便格外重要。
[0003] 目前,软件出现运行故障时,一般由软件系统的运维人员进行故障排除维修,但软件系统的运维人员并不是软件系统的开发者,对于软件内部实现并不十分了解,当软件系统异常时无法进行故障原因的快速定位,必要时还需要软件系统的开发人员进行软件故障原因的定位。
[0004] 由此可见,目前软件系统的故障解决方式浪费时间,效率差。

发明内容

[0005] 本发明实施例提供了一种软件故障检测方法及装置,以实现快速、高效的解决软件系统故障。
[0006] 第一方面,本发明实施例提供了一种软件故障检测方法,包括:
[0007] 获取用户输入的故障参数,所述故障参数为软件故障时所执行的指令;
[0008] 调用预设接口依据所述故障参数模拟故障运行过程,并获得运行日志;
[0009] 对所述运行日志进行故障分析,并展示故障分析结果。
[0010] 第二方面,本发明实施例提供了一种软件故障检测装置,包括:
[0011] 参数获取模,用于获取用户输入的故障参数,所述故障参数为软件故障时所执行的指令;
[0012] 日志获取模块,用于调用预设接口依据所述故障参数模拟故障运行过程,并获得运行日志;
[0013] 故障分析模块,用于对所述运行日志进行故障分析,并展示故障分析结果。
[0014] 本发明实施例通过获取用户输入的故障参数,故障参数为软件故障时所执行的指令;调用预设接口依据故障参数模拟故障运行过程,并获得运行日志;对运行日志进行故障分析,并展示故障分析结果,辅助系统运维人员对于故障的检测,使软件开发人员对系统内部运行情况更加了解,解决了现有软件故障检测中费时费的问题,节省了人力排查软件系统故障的时间,提升了软件运行故障的解决效率。附图说明
[0015] 图1是本发明实施例一中的软件故障检测方法的流程图
[0016] 图2是本发明实施例二中的软件故障检测方法的流程图;
[0017] 图3是本发明实施例三中的软件故障检测方法的流程图;
[0018] 图4是本发明实施例三中的软件故障检测装置的结构示意图。

具体实施方式

[0019] 下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
[0020] 实施例一
[0021] 图1是本发明实施例一中的软件故障检测方法的流程图,本实施例可适用于软件运行故障时检测软件故障原因的情形。该方法可以由软件故障检测装置执行,该软件故障检测装置可以采用软件和/或硬件的方式实现。如图1所示,该方法具体包括:
[0022] S110、获取用户输入的故障参数,故障参数为软件故障时所执行的指令。
[0023] 当软件运行出现故障时,为了能够确定软件运行故障的原因,可使软件在后台模拟其故障运行的过程,通过对故障运行过程的分析确定软件运行故障的原因。模拟软件故障运行过程时,需首先获取故障检测工具的用户输入的故障参数,可选的,故障检测工具的用户可以为软件的运维人员。
[0024] 可选的,故障参数是软件运行出现故障时软件所执行的指令。例如,当使用软件的用户需要使用软件进行查询时,需通过输入关键词执行相应的查询操作,当查询过程中软件运行出现故障时,运维人员将用户执行查询操作输入的关键词作为故障参数输入至故障检测工具中,此时,获取运维人员作为故障检测工具的用户输入的故障参数,即获取运维人员输入的关键词。
[0025] 例如,当用户通过输入“张某”进行搜索时,软件运行出现故障,运维人员可将“张某”作为故障参数输入至故障检测工具中。此时,故障检测工具获取故障参数“张某”。
[0026] 在本发明的另一种实施方式中,还可以将软件运行故障时弹出的错误代码作为软件运行故障的故障参数。通过预先设置错误代码与指令的对应关系,当运维人员将错误代码作为故障参数输入时,通过错误代码与指令的对应关系,确定软件运行故障时所执行的指令。
[0027] S120、调用预设接口依据故障参数模拟故障运行过程,并获得运行日志。
[0028] 在本实施例中,可在软件开发时预设接口及调用预设接口的参数。当软件运行故障时,获取软件运行故障的故障参数后,通过预设参数调用预设接口,使软件在后台依据故障参数对软件运行故障的过程进行模拟,并将对应的运行日志通过预设接口输出,故障检测工具获取软件输出的运行日志,以根据运行日志获得软件故障的详细运行过程。
[0029] 运行日志的日志内容可在软件开发时由软件开发人员确定。可选的,运行日志包括运行时间、运行顺序和运行耗时;运行顺序为软件根据故障参数模拟故障运行过程时的运行步骤。在本实施例中,为了能够通过分析运行日志确定软件运行故障的原因,在预设接口中加入了更加详细的日志记录,使获取的运行日志内容相对于程序正常运行时记录的日志内容更丰富。
[0030] 具体的,每个操作对应的程序的运行需执行多个方法,可预先将需要关注的方法进行标记,在软件故障检测时,将标记的方法所对应的运行时间、运行顺序、运行耗时写入运行日志中输出,供故障检测工具分析。可选的,需要关注的方法可以为执行时容易造成软件运行故障的方法,方法是否需要标记可由程序开发人员根据实际经验判断。
[0031] S130、对运行日志进行故障分析,并展示故障分析结果。
[0032] 在本实施例中,通过对软件运行故障时运行日志的分析,初步定位出软件运行故障的原因及位置,并向用户展示。
[0033] 一般的,软件正常运行时,每个方法对应的运行顺序、运行耗时均有一定的规律。可通过对运行顺序及运行耗时的检测,判断软件运行故障的原因。例如,每个方法对应的运行时间均有固定的时间范围,可预先设置每个方法的正常运行时间,若软件运行故障时运行日志中某步骤对应的运行时间超出了预设的正常运行时间,则判定该步骤为软件运行故障的原因。再例如,若执行某方法需要五个步骤,而运行日志中只有前三个步骤的运行记录,则可以确定运行第三个步骤时出现异常,导致软件运行故障。
[0034] 可选的,故障检测工具进行故障检测时,可通过图形化显示方法或命令行运行形式展示分析进度,使用户能够清楚地了解故障分析的进度。
[0035] 需要说明的是,在本实施例中,对软件源程序的语言不做限制,即本发明实施例提供的软件故障检测方法可适用于不同语言编写的软件。
[0036] 本发明实施例通过获取用户输入的故障参数,故障参数为软件故障时所执行的指令;调用预设接口依据故障参数模拟故障运行过程,并获得运行日志;对运行日志进行故障分析,并展示故障分析结果,辅助系统运维人员对于故障的检测,使软件开发人员对系统内部运行情况更加了解,解决了现有软件故障检测中费时费力的问题,节省了人力排查软件系统故障的时间,提升了软件运行故障的解决效率。
[0037] 在上述方案的基础上,所述调用预设接口包括:
[0038] 依据预设参数调用测试接口,所述测试接口为软件开发时预留的用于检测的测试接口,或
[0039] 依据预设参数调用正式接口,所述正式接口为软件正常运行时执行命令调用的接口。
[0040] 具体的,预设接口可以为软件开发时预留的测试接口,也可以为软件运行时的正式接口。
[0041] 当通过调用测试接口进行软件故障检测时,每个测试接口均有其对应的正式接口,且测试接口与其对应的正式接口具有相同的功能。不同的是,测试接口输出的运行日志与软件正常运行时正式接口输出的运行日志相比,内容更加详细,其包含了软件运行时更加详细的方法运行、调用等日志内容。软件开发时是否需要预留测试接口由相应的正式接口的故障率决定。当某个正式接口故障率较高时,可设置一个与该正式接口对应的测试借口,在软件运行故障时,通过调用测试接口进行故障检测。
[0042] 当通过调用正式接口进行软件故障分析时,可预先设置相应的参数,使正式接口被故障检测工具调用时输出的运行日志比正常运行时输出的运行日志更加详细。
[0043] 优选的,可预先设置测试接口作为软件故障检测时调用的预设接口。通过调用测试接口进行故障分析时,不影响正式接口的运行,还能够避免通过调用正式接口进行故障分析时错误的调用参数对软件正常运行造成的影响。
[0044] 实施例二
[0045] 图2是本发明实施例二中的软件故障检测方法的流程图,本实施例在实施例一的基础上进行进一步地优化。如图2所示,所述方法包括:
[0046] S210、获取用户输入的故障参数,故障参数为软件故障时所执行的指令。
[0047] S220、调用预设接口将故障参数对应的运行指令发送至故障软件以模拟故障运行过程。
[0048] 在本实施例中,通过调用预设接口将故障参数对应的程序运行指令发送至故障软件,使故障软件运行相应指令,模拟故障运行的过程。
[0049] 可选的,故障检测工具可根据获得的故障参数生成相应的程序运行指令。以上文中的搜索操作为例,当用户通过输入“张某”进行搜索,软件运行出现故障时,运维人员将“张某”作为故障参数输入至故障检测工具,故障检测工具根据“张某”及对应的搜索操作,确定相应的程序运行指令,并通过预设参数调用预设接口,将搜索“张某”对应的程序运行指令发送至故障软件,使故障软件模拟搜索“张某”时的运行过程。
[0050] S230、调用预设接口获取模拟故障运行过程的运行日志。
[0051] 可选的,故障软件进行故障运行模拟后,将模拟的故障运行过程对应的运行日志通过预设接口输出,故障检测工具通过调用预设接口获取模拟故障运行过程的运行日志。
[0052] S240、对运行日志进行故障分析,并展示故障分析结果。
[0053] 本实施例的技术方案,在上述实施例的基础上,将调用预设接口依据故障参数模拟故障运行过程,并获得运行日志具体化为:调用预设接口将故障参数对应的运行指令发送至故障软件以模拟故障运行过程,调用预设接口获取模拟故障运行过程的运行日志。利用该方法,能够使软件根据故障参数模拟故障运行过程,并生成对应的运行日志,使故障检测工具通过对运行日志的分析自动确定软件故障原因。
[0054] 实施例三
[0055] 图3是本发明实施例三中的软件故障检测方法的流程图,本实施例在上述各实施例的基础上进行进一步地优化。如图3所示,所述方法包括:
[0056] S310、获取用户输入的故障参数,故障参数为软件故障时所执行的指令。
[0057] S320、调用预设接口故障参数模拟故障运行过程,并获得运行日志。
[0058] S330、依据故障参数确定故障分析对象。
[0059] 在本实施例中,对运行日志进行故障分析时,首先确定故障分析对象。当软件执行不同的指令时,对应有不同的故障分析对象。可选的,可将软件执行指令时易导致软件运行故障的组件或方法确定为故障分析对象。
[0060] 例如,当软件执行搜索操作时,故障分析对象可以为网络带宽、执行搜索操作需调用的数据库及其相关方法。
[0061] S340、依据故障分析对象提取运行日志关键信息。
[0062] 在本实施例中,运行日志中记录有软件运行时所有方法的运行记录。为了减少故障分析的运算量,提高故障分析的速度,可从运行日志中提取出与故障分析对象相关的日志信息作为运行日志关键信息。
[0063] 例如,当软件执行搜索操作时,将网络带宽、数据库及相关方法作为故障分析对象。在进行故障分析时,从运行日志中提取出与网络带宽、数据库及相关方法有关的日志内容作为运行日志关键信息。
[0064] S350、依据日志关键信息对软件进行故障分析,生成分析结果并展示。
[0065] 通过提取出的日志关键信息检测故障分析对象,判断故障分析对象是否为造成软件运行故障的原因。可选的,可通过将故障分析对象的运行耗时与预设耗时进行比较,当故障分析对象的运行耗时大于预设耗时时,确定故障分析对象为造成软件运行故障的原因;还可通过对方法的运行顺序的分析,确定软件运行故障的原因。
[0066] 在本实施例中,在对故障分析对象进行检测后,依据检测结果生成故障分析结果。故障分析结果可以包括故障分析对象及其运行情况,其中运行情况包括运行正常和运行异常,当故障分析对象运行异常时,还可将其异常原因添加至故障分析结果中。
[0067] 可选的,可将故障分析对象及其运行情况全部展示在故障分析结果中,使用户对软件运行过程有更详细的了解;也可只将判断为运行异常的故障分析对象及其运行异常的原因展示在故障分析结果中,使用户直观的看出软件运行故障的原因。
[0068] 本实施例的技术方案,在上述实施例的基础上,将对运行日志进行故障分析,并展示故障分析结果具体化为:依据故障参数确定故障分析对象;依据故障分析对象提取所述运行日志关键信息;依据日志关键信息对软件进行故障分析,生成分析结果并展示。利用该方法,能够更快速地确定软件运行故障原因,实现快速、高效的解决软件系统故障。
[0069] 实施例四
[0070] 图4是本发明实施例四中的软件故障检测装置的结构示意图。该软件故障检测装置可以采用软件和/或硬件的方式实现。如图4所示,所述装置包括:
[0071] 参数获取模块410,用于获取用户输入的故障参数,所述故障参数为软件故障时所执行的指令;
[0072] 日志获取模块420,用于调用预设接口依据所述故障参数模拟故障运行过程,并获得运行日志;
[0073] 故障分析模块430,用于对所述运行日志进行故障分析,并展示故障分析结果。
[0074] 进一步地,所述日志获取模块420具体用于:
[0075] 调用预设接口将所述故障参数对应的运行指令发送至故障软件以模拟故障运行过程;
[0076] 调用预设接口获取模拟故障运行过程的运行日志。
[0077] 进一步地,所述日志获取模块420具体用于:
[0078] 依据预设参数调用测试接口,所述测试接口为软件开发时预留的用于检测的测试接口,或
[0079] 依据预设参数调用正式接口,所述正式接口为软件正常运行时执行命令调用的接口。
[0080] 进一步地,所述日志获取模块420具体用于:
[0081] 调用预设接口依据所述故障参数模拟故障运行过程,并获得运行时间、运行顺序和运行耗时;所述运行顺序为软件根据所述故障参数模拟故障运行过程时的运行步骤。
[0082] 进一步地,所述故障分析模块430具体用于:
[0083] 依据所述故障参数确定故障分析对象;
[0084] 依据所述故障分析对象提取所述运行日志关键信息;
[0085] 依据所述日志关键信息对软件进行故障分析,生成分析结果并展示。
[0086] 本发明实施例通过参数获取模块获取用户输入的故障参数,故障参数为软件故障时所执行的指令;日志获取模块调用预设接口依据故障参数模拟故障运行过程,并获得运行日志;故障分析模块对运行日志进行故障分析,并展示故障分析结果,辅助系统运维人员对于故障的检测,使软件开发人员对系统内部运行情况更加了解,解决了现有软件故障检测中费时费力的问题,节省了人力排查软件系统故障的时间,提升了软件运行故障的解决效率。
[0087] 本发明实施例所提供的软件故障检测装置可执行本发明任意实施例所提供的软件故障检测方法,具备执行方法相应的功能模块和有益效果。
[0088] 注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈