用于动态识别促使服务劣化的组件的方法和系统转让专利

申请号 : CN200710186723.5

文献号 : CN101206569B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 韦恩·B·赖利肯尼思·J·帕齐格纳特尼雷杰·P·乔希

申请人 : 国际商业机器公司

摘要 :

提供了一种用于动态识别促使服务劣化的一个或多个组件或资源的方法、系统和程序产品。该方法包括提供具有逻辑的动态相关逻辑工具,其被配置为动态建立在给定的时间点处、应用程序经历服务劣化的模型。此外,该方法包括从配置管理数据库中获得的由在给定时间点处、经历服务劣化的应用程序使用的资源配置数据,并使用获得的配置数据、和从监视所述资源的监视源中获得的状态数据动态建立模型。此外,该方法包括使用提供的逻辑来评估和分析该模型,并识别由应用程序使用的、促使服务劣化的的一个或多个资源。该方法还包括报告识别的一个或多个资源,使得能够采取适当的(各)行动。

权利要求 :

1.一种动态识别在给定的时间点处、促使服务劣化的一个或多个资源的方法,所述方法包括步骤:从配置管理数据库获得由在给定的时间点处、经历服务劣化的应用程序所使用的一个或多个资源的配置数据组;

使用从所述配置管理数据库中获得的所述配置数据组、和从配置为监视所述一个或多个资源的一个或多个监视源获得的状态数据,加上任何资源和/或关系的附加属性,动态建立用于所述应用程序的模型;

使用逻辑评估所述模型;以及

识别由所述应用程序使用的、在给定的时间点促使服务劣化的一个或多个资源,提供具有所述逻辑的动态相关逻辑工具,其配置为动态建立用于正经历服务劣化的所述应用程序的所述模型,并使用所述逻辑分析所述模型。

2.根据权利要求1所述的方法,其中所述获得步骤还包括步骤:提供所述配置管理数据库,其配置为在其中存储由所述应用程序使用的所述一个或多个资源的所述配置数据组。

3.根据权利要求2所述的方法,其中所述动态建立步骤还包括步骤:从所述一个或多个监视源采集由所述应用程序使用的一个或多个所述资源的当前状态,用于动态建立所述模型。

4.根据权利要求3所述的方法,其中所述获得步骤还包括步骤:提供所述配置管理数据库,其配置为在预定的基础上更新在其中存储的所述配置数据组,使得由所述动态相关逻辑工具获得的、由在所述给定时间点处经历所述服务劣化的所述应用程序使用的所述一个或多个所述资源的所述配置数据组,是最新的配置数据组。

5.根据权利要求4所述的方法,其中所述采集步骤还包括步骤:确定所述一个或多个监视源,其配置为监视由在所述给定时间点处、经历所述服务劣化的所述应用程序使用的所述一个或多个资源。

6.根据权利要求5所述的方法,其中所述识别步骤还包括步骤:报告识别的所述一个或多个资源,使得能够对于在所述给定时间点处促使所述服务劣化的所述一个或多个资源采取预定行动。

7.根据权利要求6所述的方法,其中所述配置数据组包括一个或多个:资源类型、资源关系、关系类型、每个资源的属性和每种关系的属性。

8.一种用于动态识别在给定的时间点处、促使服务劣化的一个或多个资源的系统,包括:从配置管理数据库获得由在给定的时间点处、经历服务劣化的应用程序所使用的一个或多个资源的配置数据组的装置;

使用从所述配置管理数据库中获得的所述配置数据组、和从配置为监视所述一个或多个资源的一个或多个监视源获得的状态数据,加上任何资源和/或关系的附加属性,动态建立用于所述应用程序的模型的装置;

使用逻辑评估所述模型的装置;以及

识别由所述应用程序使用的、在给定的时间点促使服务劣化的一个或多个资源的装置,提供具有所述逻辑的动态相关逻辑工具,其配置为动态建立用于正经历服务劣化的所述应用程序的所述模型,并使用所述逻辑分析所述模型的装置。

9.根据权利要求8所述的系统,其中所述动态相关逻辑工具还配置为按需要从所述一个或多个监视系统中获得由应用程序使用的所述一个或多个资源的当前状态,以便建立所述模型。

10.根据权利要求9所述的系统,其中所述配置管理数据库还配置为在预定的基础上、更新由在所述配置管理数据库中存储的所述应用程序使用的所述一个或多个资源的所述配置数据组。

