一种软件的运行状态检查方法、装置、设备及介质与流程

文档序号:30061026发布日期:2022-05-17 23:33阅读:217来源:国知局
一种软件的运行状态检查方法、装置、设备及介质与流程

1.本技术涉及计算机技术领域,尤其涉及一种软件的运行状态检查方法、装置、设备及介质。


背景技术:

2.在计算机中,操作系统是一种基本并且非常重要的系统软件,在操作系统中运行了各种应用软件或中间件以支撑整个计算机系统的运行。运维人员需要掌握各类软件的运行状态,才能避免计算机运行出现问题。
3.而现有技术中,针对各类软件运行状态的告警,只有等软件运行出问题时才会产生告警,不利于运维人员提前对系统运行进行排查和分析。


技术实现要素:

4.有鉴于此,本技术实施例提供了一种软件的运行状态检查方法、装置、设备及介质,方便提前对系统运行进行排查和分析。
5.第一方面,本技术实施例提供了一种软件的运行状态检查方法,所述方法包括:
6.获取软件的运行指标的结果,所述软件包括系统软件、应用软件和中间件中的至少一种,所述结果用于指示所述运行指标为正常或异常;
7.根据所述运行指标的结果,获取所述软件运行的异常分数;
8.根据所述异常分数判断所述软件的运行状态是否为异常状态。
9.在一种可能的实现方式中,所述根据所述运行指标的结果,获取所述软件运行的异常分数,包括:
10.根据所述运行指标的结果以及所述运行指标的权重,获取所述软件运行的异常分数,所述权重用于表示所述运行指标对所述软件运行的影响程度,所述权重的取值范围为0-1。
11.在一种可能的实现方式中,所述根据所述运行指标的结果以及所述运行指标的权重,获取所述软件运行的异常分数,包括:
12.当所述运行指标中包括一个或多个目标运行指标并且存在至少一个所述目标运行指标的结果为异常时,根据所述运行指标的结果、所述运行指标的权重以及所述目标运行指标的异常权重,获取所述软件运行的异常分数,所述异常权重大于0。
13.在一种可能的实现方式中,所述获取软件的运行指标的结果包括:
14.根据所述软件的互联网协议(internet protocol address,ip)地址,获取与所述软件相对应的检查程序;
15.运行所述检查程序获取所述软件的运行指标的结果。
16.在一种可能的实现方式中,所述根据所述异常分数判断所述软件的运行状态是否为异常状态包括:
17.当所述异常分数大于第一预设分数时,确定所述软件的运行状态为异常状态。
18.在一种可能的实现方式中,所述方法还包括:
19.当所述异常分数大于第二预设分数时,获取与所述软件相对应的异常处理程序;
20.运行所述异常处理程序对所述软件进行异常处理,其中,所述第二预设分数大于所述第一预设分数。
21.第二方面,本技术实施例提供了一种软件的运行状态检查装置,所述装置包括:第一获取模块、第二获取模块以及判断模块;
22.所述第一获取模块,用于获取软件的运行指标的结果,所述软件包括系统软件、应用软件和中间件中的至少一种,所述结果用于指示所述运行指标为正常或异常;
23.所述第二获取模块,用于根据所述运行指标的结果,获取所述软件运行的异常分数;
24.所述判断模块,用于根据所述异常分数判断所述软件的运行状态是否为异常状态。
25.第三方面,本技术实施例提供了一种软件的运行状态检查设备,所述设备包括:存储器以及处理器;
26.所述存储器用于存储相关的程序代码;
27.所述处理器用于调用所述程序代码,执行上述第一方面任意一种实施方式所述的软件的运行状态检查方法。
28.第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行执行上述第一方面任意一种实施方式所述的软件的运行状态检查方法。
29.由此可见,本技术实施例具有如下有益效果:
30.在本技术实施例的上述实现方式中,当检查软件的运行状态时,首先获取软件的运行指标的结果,其中,软件包括系统软件、应用软件和中间件中的至少一种,该结果用于指示运行指标为正常或异常。根据运行指标的结果,获取软件的异常分数,该异常分数用于表示软件的运行状态,然后根据异常分数判断软件的运行状态是否为异常状态。也就是,运行指标的结果为异常时,软件的运行状态并不一定异常。通过本技术实施例提供的技术方案,运维人员可以根据软件运行时所产生的各种运行指标的结果,评估当前软件的运行状态是否为异常状态,提前对系统运行进行排查和分析。
附图说明
31.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见,下面描述中的附图仅仅是本技术中提供的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
32.图1为本技术实施例中一种软件的运行状态检查方法的流程图;
33.图2为本技术实施例中一种获取运行指标的结果的流程图;
34.图3为本技术实施例中一种专家系统的工作原理的流程图;
35.图4为本技术实施例中一种专家系统判断软件的运行状态的原理图;
36.图5为本技术实施例中另一种软件的运行状态检查方法的流程图;
37.图6为本技术实施例中一种软件的运行状态检查装置的示意图;
38.图7为本技术实施例中一种软件的运行状态检查设备的示意图。
具体实施方式
39.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整的描述,所描述的实施例仅为本技术示例性的实施方式,并非全部实现方式。本领域技术人员可以结合本技术的实施例,在不进行创造性劳动的情况下,获得其他的实施例,而这些实施例也在本技术的保护范围之内。
40.为了便于理解本技术所提供的技术方案,下面将对本技术所涉及的技术背景进行说明。
41.软件是一系列按照特定顺序组织的计算机数据和指令的集合,软件并不只是包括可以在计算机上运行的电脑程序,与这些电脑程序相关的文档一般也被认为是软件的一部分。软件可以被划分为系统软件、应用软件以及中间件。其中,系统软件是指控制和协调计算机及外部设备、支持应用软件开发和运行的系统,是无需用户干预的各种程序的集合。主要功能是调度、监控和维护计算机系统,管理计算机系统中各种独立的硬件,使它们可以协调工作。应用软件是用户可以使用的各种程序设计语言以及用各种程序设计语言编制的应用程序的集合,是为满足用户不同领域、不同问题的应用需求而提供的,可以拓宽计算机系统的应用领域。中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。
42.在计算机中,操作系统是一种基本并且非常重要的系统软件,需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务,也可以提供一个让用户与系统交互的操作界面。在操作系统中运行了各种应用软件和中间件以支撑整个计算机系统的运行。运维人员需要掌握系统中各类软件的运行状态,才能避免计算机运行出现问题。而现有技术中,针对各类软件运行状态的告警,只有等软件运行出问题时才会产生告警,不利于运维人员提前对系统运行进行排查和分析。
43.基于此,本技术实施例提供了一种软件的运行状态检查方法,方便运维人员提前对系统运行进行排查和分析。具体实现时,获取软件的运行指标的结果,其中,软件包括系统软件、应用软件和中间件中的至少一种,该结果用于指示运行指标为正常或异常。根据运行指标的结果,获取软件的异常分数,该异常分数用于表示软件的运行状态,然后根据异常分数判断软件的运行状态是否为异常状态。也就是,运行指标的结果为异常时,软件的运行状态并不一定异常。通过本技术实施例提供的技术方案,运维人员可以根据软件运行时所产生的各种运行指标的结果,评估当前软件的运行状态是否为异常状态,提前对系统运行进行排查和分析。
44.下面将结合附图对本技术实施例所提供的软件的运行状态检查方法进行介绍。
45.参见图1,图1为本技术实施例中一种软件的运行状态检查方法的流程图。
46.该方法具体包括以下步骤:
47.s101:获取软件的运行指标的结果,其中,该软件包括系统软件、应用软件和中间件中的至少一种,该结果用于指示运行指标为正常或异常。
48.本技术所提供的技术方案可以批量检查系统中系统软件、应用软件以及中间件等各类软件的运行状态,如操作系统以及操作系统所支持的数据库、中间件等。本实施例通过对软件运行时各类运行指标的结果进行分析,检查软件的运行状态是否正常。具体实现时,首先需要获取软件各个运行指标的结果,该结果用于指示软件的运行指标为正常或异常,然后根据各个运行指标的结果综合判断该软件的运行状态为正常状态还是异常状态。
49.在一种可能的实现方式中,本技术实施例可以根据软件的互联网协议(internet protocol address,ip)地址,获取与软件的类型相对应的检查程序,然后运行该检查程序,获取该软件的运行指标的结果。例如,在检查操作系统的运行状态是否正常时,可以获取操作系统的类型、ip地址等相关参数,并将操作系统的相关参数输入到相应的检查程序中,运行该检查程序即可获取操作系统的各种运行指标的结果。同理,也可以根据数据库、中间件的类型以及ip地址等相关信息,对数据库、中间件的运行状态进行检查,获取软件所对应的运行指标的结果。其中,各类软件所对应的检查程序可以由相关人员预先在系统中进行编写并存储,当利用检查程序检查软件的运行状态时,调用对应的检查程序即可。如图2所示,图2为本技术实施例中一种获取运行指标的结果的流程图。
50.在图2中,该检查程序所支持的操作系统的类型可以为:linux、windows以及aix等,所支持的数据库的类型可以为:oracle、mysql等,所支持的中间件的类型可以为:iis、was等。具体实现时,根据待检查软件的类型,获取软件的ip地址等相关参数,然后将软件的相关参数输入到相应的检查程序中,运行检查程序后获取软件运行指标的结果,然后根据运行指标的结果进行后续的处理。
51.需要说明的是,在检查系统的操作系统、中间件、数据库等软件的运行状态时,可以同时获取操作系统以及操作系统所包含的中间件、数据库等软件的相关参数,然后将不同软件的相关参数分别输入到相对应的检查程序中进行检查,也可以单独获取任意一种软件的相关参数,利用该软件所对应的检查程序检查该软件的运行状态。另外,系统所支持的中间件和数据库的类型后续可以进行动态添加,根据所添加的中间件或数据库的类型编写相对应的检查程序,与当前检查流程相结合即可实现新添加软件的运行检查操作,可以较灵活地扩展系统的性能。
52.s102:根据运行指标的结果,获取软件运行的异常分数。
53.当获取软件的运行指标的结果后,可以根据运行指标的结果获取软件运行的异常分数,然后根据异常分数判断软件的运行状态为正常状态还是异常状态。
54.在一种可能的实现方式中,本技术实施例可以利用专家系统分析运行指标的结果,获取软件的异常分数。其中,专家系统是一个智能计算机程序系统,可以根据某领域专家提供的知识和经验,进行推理和判断,模拟人类专家的决策过程。也就是,获取运行指标的结果后,将各种运行指标的结果输入到专家系统中。当专家系统获取各个运行指标的结果之后,根据每个运行指标的结果以及该运行指标所对应的权重,计算软件的异常分数。其中,每个运行指标的权重表示该运行指标对软件运行的影响程度,权重的取值范围为0-1。即运行指标对应的权重越大,表明该运行指标对软件正常运行的影响越大。在实际应用中,可以根据具体需求设置每个运行指标的权重,本技术实施例对此不做限定。下面将结合附图对专家系统的工作原理进行说明。
55.参见图3,图3为本技术实施例中一种专家系统的工作原理的流程图。
56.该方法主要包括以下步骤:
57.s301:获取软件的相关参数;
58.s302:基于检查程序获取软件的运行指标的结果;
59.s303:专家系统对运行指标的结果进行统一处理;
60.s304:获取软件的异常分数。
61.下面将结合一种应用场景具体介绍专家系统的工作原理。
62.在该应用场景中,待检查软件为操作系统,可以根据操作系统的类型以及ip地址等相关参数,获取操作系统对应的检查程序。运行该检查程序后得到操作系统各个运行指标的结果mi,其中,mi的取值为1或0,当mi为1时,表明该运行指标为异常;当mi为0时,表明该运行指标为正常。每个运行指标对应的权重为xi,xi的取值范围为0-1,其中,i=1,2,...,n,表明操作系统运行时包含n个运行指标。
63.然后根据运行指标的结果以及运行指标对应的权重,对所有运行指标的结果进行求和以及归一化处理,再乘以100即可得到当前软件运行的异常分数,即异常分数score的计算公式为:
64.在实际应用过程中,对于某个软件而言,某些运行指标对软件运行的影响较大,当该运行指标异常时,该软件的运行状态极大概率为异常状态。基于此,本技术实施例提供一种优选的实现方式,当运行指标中包括一个或多个目标运行指标时,即存在对软件运行影响较大的运行指标,并且上述目标运行指标中存在至少一个目标运行指标的结果为异常,则根据各个运行指标的结果、运行指标对应的权重以及目标运行指标对应的异常权重,计算软件运行的异常分数。
65.下面将结合一种应用场景对专家系统处理目标运行指标的原理进行说明。
66.在上述应用场景中,获取操作系统各个运行指标的结果以及权重之后,当运行指标中包括一个或多个目标运行指标并且存在至少一个目标运行指标的结果为异常时,需要根据运行指标的结果、运行指标对应的权重以及目标运行指标对应的异常权重,计算操作系统运行时的异常分数。
67.在一种可能的实现方式中,可以为目标运行指标设置偏置值zk和异常权重y,其中,k=1,...,j,j为操作系统所包含的目标运行指标的个数,zk的取值为0或1,当zk为1时,表明该目标运行指标的结果为异常;当zk为0时,表明该目标运行指标的结果为正常。异常权重y为大于0的值,可以根据实际应用情况调整异常权重y的值,主要功能为当软件的目标运行指标的结果为异常时,保证软件的异常分数满足异常条件。当运行指标中包括多个目标运行指标时,只要满足存在一个目标运行指标的结果为异常,则可以根据运行指标的结果、运行指标的权重以及目标运行指标的异常权重计算软件的异常分数。
68.在一种可能的实现方式中,本实施例中异常分数score的计算公式可以为:其中,各个目标运行指标满足“或”的关系,即只要有一个目标运行指标的偏置值为1就可以按照上述公式计算。
69.需要说明的是,上述实施例中计算异常分数的方法仅为示例性的说明,并非仅限于上述实现方式,其他可能的计算方式也在本技术的保护范围内。
70.s103:根据异常分数判断软件的运行状态是否为异常状态。
71.当获取软件的异常分数后,根据异常分数的大小判断软件的运行状态是否为异常状态。具体地,当异常分数大于第一预设分数时,确定软件的运行状态为异常状态。在软件的运行状态为异常状态时,根据软件异常分数的大小,可以对软件采取不同的处理策略。当异常分数大于第一预设分数小于或等于第二预设分数时,可以将软件的运行状态设为警告,后续重点关注该软件的运行状态;当异常分数大于第二预设分数时,表明软件的运行状态出现严重错误,需要立即进行处理,此时可以根据系统中预先配置的数据库执行推荐操作,即数据库中预先存储了针对软件运行的各种处理操作,例如,查看软件运行时的相关参数、调用软件对应的异常处理程序等,可以运行异常处理程序对软件进行异常处理。下面将结合上述应用场景介绍专家系统判断软件的运行状态的原理。
72.参见图4,图4为本技术实施例中一种专家系统判断软件的运行状态的原理图。
73.在该应用场景中,软件运行时产生4个运行指标的结果为m1、m2、m3和m4,对应的权重分别为x1、x2、x3和x4,运行指标中包括2个目标运行指标为m1和m2,所对应的偏置值为z1和z2,目标运行指标的异常权重为y,根据运行指标的结果、运行指标的权重、目标运行指标的偏置值和异常权重计算软件的异常分数。在该应用场景中,设置第一预设分数为50,第二预设分数为70,当异常分数大于50且小于或等于70时,表明软件的运行状态为异常警告,后续可以重点关注该软件的运行状态;当异常分数大于70时,表明软件的运行状态为异常错误,需要对软件进行异常处理;当异常分数小于或等于50时,表明软件的运行状态为正常状态。需要说明的是,上述实施例中第一预设分数和第二预设分数仅为示例性的说明,可以结合实际需求进行设置,本技术对此不做限定。
74.本技术实施例所提供的软件的运行状态检查方法,通过对软件的运行指标结果进行综合评估,检查软件的运行状态,方便运维人员提前对系统运行进行排查和分析。并且在软件的运行状态处于异常时,可以调用异常处理程序对软件进行异常处理,提高运维处置效率。
75.另外,当检查软件的运行状态之后,可以将软件的检查结果以工单的形式进行保存,运维人员后续可以查看工单中软件的历史数据进行分析。
76.上述实施例中对软件的运行状态进行检查的操作可以由运维人员手动触发,运维人员触发检查操作后系统可以自动执行整个检查流程,简化运维人员的操作。也可以将检查程序部署于系统的调度平台,由调度平台定时调度软件的检查流程,自动检查软件的运行状态。
77.基于上述实施例,本技术还提供一种软件的运行状态检查方法。如图5所示,该方法具体包括以下步骤:
78.s501:根据待检查软件的类型获取相关参数;
79.s502:解析相关参数获取对应的检查程序;
80.s503:运行检查程序;
81.s504:获取检查结果;
82.s505:创建工单存储检查结果;
83.s506:执行推荐操作。
84.具体实现时,根据待检查软件的类型获取软件的ip地址等相关参数,然后根据相
关参数获取软件对应的检查程序。运行检查程序后,获取软件的检查结果,创建工单后将软件的检查结果存储在工单中。当软件的运行处于异常状态时,可以根据系统的提示执行推荐操作,对软件进行异常处理。
85.基于以上方法实施例,本技术实施例还提供一种软件的运行状态检查装置。参见图6,图6为本技术实施例中一种软件的运行状态检查装置的示意图。
86.该装置600包括:第一获取模块601、第二获取模块602以及判断模块603;
87.所述第一获取模块601,用于获取软件的运行指标的结果,所述软件包括系统软件、应用软件和中间件中的至少一种,所述结果用于指示所述运行指标为正常或异常;
88.所述第二获取模块602,用于根据所述运行指标的结果,获取所述软件运行的异常分数;
89.所述判断模块603,用于根据所述异常分数判断所述软件的运行状态是否为异常状态。
90.在一种可能的实现方式中,第二获取模块602,具体用于根据所述运行指标的结果以及所述运行指标的权重,获取所述软件运行的异常分数,所述权重用于表示所述运行指标对所述软件运行的影响程度,所述权重的取值范围为0-1。
91.在一种可能的实现方式中,第二获取模块602,具体用于当所述运行指标中包括一个或多个目标运行指标并且存在至少一个所述目标运行指标的结果为异常时,根据所述运行指标的结果、所述运行指标的权重以及所述目标运行指标的异常权重,获取所述软件运行的异常分数,所述异常权重大于0。
92.在一种可能的实现方式中,第一获取模块601,具体用于根据所述软件的互联网协议(internet protocol address,ip)地址,获取与所述软件相对应的检查程序;运行所述检查程序获取所述软件的运行指标的结果。
93.在一种可能的实现方式中,判断模块603,具体用于当所述异常分数大于第一预设分数时,确定所述软件的运行状态为异常状态。
94.在一种可能的实现方式中,装置600还包括异常处理模块,该异常处理模块用于当所述异常分数大于第二预设分数时,获取与所述软件相对应的异常处理程序;运行所述异常处理程序对所述软件进行异常处理,其中,所述第二预设分数大于所述第一预设分数。
95.基于上述方法实施例和装置实施例,本技术实施例还提供一种软件的运行状态检查设备。参见图7,图7为本技术实施例中一种软件的运行状态检查设备的示意图。
96.该设备700包括:存储器701以及处理器702;
97.所述存储器701用于存储相关的程序代码;
98.所述处理器702用于调用所述程序代码,执行上述方法实施例所述的软件的运行状态检查方法。
99.此外,本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述方法实施例所述的软件的运行状态检查方法。
100.需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。尤其,对于装置实施例而言,由于其基本类似于方法实施例,所以描述得比较简单,相关部分参见方
法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元或模块可以是或者也可以不是物理上分开的,作为单元或模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上,可以根据实际需要选择其中的部分或者全部单元或模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
101.应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
102.还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
103.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
104.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1