11.根据权利要求10所述的系统,其中所述动态相关逻辑工具还配置为使用在所述配置管理数据库中更新的所述配置数据组,使得由所述动态相关逻辑工具使用以建立所述模型的所述配置数据组是最新的配置数据组。

12.根据权利要求11所述的系统,其中所述动态相关逻辑工具还配置为使用从所述配置管理数据库中获得所述最新的配置数据组、以及从所述一个或多个监视系统中获得所述一个或多个资源的当前状态,加上任何资源和/或关系的附加属性,动态建立所述模型。

13.根据权利要求12所述的系统,其中所述配置数据组包括一个或多个:资源类型、资源关系、关系类型、每种资源的属性和每种关系的属性。

说明书 :

技术领域

本发明涉及一种用于动态识别促使资源或服务劣化的一个或多个组件的方法、系统和计算机程序产品。具体地,本发明涉及一种方法、系统和计算机程序产品,用于动态识别由应用程序使用的、在给定时间点处促使资源或服务劣化的一个或多个组件;结合从一个或多个由经历资源或服务劣化的应用程序所使用的资源监视系统中采集的信息,使用逻辑来评估和分析从配置管理数据库中获得的配置数据。

背景技术

商业,特别是商业中的信息技术(IT)机构不断面对更加复杂的多相(heterogeneous)环境,其中识别企业中哪个组件或哪些组件正导致或促使服务中断、或者资源无效的困难和复杂性正在增加。识别导致服务或可用性中断的正确组件或各组件,是能够将必要的IT人才和资源集中以解决服务中断的关键。花费在试图处理错误的IT各组件来解决服务中断的努力导致浪费的时间和金钱,并且会实际上增加中断带来的影响。这样,需要商业和/或IT机构提供成本高效的方法,来开发识别正引起或促使服务中断或资源无效的正确组件的方法。

发明内容

在本发明的第一方面,提供了一种动态识别在给定的时间点处、促使服务劣化的一个或多个组件的方法。该方法包括从配置管理数据库获得由在给定的时间点处、经历服务劣化的应用程序所使用的一个或多个组件的配置数据组,并使用从配置管理数据库中获得的该配置数据组、和从一个或多个配置来监视一个或多个组件的监视源中获得的状态数据加上任何资源和/或关系的附加属性动态地建立模型。此外,该方法包括使用逻辑评估该模型,并识别由应用程序所使用的、在给定的时间点处促使服务劣化的一个或多个组件。该方法还包括报告识别的一个或多个组件,使得能够对于在给定时间点处、促使服务劣化的一个或多个组件采取适当的行动。获得步骤包括提供配置管理数据库,其配置来在其中存储由应用程序使用的一个或多个组件的该配置数据组。此外,在实施例中,所述动态建立步骤包括提供具有逻辑的动态相关逻辑工具,其被配置为动态建立经历服务劣化应用程序的模型,并使用该逻辑分析该模型。此外,动态建立步骤包括从一个或多个监视源、采集由动态建立所述模型的应用程序所使用的一个或多个组件的当前状态。在实施例中,所述获得步骤还包括提供配置管理数据库,其配置为在预定的基础上更新在其中存储的该配置数据组,使得由动态相关逻辑工具获得的、由在给定时间点处经历服务劣化的应用程序所使用的一个或多个组件的该配置数据组是最新的配置数据组。在实施例中,所述采集步骤还包括确定一个或多个监视源,其配置为监视由在给定时间点处经历服务劣化的应用程序所使用的一个或多个组件。在实施例中,该配置数据组包括一个或多个:组件类型、组件关系、关系类型、每个组件的属性和每种关系的属性。
在本发明的另一方面,提供了一种动态识别在给定的时间点处促使服务劣化的一个或多个资源的系统。该系统包括在给定时间点处经历服务劣化的应用程序,该应用程序使用一个或多个资源。此外,该系统包括配置为在其中存储由所述应用程序使用的一个或多个资源的配置数据的配置管理数据库组、和具有逻辑的动态相关逻辑工具,该动态相关逻辑工具配置为使用从配置管理数据库中获得该配置数据组、并使用从一个或多个监视系统所获得的一个或多个资源状态信息加上任何资源和/或关系的附加属性,来动态地建立模型,该监视系统配置为监视在给定时间点处经历服务劣化的应用程序的一个或多个资源,并且该动态相关逻辑工具配置为使用所述逻辑来分析所述模型,以便动态识别在给定时间点处促使服务劣化的一个或多个资源,使得能够对于识别的一个或多个资源采取适当的行动。在实施例中,动态相关逻辑工具还配置为按需要从一个或多个监视系统中获得一个或多个资源的当前状态,以便建立该模型。在实施例中,所述配置管理数据库还配置为在预定的基础上、更新由所述应用程序使用的一个或多个资源的该配置数据组。此外,所述动态相关逻辑工具还配置为使用配置管理数据库中更新的该配置数据组,使得由动态相关逻辑工具用来建立所述模型的该配置数据组是最新的配置数据组。此外,在实施例中,所述动态相关逻辑工具配置为使用从配置管理数据库中获得最新的配置数据组、以及从一个或多个监视系统中获得一个或多个资源的当前状态加上任何资源和/或关系的附加属性,动态建立所述模型。在实施例中,该配置数据组包括一个或多个:资源类型、资源关系、关系类型、每种资源的属性和每种关系的属性。
在本发明另一方面,提供了一种动态识别在给定的时间点处促使服务劣化的一个或多个组件的计算机程序产品。该计算机程序产品包括计算机可读介质和第一程序指令,以便从配置管理数据库中获得由在给定时间点处、经历服务劣化的应用程序所使用的一个或多个资源的配置数据组。该计算机程序产品还包括:第二程序指令,用于使用从配置管理数据库中获得的该配置数据组、以及从配置为监视一个或多个资源的一个或多个监视源中获得的状态数据动态建立模型;以及第三程序指令,用于评估所述模型以识别由应用程序使用的、在给定时间点处促使服务劣化的一个或多个资源。在实施例中,第一程序指令还包括用于提供配置管理数据库的各指令,该配置管理数据库配置为在其中存储由所述应用程序使用的一个或多个资源的该配置数据组,并配置为在预定基础上更新其中存储的该配置数据组,使得存储于配置管理数据库中的、由在给定时间点处经历服务劣化的应用程序所使用的一个或多个资源的该配置数据组,包括最新的配置数据组。此外,在实施例中,第二程序指令包括按需要从一个或多个监视源中采集由所述应用程序使用的一个或多个资源、用于动态建立所述模型的各指令。此外,第二程序指令包括使用从配置管理数据库中获得的最新的配置数据组、和从一个或多个监视源中采集的一个或多个资源的当前状态来动态建立所述模型的指令。在实施例中,第三程序指令包括报告识别的一个或多个资源的指令,使得能够对于在给定时间点处促使服务劣化的一个或多个资源采取适当的行动。在实施例中,该配置数据组包括一个或多个:资源类型、资源关系、关系类型、每种资源的属性和每种关系的属性。优选地,第一、第二和第三程序指令的每一个存储在计算机可读介质上。

附图说明

并入说明书并形成说明书的部分的附图图示了本发明的实施例,并且与描述一起用于解释本发明的原理:
图1根据本发明的实施例、描绘概述涉及动态识别在给定时间点处促使资源或服务劣化的一个或多个资源或组件的步骤的流程图;
图2根据本发明的实施例、描绘了在配置管理数据库中存储的配置数据或信息的示例,该配置数据或信息由在给定时间点处经历资源或服务劣化的应用程序使用,用于动态识别在给定时间点处促使资源或服务劣化的一个或多个资源或组件;
图3是根据本发明的实施例、图示用于动态识别在给定时间点处促使资源或服务劣化的一个或多个资源或组件的系统实施例的示意性方块系统图;
图4是根据本发明的实施例、图示用于动态识别在给定时间点处促使资源或服务劣化的一个或多个资源或组件的计算机基础结构的实施例的示意性方块系统图。

具体实施方式

已经将本说明书中描述的许多功能单元标注为模块,以便更具体地强调它们的实现独立性。例如,模块可实现为包括定制的VLSI电路或门阵列、不用定制的半导体(如逻辑芯片、晶体管或其他分立组件)的硬件电路。模块还可以用可编程的硬件设备(如场编程门阵列、可编程阵列逻辑、可编程逻辑设备等)实现。
模块还可以软件实现以由各种类型的处理器执行。可执行代码的识别模块或组件可以例如包括计算机指令的一个或多个物理或逻辑块,其可以例如被组织成对象、过程或功能。然而,识别模块的执行不需要物理地位于一起,而是可包括在不同位置上存储的不同指令,其在逻辑连接起来时包括模块并实现该模块的设定用途。
此外,执行代码的模块可以是单个指令或许多指令,并且甚至可以分布在若干不同代码片段上、在不同程序中、以及跨越若干存储器设备。类似地,操作数据可在模块中识别和图示,并且可以任何合适的形式体现并在任何合适的数据结构类型中进行组织。操作数据可以集合为单个数据集,或者可在包括不同存储设备、不同存储器设备的不同位置上分布,并且可以仅仅作为电子信号在系统或网络上存在,至少部分存在。
此外,各模块还可实现为软件和一个或多个硬件设备的组合。例如,模块可以存储在存储器设备上的软件可执行代码的组合体现。在另外的示例中,模块可以是操作一组操作数据的处理器的组合。另外,模块可以在经由传送电路传达的电子信号的组合实现。
遍及本说明书涉及的“一个实施例”、“实施例”或类似语言,意味着与结合实施例描述的特定特征、结构或特点包括在本发明的至少一个实施例中。这样,遍及本说明书的短语“在一个实施例中”、“在实施例中”和类似语言的出现可以但非必须地指代相同实施例。
而且,本发明的所述特征、结构或特点可以任何合适的方式结合到一个或多个实施例中。对本领域的技术人员来说将明显的是,能够对本发明进行各种修改和变化而不脱离本发明的精神和范围。因此,意图在于本发明覆盖本发明的各种修改和改动,只要它们在权利要求及其等效的范围内。现在将详细参考本发明的优选实施例。
在一个实施例中,本发明提供了一种动态识别在给定的时间点处促使资源或服务劣化的一个或多个组件的方法。具体地,在实施例中,本发明提供了一种识别由应用程序使用的组件或各组件的方法,该应用程序使用动态相关逻辑工具,通过将动态改变数据库中包括的资源和关系、与从那些资源的一个或多个监视系统获得的信息相关,实际上对导致服务中断负责,如进一步在此关于图3和4所描述的。动态相关逻辑工具包括相关规则、或逻辑、或各规则,其用于处理或分析或关联配置数据组(各资源、关系、资源类型-如下面以及对于图2解释的)以及各资源的监视或状态数据(例如从一个或多个监视源或系统获得的当前状态)。回到图1,标号100,在步骤102中,该方法包括从配置管理数据库120中获得由在给定时间点处、经历资源或服务劣化的应用程序使用的一个或多个资源的配置数据组。在实施例中,配置管理数据库120配置为存储由应用程序使用的各资源的动态改变配置数据或信息,其包括它们的关系或依赖性,即一种资源对另一种的关系以及(各)资源对应用程序的关系。此外,在步骤104中,检查表示资源或关系的配置管理数据库120中的每个对象。例如,在步骤102中、从在步骤104中检查的配置管理数据库120中获得的配置数据,包括资源类型或分类信息、资源关系、关系类型、资源属性和关系数据。例如,所述资源类型可指示资源归类或分类为web服务器或打印服务器等。类似地,资源的资源关系可指示在应用程序和资源间是否存在直接的关系,或在应用程序和资源间是否存在间接的关系。此外,关系类型可指示是否应用程序在资源上运行、或者是否应用程序依赖资源、或者是否资源依赖另一资源等。另外,在步骤102中从配置管理数据库120中获得的配置数据,可包括检查资源的属性和关系属性,如资源最近改变的日期等,可用来在给定时间点处确定或识别引起服务劣化的故障组件或各故障组件。要理解的是,在相关方法或处理中能够检查或询问其他用户指定的对象(表示资源或关系)属性。此外,随着商业或企业环境发展和成长,调整由存储在配置管理数据库120中的应用程序所使用的资源和关系信息,因此反映出其中存储的资源及其关系中的最近或最新改变。此外,在步骤108中,做出关于监视系统或源的确定,其监视在给定时间点处经历资源或服务劣化的应用程序所使用或相关联的资源。具体地,在步骤110中,从步骤108中确定的监视源或系统140中获得或采集应用程序所使用的一个或多个资源的监视状态数据或状态。在实施例中,按照需要,由监视源或系统140获得监视资源的当前或时间点状态,以便识别在给定的时间点处促使资源或服务劣化的一个或多个资源。因此,从步骤102到步骤110收集的所有数据或信息,即从使用由配置管理数据库中获得的该配置数据组、和通过监视由应用程序使用的一个或多个组件或资源的一个或多个监视源中获得的监视状态数据,加上任何资源和/或关系的附加属性,动态建立了或创建了时间点模型或分析模型或模型130,如上文所述。在步骤112中,使用在动态相关逻辑工具中提供的逻辑来评估或分析创建的时间点模型130,以便识别由应用程序使用的、在给定时间点处促使资源或服务劣化的一个或多个组件或资源。在步骤114中,识别对在给定时间点处的资源或服务劣化负责的组件或各组件。该方法还包括在步骤116中报告识别的一个或多个组件,使得例如由管理者对于在给定时间点处促使资源或服务劣化的一个或多个组件采取适当的行动,结束该处理。例如,在做出故障组件或各故障组件的识别之后,能够产生包括数据分析的报告并将其发送给管理者,或者能够在屏幕上产生报告用于管理者的使用,或者,能够给管理者发送通知,如包括该报告的电子邮件。
回到图2,根据本发明的实施例,标号200描绘了在配置管理数据库中存储的、用于动态识别在给定时间点处促使资源或服务劣化的一个或多个资源或组件的配置数据或信息(表示由应用程序XYZ(标号202)使用的依赖性和资源关系在给定点处经历资源或服务的劣化)。假设在该示例中,(由终端用户或自动监测系统)已经探测到关于应用程序XYZ(标号202)的服务劣化或中断。如图2所示,显示应用程序XYZ(标号202)具有三种特定的资源,资源1(标号204)、资源2(标号206)和资源3(标号208)。具体地,图2显示应用程序XYZ和三种资源1、2和3(标号204,204和206)之间的依赖信息。在图2中,箭头指向依赖的方向,这样,指向资源1(204)的箭头203指示应用程序XYZ依赖资源1(标号204),并且,箭头205指示应用程序XYZ依赖资源2(标号206)。此外,箭头207指示资源1(标号204)依赖资源3(标号208)。同样,如图2所示,资源1已经被分类或归类(资源类型)为web服务器,而资源2已经被分类或归类为打印服务器,并且资源3已经被识别为事务服务器。这样,如果应用程序XYZ(标号202)在给定时间点正经历资源或服务劣化,其中所有三个资源1,2和3都报告报警状态,但是其中资源3(标号208)是故障资源的问题,则在动态相关逻辑工具中的相关规则或逻辑将能够处理图2中所示的该配置数据组,以识别或确定在时间点模型200中哪个资源或哪些资源是故障组件。使用相关逻辑或动态相关逻辑工具中的逻辑或规则,将提供询问并关联在配置管理数据库中提供的资源和关系信息的能力,并将能够通知管理者或用户基于所述执行的相关,资源3(标号208)在给定的时间点处正促使资源或服务的劣化。例如,确定资源1(标号204)正影响应用程序XYZ(标号202)的可用性,但是资源1(标号204)依赖资源3(208),其目前也正经历可用性问题。在此如上面概述的方法将帮助确定,处理资源3(标号208)的问题能够解决资源1的问题、并恢复应用程序XYZ,这样,在该时间点处没有浪费任何时间或努力在处理资源2问题上。例如,相关逻辑在识别资源或组件中将能够提供X%的确信度,例如80%的确信度是资源3(标号208)在给定时间点处正促使资源或服务的劣化。在没有动态相关逻辑工具的情况下,不能快速询问和关联资源和关系信息,并且这样,恢复服务的努力可能贯注于不正确的资源,资源1(标号204)或资源2(标号206)。
因此,动态识别实际故障组件或各故障组件的方法是逻辑调用,按输入进行,应用程序XYZ(标号202)作为分析的开始点。实际故障组件逻辑的识别中涉及的处理,要查看模型中的每个对象(其中每个对象表示资源或关系)并检查所述对象,以便确定该对象表示什么类型(类别)的资源,所述资源与其他资源的关系为何,从对象的监测系统或源获得对象的当前状态以及资源和/或关系的附加属性。对于确定资源类型(类别),存在服务性能比其他更重要的某些资源类型。例如,web服务器可能比打印服务器更重要。此外,各资源间的不同关系能够被加权以反映重要性,并附加地也可以与资源的类型相关联。从监视系统或多个监视系统获得的状态,可包括能中肯地识别在给定时间点处促使资源或服务劣化的组件或资源的关系状态。此外,按照定义收集了来自所述对象的附加属性,如最近改变的日期或其他定制的属性。接着将该组信息一起处理以确定故障组件。
因此,当探测到情况或当在性能或可用性上存在劣化时,运行动态相关逻辑工具,使得使用在特定时间点处的配置管理数据库120中的配置数据(资源、关系),加上从如图2所示的对象的每个监视源接收的每个对象的状态,加上如在此描述资源的任何附加属性和/或关系来动态建立或创建时间点模型130。因此例如,如果配置管理数据库为环境提供配置数据,在该环境中资源A依赖于资源B并且其中资源B依赖于资源C,则如果所述环境改变为包括另一资源D,其在配置管理数据库中得到更新,则下次运行动态相关逻辑工具时将自动拾取这种改变。这样,配置管理数据库具有更新的配置数据,使得当运行动态相关逻辑工具时,它在其分析中拾取任何更新的配置信息,以识别在给定时间点处促使资源或服务劣化的组件或各组件。
现在参考图3,其根据本发明的实施例、图示用于动态识别在给定时间点处促使资源或服务劣化的一个或多个资源或组件的系统实施例。回到图3,图3是图示系统或服务器300的一个实施例的示意性方块系统图,该系统或服务器300具有部署在其上的动态相关逻辑工具或组件320。在实施例中,动态相关逻辑工具320配置为动态识别在给定时间点处促使资源或服务劣化的一个或多个资源或组件。优选地,该计算机系统300是服务器例如应用程序服务器,其专用于运行(各)软件应用(多个软件应用)312,并使用部署在其上的动态相关逻辑工具320,以动态识别在给定时间点处促使资源或服务劣化的一个或多个资源或组件。计算机系统300包括中央处理单元(CPU)304、本地存储设备302、用户和/或管理者界面306、网络接口308和存储器310。CPU 304通常配置为在系统或服务器300内执行操作。在一个实施例中,用户界面306配置为允许用户和/或管理者与系统300交互,包括允许输入来自用户和/或管理者的数据和命令。在一个实施例中,网络接口308配置为便利系统300在网络(未在任何附图中显示)的通信通道上的网络通信。在实施例中,本地存储器310配置为存储在系统300上运行的一个或多个(各)应用程序或(各)程序312。此外,在实施例中,存储器310配置为存储时间点模型314,其使用从存储在存储系统302中的配置管理数据库(CMDB)316中获得的配置数据,由动态相关逻辑工具320创建或建立。或者,要理解的是,配置管理数据库(CMDB)316可存储在服务器300之外的分离存储中。
在一个实施例中,如在图3中所示,运行在服务器或系统300上的动态相关逻辑工具320包括逻辑单元,该逻辑单元包括多个模块,其配置为功能执行动态识别在给定时间点处、促使由应用程序经历的资源或服务劣化的一个或多个资源或组件的必要步骤。具体地,动态相关逻辑工具320包括数据模块322、状态模块324、相关逻辑模块326、评估模块328、报告模块330和通信模块332。动态相关逻辑工具320的数据模块322,配置为从存储在存储系统302中的配置管理数据库(CMDB)316中获得一组配置数据。状态模块324配置为按需要、由动态相关逻辑工具320从一个或多个外部监视源或系统(未显示图3中)中获得一个或多个资源的当前状态。此外,相关逻辑模块326配置为使用由数据模块322和状态模块324收集的信息,为在给定时间点处经历由于资源造成服务劣化的应用程序建立时间点模型312(显示在存储器310中)。评估模块328配置为评估和/或分析时间点模型314(存储在本地存储器310中),其使用从CMDB316中获得的配置数据、和从外部监视系统或源收集的状态信息建立或创建,并且使用相关逻辑模块326评估和/或分析时间点模型314,以便为应用程序识别在给定时间点处导致服务劣化的资源或各资源。此外,报告模块330配置为将识别的组件或各组件的结果报告给例如管理者,使得管理者能够对于识别的组件或各组件采取适当的(各)行动,从而消除或最小化资源或服务劣化。此外,通信模块332配置为允许动态相关逻辑工具320和各种组件(如存储在数据库302中的配置管理数据库316、存储在存储器310中的时间点模型312、和动态相关逻辑工具320从其采集状态数据的各种监视系统)之间的通信。
在另一实施例中,本发明提供了一种动态识别在给定的时间点处、促使应用程序所经历的资源或服务劣化的一个或多个资源或组件的程序产品。优选地,该计算机程序产品包括从计算机可用或计算机可读介质可访问的形式,其提供由或结合计算机或任何指令执行系统使用的程序代码或指令。为了该描述的目的,计算机可用或计算机可读介质能够是能任何装置,其包括、存储、传达、传播或传送由或结合指令执行系统、装置或设备使用的代码或指令。优选地,所述介质能够包括电、磁、光、电磁、红外或半导体系统(或装置或设备)或传播介质。更优选地,所述计算机可读介质可包括半导体或固态存储器、磁带、可移除的计算机盘、随机存取存储器(RAM)、只读存储器(ROM)、刚性磁盘和光盘。此外,光盘的示例包括致密盘-只读存储器(CD-ROM)、致密盘-读/写(CD-R/W)和数字通用/视频盘(DVD)。本发明能够采取全部硬件实施例、全部软件实施例和包括硬件和软件元件实施例的形式。在优选实施例中,本发明以软件实现,该软件包括但不限于固件、驻留软件、微代码等。
所述计算机程序产品还包括第一程序指令,以从配置管理数据库中获得一组在给定时间点处、由经历服务劣化的应用程序所使用的一个或多个资源的配置数据。该计算机程序产品还包括:第二程序指令,以使用从配置管理数据库中获得的该配置数据组、和从配置为监视一个或多个资源的一个或多个监视源中获得的状态数据,动态建立时间点模型;以及第三程序指令,用于评估该时间点模型从而识别由应用程序使用的、在给定时间点处促使服务劣化的一个或多个资源。在实施例中,第一程序指令还包括用于提供配置管理数据库的各指令,该配置管理数据库配置为在其中存储由所述应用程序使用的一个或多个资源的该配置数据组,并配置为在预定基础上更新存储在其中的该配置数据组,使得在配置管理数据库中存储的、在给定时间点处由经历服务劣化的应用程序所使用的一个或多个资源的该配置数据组,包括最新的配置数据组。此外,在实施例中,第二程序指令包括按需要从一个或多个监视源、采集由应用程序使用的一个或多个资源的当前状态,从而动态建立时间点模型的各指令。此外,第二程序指令包括使用从配置管理数据库中获得的最新的配置数据组、以及从一个或多个监视源中采集的一个或多个资源的当前状态,动态建立时间点模型的各指令。在实施例中,第三程序指令包括报告一个或多个识别资源的各指令,使得能够对于在给定时间点处促使服务劣化的一个或多个资源采取适当的行动。在实施例中,该配置数据组包括一个或多个:资源类型、资源关系、关系类型、每种资源的属性和每种关系的属性。优选地,第一、第二和第三程序指令的每个存储在计算机可读介质上。
现在参考图4,图示了动态识别在给定时间点处、由应用程序经历的促使资源或服务劣化的一个或多个资源或组件的系统400。如所描绘的,系统400包括计算机基础结构402,其意图在于表示在安全环境(即,对其加强了访问控制)中维持的任何类型的计算机架构。如所示的,基础结构402包括典型地表示服务器等的计算机系统404。然而,应该理解的是,虽然没有显示,但是其他硬件或软件组件(例如,另外的计算机系统,如路径器、防火墙等)也能够包括在基础结构402中。
通常,应用程序(如应用程序1(标号430)到应用程序X(标号432))可与基础结构402连接,用于使用连接到基础结构402的一个或多个资源,如资源1(标号442)到资源X(标号444)。此外,如所示的,一个或多个(各)监视系统或(各)监视源440能够与基础结构402连接。类似地,管理者434能与基础结构402连接,用于支持和/或配置基础结构402,如更新动态相关逻辑工具414。通常,各部分能够直接、或在网络上经由装载在计算机化设备(例如,个人计算机、膝上型电脑、手持设备等)上的接口(例如,客户端web浏览器),访问基础结构402。在后者情况下,所述网络能够是任何类型的网络如因特网、或者能够是任何其他类型的网络,如局域网(LAN)、广域网(WAN)、虚拟私有网络(VPN)等。在任何情况下,与基础结构402的通信能够经由直接硬件连接(例如串行端口)、或经由可以使用任何有线和/或无线传送方法的可寻址连接发生。此外,能够使用传统的网络连接(connectivity),如令牌网、以太网、WiFi或其他传统通信标准。还有,连接能够由传统的TCP/IP基于接口(sockets-based)协议提供。在这种情况下,各部分能够使用因特网服务供应商来建立与基础结构402的连接。应该理解的是在本发明中,基础结构402能够由参与方(party)(如供应商)或由独立实体拥有和/或操作。不管怎样,基础结构402的使用和此处描述的教导能够在定购或免费的基础上提供给参与方。在其他情形中,如此处上面所述,管理者434能够支持或配置基础结构402。
计算机系统或服务器404显示为包括CPU(以下“处理单元406”)、存储器412、总线410和输入/输出(I/O)接口408。此外,计算机系统400显示为与外部I/O设备/资源424和存储系统422通信。在所示的实施例中,存储系统422已经在其中存储了配置管理数据库(CMDB)426,其提供在给定时间点处、由经历资源或服务劣化的应用程序所使用的一个或多个资源的该配置数据组。一般地,处理单元406执行计算机程序代码如动态相关逻辑工具414,其被配置为使用从配置管理数据库(CMDB)426中获得的该配置数据组、并使用从一个或多个监视系统440中获得的一个或多个资源1到X(标号442到44)的状态信息,动态建立时间点模型416,所述一个或多个监视系统440配置为监视由正经历资源或服务劣化的应用程序1到X所使用的一个或多个资源(1到X)。虽然执行动态相关逻辑工具414,但是处理单元406能够从存储器412、存储系统422和/或I/O接口408中读取数据和/或将数据写入其中。总线410提供计算机系统400内每个组件间的通信链路。外部设备424能够包括使用户能够与计算机系统400交互的任何设备(例如,键盘、指示设备、显示器等)、和/或使计算机系统400能够与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)。
计算机基础结构402仅仅图示实现本发明的各种类型的计算机基础结构。例如,在一个实施例中,计算机基础结构402包括两个或多个计算设备(例如服务器集群),其在网络上通信以执行本发明的各种处理步骤。此外,计算机系统400仅仅代表能包括大量硬件组合的各种可能的计算机系统。在该程度上,在其他实施例中,计算机系统400能够包括:任何专用计算制造产品,其包括硬件和/或计算机程序代码用于执行特定功能;包括专用和通用硬件/软件等的任何计算制造产品。在每种情况下,能够分别使用标准编程和设计技术来创建程序代码和硬件。而且,处理单元406可包括单个处理单元,或遍及一个或多个位置中一个或多个处理单元分布,例如,在客户端和服务器上。类似地,存储器412和/或存储系统422能够包括各种类型的数据存储、和/或驻留在一个或多个物理位置的传输介质的任何组合。此外,I/O接口408能够包括用于与一个或多个外部设备424交换信息的任何系统。另外,可以理解的是在计算机系统400中能够包括一个或多个附加组件(例如,系统软件、数学共同处理单元等,没有显示在图4中)。类似地,可以理解的是在计算机系统404中能够包括一个或多个外部设备424(例如显示器)和/或存储系统422,并且它们没有在外部显示。
存储系统422能够是任何类型的系统(例如数据库),其能够存储和/或更新信息或配置数据,如配置管理数据库(CMDB)426。在该程度上,存储系统422能够包括一个或多个存储设备,如磁盘驱动器或光盘驱动器。在另一实施例中,存储系统422包括遍及例如局域网(LAN)、广域网(WAN)或存储区域网(SAN)(未显示)分布的数据。虽然没有显示,但是可将附加的各组件(如高速缓冲存储器、通信系统、系统软件等)并入计算机系统400中。
为了图示和描述的目的,已经呈现了本发明特定实施例的前述描述。它们意图不在于是穷尽的或将本发明限定为公开的精确形式,并且显然根据上面的教导很多修改和变化是可能的。选择并描述了各实施例以便最好地解释本发明的原理及其实际应用,从而使本领域其他技术人员能够最好地使用本发明,并且具有各种修改的各种实施例适于预期的特定用途。意图由权利要求及其等效来定义本发明的范围。