CN104572232A - 用于监视一个应用在计算机系统上的执行的方法和系统 - Google Patents

用于监视一个应用在计算机系统上的执行的方法和系统 Download PDF

Info

Publication number
CN104572232A
CN104572232A CN201410563100.5A CN201410563100A CN104572232A CN 104572232 A CN104572232 A CN 104572232A CN 201410563100 A CN201410563100 A CN 201410563100A CN 104572232 A CN104572232 A CN 104572232A
Authority
CN
China
Prior art keywords
utilization
computer system
resources
application
process control
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.)
Granted
Application number
CN201410563100.5A
Other languages
English (en)
Other versions
CN104572232B (zh
Inventor
A·P·道玲
N·马力克
C·米勒
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.)
Qindarui Co.
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN104572232A publication Critical patent/CN104572232A/zh
Application granted granted Critical
Publication of CN104572232B publication Critical patent/CN104572232B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

本发明的各方面提供了一种用于监视一个应用在计算机系统上的执行的解决方案。在一个实施例中,经由无代理处理针对测量计算机系统的性能的资源利用变量集合中的每个资源利用变量来获取多个基本操作值。基于这些基本操作值,编译该计算机系统的应用简档。这一应用简档可以包括该资源利用变量集合中的每个资源利用变量的过程控制上限和过程控制下限。能够通过在应用执行期间从计算机系统收集操作值并且将所收集的值与应用简档中对应的过程控制上限和过程控制下限进行比较来监视应用的执行。

Description

用于监视一个应用在计算机系统上的执行的方法和系统
技术领域
本发明的主题总体上涉及计算机应用管理。更具体地,本发明的各方面提供了一种用于监视一个应用在计算机系统中的执行的解决方案。
背景技术
云计算环境是对处理器网格环境的增强,尤其多个网格和其它计算资源可以进一步通过云层进行抽象,因此使得不同设备针对终端用户表现为无缝资源的单个池。这些资源可以包括诸如物理或逻辑计算引擎、服务器和设备、设备存储器以及存储设备。
在这样的分布式计算环境(例如,云环境、网格环境、客户端/服务器环境等)中,用户希望执行的任务经常在远离用户位置的位置执行。因此,用户可能很少或完全不访问与在其上执行该任务的计算机系统相关的信息。相反,用户可以指定应当被执行以实施该任务的应用并且随后接收执行结果,而没有与该应用在该应用在其上执行的特定系统的执行有关的任何指示(例如,操作运行时间特性)。
为了提供更为详细的信息,已经研发出了监视软件。该监视软件经常分为两种类型。位于应用执行点的高度复杂的监视软件能提供应用级别的监视。作为替代,更为标准的监视解决方案能够检测操作系统级别的故障。
发明内容
总体上,本发明的各方面提供了一种用于监视一个应用在计算机系统上的执行的解决方案。在一个实施例中,经由无代理处理针对测量计算机系统的性能的资源利用变量集合中的每个资源利用变量来获取多个基本操作值。基于这些基本操作值,编译该计算机系统的应用简档。该应用简档可以包括该资源利用变量集合中的每个资源利用变量的过程控制上限和过程控制下限。能够通过在应用执行期间从计算机系统收集操作值并且将所收集的值与应用简档中相对应的过程控制上限和过程控制下限进行比较来监视应用的执行。
本发明的第一方面提供了一种用于监视一个应用在计算机系统上的执行的方法,包括:针对测量该计算机系统的性能的资源利用变量集合中的每个资源利用变量来获取多个基本操作值,该多个基本操作值经由无代理处理而获取;基于该基本操作值对计算机系统的应用简档进行编译,该应用简档包括该资源利用变量集合中的每个资源利用变量的过程控制上限和过程控制下限;在应用在该计算机系统上的执行期间针对该计算机系统的资源利用变量集合中的每个资源利用变量收集利用操作值;以及基于该利用操作值集合中的每个利用操作值与该资源利用变量集合中的每个资源利用变量相对应的过程控制上限和相对应的过程控制下限的比较而评估该计算机系统内应用的性能。
本发明的第二方面提供了一种用于监视一个应用在计算机系统上的执行的系统,其包括至少一个计算机设备,该计算机设备执行一种方法,该方法包括:针对测量该计算机系统的性能的资源利用变量集合中的每个资源利用变量来获取多个基本操作值,该多个基本操作值经由无代理处理而获取;基于该基本操作值对计算机系统的应用简档进行编译,该应用简档包括该资源利用变量集合中的每个资源利用变量的过程控制上限和过程控制下限;在应用在该计算机系统上的执行期间针对该计算机系统的资源利用变量集合中的每个资源利用变量收集利用操作值;并且基于该利用操作值集合中的每个利用操作值与该资源利用变量集合中的每个资源利用变量对应的过程控制上限和对应的过程控制下限的比较而评估该计算机系统内应用的性能。
本发明的第三方面提供了一种体现在计算机可读介质中的用于监视一个应用在计算机系统上的执行的计算机程序产品,其中当被执行时,其实施一种方法,包括:针对测量该计算机系统的性能的资源利用变量集合中的每个资源利用变量获取多个基本操作值,该多个基本操作值经由无代理处理而获取;基于该基本操作值对计算机系统的应用简档进行编译,该应用简档包括该资源利用变量集合中的每个资源利用变量的过程控制上限和过程控制下限;在应用在该计算机系统上的执行期间针对该计算机系统的资源利用变量集合中的每个资源利用变量收集利用操作值;并且基于该利用操作值集合中的每个利用操作值与该资源利用变量集合中的每个资源利用变量对应的过程控制上限和对应的过程控制下限的比较而评估该计算机系统内应用的性能。
本发明的第四方面提供了一种用于部署对应用的执行进行监视的应用的方法,包括:提供一种计算机基础设施,其可操作以:针对测量该计算机系统的性能的资源利用变量集合中的每个资源利用变量获取多个基本操作值,该多个基本操作值经由无代理处理而获取;基于该基本操作值对计算机系统的应用简档进行编译,该应用简档包括该资源利用变量集合中的每个资源利用变量的过程控制上限和过程控制下限;在应用在该计算机系统上的执行期间针对该计算机系统的资源利用变量集合中的每个资源利用变量收集利用操作值;并且基于该利用操作值集合中的每个利用操作值与该资源利用变量集合中的每个资源利用变量对应的过程控制上限和对应的过程控制下限的比较而评估该计算机系统内应用的性能。
另外地,本发明的任意组件能够由提出在计算机系统中实现被动监视的服务提供商进行部署、管理、服务等。
本发明的实施例还提供了相关的系统、方法和/或程序产品。
附图说明
本发明的这些和其它特征将通过以下结合附图而对各个方面所进行的详细描述而更容易地被理解,其中:
图1示出了根据本发明实施例的说明性计算机系统。
图2示出了根据本发明实施例的虚拟化数据中心环境。
图3示出了根据本发明实施例的示例虚拟服务器环境。
图4示出了根据本发明实施例的用于获取操作值的示例环境。
图5示出了根据本发明实施例的示例设备映射表。
图6示出了根据本发明实施例的示例流程图。
图7示出了根据本发明实施例的示例流程图。
附图并非必然依比例进行绘制。附图仅作为示意性表示而并非意在绘制出本发明的具体参数。附图仅意在对本发明的典型实施例进行描绘,因此并不应当被认为对本发明的范围有所限制。在附图中,同样的标号表示同样的元素。
具体实施方式
现在将参考其中示出各实施例的附图而在此对说明性实施例进行更为详细地描述。然而,本公开内容可以以许多不同形式来体现而并不应当被理解为局限于这里所给出的实施例。相反,提供这些实施例从而使得本公开内容将是全面且完整的,并且将向本领域技术人员完全传达本公开内容的范围。在描述中,可以省略公知特征和技术的细节以免对所给出的实施例造成不必要地混淆。
这里所使用的术语仅是为了对特定实施例进行描述而并非意在作为本公开内容的限制。如这里所使用的,除非上下文明确以其它方式指出,否则单数形式“一个”、“一”(“a”、“an”和“the”)意在也包括复数形式。此外,术语“a”、“an”等的使用并非表示数量的限制,而是表示存在至少一个所提到的事项。术语“集合”意在表示至少一个的数量。将要进一步理解的是,当在该说明书中使用时,术语“包括”和/或“包括了”或者“包含”和/或“包含了”指定了存在所提到的特征、区域、整数、步骤、操作、元素和/或组件,但是并不排除存在或增加一个或多个其它特征、区域、整数、步骤、操作、元素、组件和/或其群组。
如以上所指出的,本发明的各方面提供了一种用于监视一个应用在计算机系统上的执行的解决方案。在一个实施例中,经由无代理处理针对测量计算机系统的性能的资源利用变量集合中的每一个获取多个基本操作值。基于这些基本操作值,编译该计算机系统的应用简档。该应用简档可以包括该资源利用变量集合中的每一个的过程控制上限和过程控制下限。能够通过在应用执行期间从计算机系统收集操作值并且将所收集的值与应用简档中相对应的过程控制上限和过程控制下限进行比较来监视应用的执行。
转向附图,图1示出了用于监视应用的执行的说明性环境100。就此范围而言,环境100包括计算机系统102,其可以执行这里所描述的过程以便监视应用的执行。特别地,计算机系统102被示出为包括计算设备104,该计算设备104包括应用监视程序140,其使得计算设备104可操作以通过执行这里所描述的过程而监视应用的执行。
计算设备104被示出为包括处理组件106(例如,一个或多个处理器)、存储器110、存储系统118(例如,存储层级结构)、输入/输出(I/O)组件114(例如,一个或多个I/O接口和/或设备)以及通信路径112。通常,处理组件106执行至少部分处于存储器110中的诸如应用监视程序140的程序代码。就该范围而言,处理组件106可以包括单个处理单元,或者跨一个或多个位置中的一个或多个处理单元进行分布。
存储器110也可以包括在程序代码的实际执行期间所采用的本地存储器、大型存储(存储118)和/或提供至少一些程序代码的临时存储以便减少执行期间必须从大型存储118获取代码的次数的高速缓存存储器(未示出)。这样,存储器110可以包括任意已知类型的临时或持久数据存储介质,包括磁性介质、光学介质、随机访问存储器(RAM)、只读存储器(ROM)、数据高速缓存、数据对象等。此外,类似于处理组件116,存储器110可以驻留于单个物理位置,包括一种或多种类型的数据存储,或者跨各种形式的多个物理系统进行分布。
在执行程序代码的同时,处理组件106能够处理数据,这会导致对往来于存储器110和/或I/O组件114读取和/或写入所变换的数据以用于进一步处理。路径112提供了计算机系统102中的每个组件之间的直接或间接的通信链路。I/O组件114可以包括使得人类用户120能够与计算机系统102进行交互的一个或多个人类I/O设备,和/或使得系统用户120能够使用任意类型的通信链路与计算机系统102进行通信的一个或多个通信设备。
就该范围而言,应用监视程序140能够对接口集合(例如,(多个)图形用户界面、应用编程接口等)进行管理以使得人类和/或系统用户120能够与应用监视程序140进行交互。除其它之外,用户120可以包括希望对应用在计算机系统(例如,多个虚拟服务器中的一个或多个)上的执行进行监视的应用开发者、应用测试者、应用终端用户和/或系统管理员。另外,通过使用任意解决方案,应用监视程序140能够管理(例如,存储、获取、创建、操控、组织、呈现等)存储系统118中的数据,其包括但并不局限于操作值152、(多个)应用简档154等。
在任意情况下,计算机系统102可以包括一个或多个能够执行安装于其上的诸如应用监视程序140的程序代码的计算设备104(例如,通用计算制造品)。如这里所使用的,所要理解的是,“程序代码”意味着任意语言、代码或符号的指令的任意集合,其使得具有信息处理能力的计算设备直接或在以下的任意组合之后执行特定任务:(a)转换为另一种语言、代码或符号;(b)以不同素材形式所再现;和/或(c)解压缩。就该范围而言,应用监视程序140能够被体现为系统软件和/或应用软件的任意组合。在任意情况下,计算机系统102的技术效果是向计算设备104提供处理指令以便监视应用的执行。
另外,应用监视程序140可以使用模块142-148的集合来实现。在这种情况下,模块142-148可以使得计算机系统102能够执行应用监视程序140所使用的任务集合,并且能够单独研发和/或独立于应用监视程序140的其它部分实现。如这里所使用的,术语“组件”意味着具有或没有软件的硬件的任意配置,其使用任意解决方案实现与之相结合描述的功能,而术语“模块”则意味着使得计算机系统102能够使用任意解决方案实施与之相结合描述的动作的程序代码。当处于包括处理组件106的计算机系统102的存储器110中时,模块是组件中实施动作的实质性部分。无论如何,所要理解的是,两个或更多组件、模块和/或系统可以共享其相应的一些/全部硬件和/或软件。另外,所要理解的是,这里所讨论的一些功能可以不被实施或者可以包括另外的功能而作为计算机系统102的一部分。
当计算机系统102包括多个计算设备104(例如,客户端以及一个或多个远程定位的服务器)时,每个计算设备104可以仅具有处于其上的应用监视程序140的一部分(例如,一个或多个模块142-148)。然而,所要理解的是,计算机系统102和应用监视程序140仅代表了可以执行这里所描述的处理的各种可能的等同计算机系统。就该范围而言,在其它实施例中,计算机系统102和应用监视程序140所提供的功能可以至少部分由包括具有或没有程序代码的通用和/或专用硬件的任意组合的一个或多个计算设备来实现。在每个实施例中,硬件和程序代码—如果包括—能够分别使用标准工程或编程技术来创建。
无论如何,当计算机系统102包括多个计算设备104时,计算设备能够通过任意类型的通信链路进行通信。另外,在执行这里所描述的过程的同时,计算机系统102能够使用任意类型的通信链路与一个或多个其它计算机系统进行通信。在任一种情况下,通信链路可以包括各种类型的有线和/或无线链路的任意组合;包括一种或多种类型的网络的任意组合;和/或利用各种类型的传输技术和协议的任意组合。
如这里所讨论的,应用监视程序140使得计算机系统102能够监视应用的执行。就该范围而言,应用监视程序140被示出为包括基本操作值获取模块142、应用简档编译模块144、利用操作值收集模块146和应用性能评估模块148。
现在参考图2,示出了根据本发明实施例的虚拟化数据中心环境200。如所示出的,虚拟化数据中心环境200具有能被用来针对用户120执行应用的物理服务器210。这样,在所图示的实施例中,应用监视程序140(图1)的全部或一部分功能能够在物理服务器210、客户端204或者二者的组合上执行。应当理解的是,应用监视程序140(图1)的功能并不局限于所图示的虚拟化数据中心环境200。相反,构想包括但并不局限于单个系统、端对端、客户端-服务器、网格计算、云计算和/或任意其它环境的其它实施例。
如所图示的,虚拟化数据中心环境200的物理服务器210可以是来自任意制造商的服务器,其运行适于运行虚拟服务器230的多个实例的任意平台。虚拟化数据中心环境200还可以包含任意数量的相关物理服务器(未示出)。这些相关物理服务器可以与物理服务器210相连接以便经由网络220进行通信。网络220可以允许物理服务器210用任意通信解决方案或目前已知或随后研发的解决方案与相关物理服务器进行通信,和/或允许物理服务器互相进行通信。另外,网络220可以允许客户端204与物理服务器210和/或任意相关服务器进行通信(例如,以执行其上的一个或多个应用)。在一些实施例中,网络220可以在云计算规模上进行操作,例如提供计算、软件、数据访问以及不需要终端用户了解输送该服务的网络220的物理位置和配置的其它服务。
在任意情况下,如以上所提到的,物理服务器210上的虚拟服务器230的每个实例能够在保持独立性的同时与其它系统实例230同时进行操作。这意味着虚拟服务器230的每个实例能够独立于虚拟服务器230的其它实例进行操作,并且即使在虚拟服务器230的实例在相同物理服务器210上进行操作的情况下也并不与虚拟服务器230的其它实例共享信息。由于虚拟服务器230的这些实例的特性,单个物理服务器210能够同时执行非常大量的虚拟服务器230的实例。虚拟服务器230的这些实例的独立操作确保了虚拟服务器230同时存在的多个实例仅被物理服务器210的硬件约束所限制。
现在参考图3,示出了根据本发明实施例的示例虚拟服务器环境300。在一个实施例中,虚拟服务器环境300能够包括在物理服务器210上的虚拟服务器230中(图2)。应当理解的是,虚拟服务器环境300不同于处理虚拟机。处理虚拟机是依赖于平台的引擎,诸如JavaVirtual Machine,其执行以诸如Java之类的高级编程语言所编写的用于执行具体任务的独立于平台的代码(Java和Java Virtual Machine是Sun Microsystems在美国和/或其它地方的商标)。与之相比,当前发明的虚拟服务器环境300是对整个计算环境进行仿真的虚拟系统。就该范围而言,不同于仅执行单个任务,当前发明的虚拟服务器环境300是能够由用户120(图1)诸如通过执行其上的一个或多个应用而在其内执行各种任务、功能、操作等的环境。这样,能够使得虚拟服务器环境300仿真用户120眼中的独立计算机系统(图1)。
就该范围而言,虚拟服务器环境300包括处于最低级别的虚拟化管理程序302。特别地,虚拟化管理程序302提供了允许多个“访客”虚拟服务器230系统在物理服务器210上同时运行的平台(图2)。就该范围而言,虚拟化管理程序302提供了物理服务器210(图2)的硬件级别与每个虚拟服务器310的更高级别的软件功能之间的抽象级别。为了提供这些软件功能,每个虚拟服务器310可以包括软件堆栈312,其也可以被称作镜像。软件堆栈312包含经由虚拟化管理程序302在物理服务器210上仿真特定虚拟服务器310的“访客”实例所必需的所有内容。就该范围而言,软件堆栈312可以提供操作系统314和中间件316。该操作环境能够被用来执行一个或多个应用。
当前发明的发明人已经发现,目前用于监视应用例如虚拟服务器环境300中的执行的解决方案能够有所改进。例如,目前较不鲁棒的方法仅能够以操作系统314的级别检测故障而无法以应用318的级别检测故障和/或性能问题。其它目前的方法包括计算机系统(例如,虚拟服务器环境300)内的被动监视代理320,其自行执行应用318或者处于应用318之内。能够(例如,实时地)监视计算机系统上的应用的性能属性的这些监视解决方案(诸如被动监视代理320)经常无法提供这些属性能够与之轻易进行比较的值。因此,这样的系统是趋于高度复杂的,最初需要经过高度培训的专家对该解决方案进行配置,以分析所提供的属性并且提供进行中的性能调谐类型的管理。
现在返回图1,执行基本操作值获取模块142的计算机系统102针对测量计算机系统的性能(例如,操作运行时间特性,诸如CPU、存储器、存储等)资源利用变量集合中的每一个获取多个基本操作值152。操作值获取模块142经由无代理的处理(例如,拍摄计算机系统的快照/镜像)而从计算机系统获取这些基本操作值152。这些资源利用变量可以包括目前已知或后续研发的用于分析计算机系统的性能的任意参数,包括但并不局限于CPU利用、存储器利用、文件系统利用、磁盘输入-输出(IO)、网络IO、页面空间利用、VIO统计、运行中的进程的数量/类型,等等。
在一个实施例中,要针对其获取基本操作值152的一个或多个资源利用变量能够由用户120诸如经由图形用户界面而选择性地获取。类似地,用户120能够选择要针对每个资源利用变量获取(例如,经由图形用户界面)基本操作值152的次数。除此之外或可替换地,用户120能够(例如,使用图形用户界面)对操作值获取模块142将执行获取基本操作值152的任务的具体日期/时间(基线监视时间)进行调度。
通过允许用户120调度具体日期/时间,基本操作值获取模块142允许用户对反映计算机系统的操作条件中可能存在的变化的时间进行调度。例如,用户120能够生成一组统计,其包括特定计算机系统(例如,虚拟服务器环境)上随时间的操作负载,并且设置基本操作值获取模块142以在该计算机系统被预计处于最小和/或最大负载时获取基本操作值152。相反,值获取模块142能够使用这样的统计而针对最可能产生最充分的可能值范围的时间(例如,预计最小和最大负载)而自动调度基本操作值152的获取。
现在结合图1参考图4,根据本发明的实施例而示出了基本操作值获取模块142能够从计算机系统410获取基本操作值152的环境400。在一个实施例中,能够从计算机系统410或者其一部分(例如,虚拟服务器430)获取包含操作值152的快照434。该快照434可以包括整个计算机系统410或其一部分(例如,虚拟服务器430)的镜像。除此之外或可替换地,能够在快照434上执行索引操作以仅返回所期望的值,诸如基本操作值152。在任意情况下,一旦已经拍摄了快照434,快照434就能够通过网络220转发以便进行处理。可替换地,快照可以存储在存储系统418中并且与其它快照434批量转发。除此之外或可替换地,计算机系统410能够执行处理并且该处理的结果能够被转发。该处理可以包括快照434的解析、索引等以从快照434取回基本操作值152,执行以下所要描述的任意或全部过程,和/或所期望的任意其它处理。
现在参考图5,示出了根据本发明实施例的基本操作值500的集合。如所示出的,已经针对四个不同的资源利用变量502a-d而获取了基本操作值500。应当理解的是,这里所图示了资源利用变量502a-d的类型并不被作为限制。相反,可以针对能够被用来测量计算机系统性能(例如,操作运行时特性)的任意可测量属性而获取基本操作值500,上述可测量属性包括但并不局限于:CPU利用、存储器利用、文件系统利用、磁盘I/O、网络I/O、页面空间利用、VIO统计、运行过程的数量/类型,等等。在任意情况下,如所图示的,已经针对每个资源利用变量502a-d获取了(来自快照的)基本操作值500的六个不同集合504a-f。就该范围而言,集合504a-f中的每一个包括资源利用变量502a-d中的每一个在特定时间(例如,在用户之前所设置的基线监视时间)的资源操作值。所图示实施例中图示的基本操作值500的多个集合504a-f被认为提供了用于满足本发明的用途的足够数量的值。然而,应当理解的是,能够使用基本操作值500的更大或更小数量的不同集合504a-f。
再次返回图1,执行应用简档编译模块144的计算机系统102基于基本操作值获取模块142所获取的基本操作值而对计算机系统210的应用简档154进行编译。应用简档154能够作为计算机系统210的性能的基线测量。就该范围而言,针对资源利用变量中的每一个所获取的基本操作值152的集合能够被用来编译该特定变量的简档。该简档可以包括针对该资源利用变量而使用基本操作值152的集合所计算的每个资源利用变量的过程控制上限和过程控制下限。
在一个实施例中,该过程控制上限和过程控制下限能够使用移动范围控制限度计算而被计算,其使用了针对资源利用变量中的每一个而获取的基本资源操作值152。例如,能够计算对应于所获取的特定资源利用变量基本资源操作值152的每个连续配对之间的绝对差值。例如,参考图5,计算对应于CPU利用502a的基本资源操作值500的集合504a-f的绝对差值(例如,8.97、9.64、10,9、8.75、8.80)将产生值0.67(9.64-8.97)、0.36(10-9.64)、1(10-9)、0.25(9-8.75)和0.05(8.80-8.75)。这些绝对差值进而能够被平均以得到所有资源操作值152上的平均差值,其在所图示的示例中将为(0.67+0.36+1+0.25+0.05)/5=0.47。
该平均差值能够被乘以权重因数以得到加权平均差值。该加权因数可以基于标准偏差(例如,第2偏差)或者使用目前已知或随后研发的用于计算权重的任意其它解决方案。该加权平均差值能够被相加到所获取的基本资源操作值152的平均值(平均资源操作值)以得到过程控制上限。类似地,能够从平均资源操作值减去该加权平均差值而得到过程控制下限。在所图示的实施例中,该平均资源操作值将为(8.97+9.64+10+9+8.75+8.00)/6=9.19。假设权重因数为2.66,则CPU利用502a的过程控制上限将为9.19+(2.66*0.47)=10.44。类似地,CPU利用502a的过程控制下限将为9.19-(2.66*0.47)=7.94。
再次结合图2、图3和图5参考图1,执行利用操作值收集模块146的计算机系统102针对计算机系统210的资源利用变量中的每一个收集利用操作值152。利用操作值152能够经由被用来获取基本操作值500的相同无代理处理进行收集。例如,结合图4的实施例400所提到的相同处理能够被用来创建计算机系统410的快照434,并且快照434能够存储在存储系统418中和/或根据需要通过网络210进行传输。除此之外或可替换地,利用操作值152能够经由在其中执行应用的虚拟服务器环境300内和/或应用自身内运行的被动监视代理320进行收集,。这样的解决方案能够允许在应用执行期间快速收集多个利用操作值152和/或允许诸如实时地对所要收集的利用操作值152进行流传输。
在任意情况下,利用操作值152与基本操作值500的不同之处在于利用操作值152在用户120希望进行监视的应用在计算机系统210上的执行期间从计算机系统210进行收集。以这种方式,利用操作值收集模块146能够为用户120提供应用执行时的准确操作值152的数据。该数据能够在并不对计算机系统210的操作造成不利影响并且无需执行扩展性配置和/或维护操作的情况下提供。
现在结合图2、图3和图5参考图1,执行应用性能评估模块148的计算机系统102利用操作值152对计算机系统210内的应用的性能进行评估。为此,应用性能评估模块148能够将利用操作值收集模块146所收集的利用操作值152与应用简档编译模块144所编译的应用简档154进行比较。该比较可以在本地执行,诸如由在虚拟服务器环境内运行的被动监视代理所执行。作为替换,利用操作值152能够被传输至存储应用简档154的远程系统,并且能够在该位置执行比较。在任意情况下,该比较能够关于基于基本操作值针对特定资源利用变量所计算的控制上限和控制下限对对应于该资源利用变量的利用操作值152进行分析。
例如,在以上示例中,针对CPU利用502a所收集的处于、高于所计算控制上限10.44或者处于其某个百分比之内的利用操作值152指示该应用在计算机系统210上的执行故障(例如,存储器资源的不正确使用)。类似地,针对CPU利用502a所收集的处于、低于所计算控制下限10.44或者处于其某个百分比之内的利用操作值152指示该应用在计算机系统210上的执行故障(例如,没有分配所有必要的存储器资源)。
该评估能够允许用户120得到比之前可获取的更多的与应用执行相关的信息。例如,用户120能够在评估指示应用并未正确执行的情况下接收到警告。用户120随后能够对应用进行评估以确定应用中是否存在问题和/或向计算机系统210的管理员警告存在的潜在问题。除此之外或可替换地,用户120能够指定随时间收集一系列利用操作值152(例如,通过在应用执行期间拍摄计算机系统210的周期性快照)。这些利用操作值152能够被分析、汇总、使用以计算用来编译趋势等的统计,这允许用户120在应用管理中具有前摄性。由于之前已经使用自动处理根据基本操作值对应用简档154进行了编译,但是该评估可以简单且重复执行而无需扩展性的人为干预来执行分析和/或提供进行中的性能调谐类型的管理。
另外,用户120能够使用该数据来确定控制上限和/或控制下限是否仍然有效,并且如果用户120认为并非这样的情况,则安排新的时间集合(例如,从第一时间集合中去除的时间)以便从计算机系统210获取操作值152,在那些时间获取所更新的基本操作值152的集合,并且使用所更新的基本操作值152计算替换之前所使用的应用简档的替换应用简档。该替换应用简档随后可以被用来执行当前和/或未来的利用操作值152的性能的评估。
现在结合图1参考图6,示出了根据本发明实施例的示例流程图。如所图示的,在P1,能够指定资源利用变量502a-d的集合。该指定能够使用预先存在的列表进行,该列表诸如能够由用户120经由图形用户界面等进行输入/选择。在P2,能够指定基线监事时间的集合。这些基线监视时间诸如能够由用户120经由图形用户界面进行输入/选择;能够自动生成(例如,基于过去对计算机系统210(图2)的操作统计),等等。在P3,如被计算机系统102所执行的基本操作值获取模块142针对每个所指定的资源利用变量而获取基本操作值152。这些基本操作值152经由无代理处理获取(例如,拍摄计算机系统210(图2)的快照)。在P4,确定是否已经在所有所调度的时间获取了基本操作值152。如果还没有获取全部的基本操作值152,则处理返回P3并且在下一个调度时间获取基本操作值152的下一个集合。否则,该处理移动至A。
现在考虑图1而转向图7,示出了根据本发明实施例的示例流程图。如所图示的,处理从A移动至P5,在那里确定是否已经获取了足够的(例如,6个或更多)基本操作值152的集合。如果没有,则处理分支到B并返回P2(图6)以便调度更多的基线监视时间。否则,在P6,如计算机系统102所执行的,应用简档偏移模块144基于所获取的基本操作值152而对计算机系统210(图2)的应用简档154进行编译。该应用简档154包括能够使用移动范围控制限度计算进行计算的过程控制上限和过程控制下限。在P7,如计算机系统102所执行的,利用操作值收集模块146在应用在计算机系统上的执行期间从计算机系统210针对每个所指定的资源利用变量而收集利用操作值152。该收集能够使用在虚拟服务器环境300内运行的被动监视代理320(图3)来进行,能够使用用来获取操作值152的相同无代理处理,或者能够使用目前已知或随后研发的任意其它解决方案来进行。在P8,如计算机系统102所执行的应用性能执行模块148基于应用简档154(例如,过程控制上限和过程控制下限)对利用操作值152进行分析以评估计算机系统210(图2)内的应用的性能(例如,操作运行时间特性),并且在P9,确定最近收集的利用操作值152是否处于正常限度之内。如果应用的性能处于正常限度之外,则在P10,能够发送错误消息(例如,向用户120、计算机系统210的管理员等)。在任意情况下,在P11,能够确定应用简档154是否仍然有效。如果否,则执行进行至B并返回P2(图6)以便调度新的基线监视时间集合。否则,执行回到P7,在那里在下一个调度时间收集利用操作值152的下一个集合。
虽然这里被示出并描述为用于监视应用的执行的方法和系统,但是所要理解的是,本发明的各方面进一步提供了各种可替换的实施例。例如,在一个实施例中,本发明提供了一种处于至少一个计算机可读介质上的计算机程序,当被执行时,其使得计算机系统监视应用的执行。就该范围而言,该计算机可读介质包括实现这里所描述的一些或全部处理的诸如应用监视程序140(图1)的程序代码。所要理解的是,术语“计算机可读介质”包括目前已知或随后研发的一个或多个任意类型的有形表达介质,计算设备能够从其感知、再现程序代码或以其它方式对其进行通信。例如,计算机可读介质可以包括:一个或多个便携式存储制造品;计算设备的一个或多个存储器/存储组件;等等。
在另一实施例中,本发明提供了一种提供实施这里所描述的一些或全部处理的诸如应用监视程序140(图1)的程序代码的副本的方法。在这种情况下,计算机系统能够对实施这里所描述的一些或全部处理的程序代码的副本进行处理以生成并传送数据信号集合以便在第二不同位置进行接收,该数据信号使得其一个或多个特性以对该数据信号集合中的程序代码的副本进行编码的方式进行设置和/或改变。类似地,本发明的实施例提供了获取实施这里所描述的一些或全部处理的程序代码的副本的方法,其包括接收这里所描述的数据信号集合并且将该数据信号集合转换为处于至少一个计算机可读介质中的计算机程序的副本的计算机系统。在任一种情况下,该数据信号集合能够使用任意类型的通信链路进行传送/接收。
在另一种实施例中,本发明提供了一种生成用于修复迁移相关故障的系统的方法。在这种情况下,能够获取(例如,创建、维护、使得可用等)诸如计算机系统120(图1)的计算机系统,并且能够获取(例如,创建、购买、使用、修改等)用于执行这里所描述的处理的一个或多个组件并且将其部署到该计算机系统。就该范围而言,该部署可以包括以下的一个或多个:(1)在计算设备上安装程序代码;(2)向计算机系统增加一个或多个计算和/或I/O设备;(3)对计算机系统进行整合和/或修改而使得其能够执行这里所描述的处理;等等。
如果在这里使用以及在被使用的情况下,术语“第一”、“第二”等并不表示任何顺序、数量或重要性,而是用来将一个元素与另一元素加以区分。在结合数量使用的情况下,修饰语“大约”包括所提到的值并且具有该上下文所指示的含义(例如,包括与特定数量的测量相关联的误差程度)。这里所使用的前缀“(多个)”意在包括其所修饰的事项的单数和复数形式,由此包括一个或多个该事项(例如,(多个)金属包括一个或多个金属)。
已经出于说明和描述的目的而给出了本发明各方面的上述描述。其并非意在是穷举的或者将本发明限制为所公开的确切形式,并且显然,可能进行许多修改和变化。对于本领域技术人员显而易见的是,这样的修改和变化处于如所附权利要求所限定的本发明的范围之内。

Claims (14)

1.一种用于监视一个应用在计算机系统上的执行的方法,包括:
针对测量所述计算机系统的性能的资源利用变量集合中的每个资源利用变量来获取多个基本操作值,所述多个基本操作值经由无代理处理而获取;
基于所述基本操作值对所述计算机系统的应用简档进行编译,所述应用简档包括所述资源利用变量集合中的每个资源利用变量的过程控制上限和过程控制下限;
在所述应用在所述计算机系统上的执行期间针对所述计算机系统的资源利用变量集合中的每个资源利用变量收集利用操作值;以及
基于所述利用操作值集合中的每个利用操作值与针对所述资源利用变量集合中的每个资源利用变量的对应的过程控制上限和对应的过程控制下限的比较,而评估所述计算机系统内的所述应用的性能。
2.根据权利要求1的方法,进一步包括:
对多个基线监视时间进行调度,所述多个基线监视时间中的每个基线监视时间被预计在所述计算机系统的不同操作负载期间出现,
其中所述获取包括对所述计算机系统拍摄快照,所述快照包括所述资源利用变量中的每个资源利用变量在所述基线监视时间中的每个基线监视时间的资源操作值;并且
其中所述收集包括对所述计算机系统拍摄快照,所述快照包括所述资源利用变量中的每个资源利用变量在所述应用正在所述计算机系统上执行时的利用操作值。
3.根据权利要求2的方法,进一步包括:
调度从所述基线监视时间集合中适时去除的第二多个所述基线监视时间;
在所述第二多个所述基线监视时间中的每个基线监视时间拍摄第二快照集合;
基于所述第二快照集合中所更新的资源操作值而利用替换应用简档对所述应用简档进行替换;以及
关于所述替换应用简档而执行对所述应用的所述性能的评估。
4.根据权利要求1的方法,其中对所述应用简档的所述编译进一步包括基于所述多个基本资源操作值而针对所述资源利用变量中的每个资源利用变量执行移动范围控制限度计算。
5.根据权利要求4的方法,其中所述执行所述移动范围控制限度计算进一步包括:
计算所述多个资源操作值中的每个连续资源操作值配对之间的绝对差值;
对所有所计算的绝对差值求平均以得到平均差值;
对所述多个资源操作值求平均以得到平均资源操作值;
将所述平均差值乘以权重因数以得到加权平均差值;
将所述加权平均差值相加到所述平均资源操作值以得到所述过程控制上限;以及
从所述平均资源操作值减去所述加权平均差值以得到所述过程控制下限。
6.根据权利要求1的方法,进一步包括响应于确定所述利用操作值处于由所述过程控制上限和所述过程控制下限定义的范围之外而向所述应用的用户发送错误消息。
7.根据权利要求1的方法,其中所述计算机系统包括服务器,并且所述编译和所述评估在所述应用的用户的客户端上执行。
8.一种用于监视一个应用在计算机系统上的执行的系统,包括至少一个计算机设备,所述计算机设备执行一种方法,所述方法包括:
针对测量所述计算机系统的性能的资源利用变量集合中的每个资源利用变量来获取多个基本操作值,所述多个基本操作值经由无代理处理而获取;
基于所述基本操作值对所述计算机系统的应用简档进行编译,所述应用简档包括所述资源利用变量集合中的每个资源利用变量的过程控制上限和过程控制下限;
在所述应用在所述计算机系统上的执行期间针对所述计算机系统的资源利用变量集合中的每个资源利用变量收集利用操作值;以及
基于所述利用操作值集合中的每个利用操作值与针对所述资源利用变量集合中的每个资源利用变量的对应的过程控制上限和对应的过程控制下限的比较,而评估所述计算机系统内的所述应用的性能。
9.根据权利要求8的系统,所述方法进一步包括:
对多个基线监视时间进行调度,所述多个基线监视时间中的每个基线监视时间被预计在所述计算机系统的不同操作负载期间出现,
其中所述获取包括对所述计算机系统拍摄快照,所述快照包括所述资源利用变量中的每个资源利用变量在所述基线监视时间中的每个基线监视时间的资源操作值;并且
其中所述收集包括对所述计算机系统拍摄快照,所述快照包括所述资源利用变量中的每个资源利用变量在所述应用正在所述计算机系统上执行时的利用操作值。
10.根据权利要求9的系统,所述方法进一步包括:
调度从所述基线监视时间集合中适时去除的第二多个所述基线监视时间;
在所述第二多个所述基线监视时间中的每个基线监视时间拍摄第二快照集合;
基于所述第二快照集合中所更新的资源操作值而利用替换应用简档对所述应用简档进行替换;以及
关于所述替换应用简档而执行对所述应用的所述性能的评估。
11.根据权利要求8的系统,其中对所述应用简档的所述编译进一步包括基于所述多个基本资源操作值而针对所述资源利用变量中的每个资源利用变量执行移动范围控制限度计算。
12.根据权利要求11的系统,其中所述执行所述移动范围控制限度计算进一步包括:
计算所述多个资源操作值中的每个连续资源操作值配对之间的绝对差值;
对所有所计算的绝对差值求平均以得到平均差值;
对所述多个资源操作值求平均以得到平均资源操作值;
将所述平均差值乘以权重因数以得到加权平均差值;
将所述加权平均差值相加到所述平均资源操作值以得到所述过程控制上限;以及
从所述平均资源操作值减去所述加权平均差值以得到所述过程控制下限。
13.根据权利要求8的系统,所述方法进一步包括响应于确定所述利用操作值处于由所述过程控制上限和所述过程控制下限定义的范围之外而向所述应用的用户发送错误消息。
14.根据权利要求8的系统,其中所述计算机系统包括服务器,并且所述编译和所述评估在所述应用的用户的客户端上执行。
CN201410563100.5A 2013-10-28 2014-10-21 用于监视一个应用在计算机系统上的执行的方法和系统 Active CN104572232B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/064,456 2013-10-28
US14/064,456 US20150120906A1 (en) 2013-10-28 2013-10-28 Agentless baseline profile compilation for application monitoring solution

Publications (2)

Publication Number Publication Date
CN104572232A true CN104572232A (zh) 2015-04-29
CN104572232B CN104572232B (zh) 2018-04-17

Family

ID=52996744

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410563100.5A Active CN104572232B (zh) 2013-10-28 2014-10-21 用于监视一个应用在计算机系统上的执行的方法和系统

Country Status (2)

Country Link
US (1) US20150120906A1 (zh)
CN (1) CN104572232B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111381937A (zh) * 2020-04-02 2020-07-07 中国电子科技网络信息安全有限公司 一种基于时间基线的实验场景快照生成系统及方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170351528A1 (en) * 2015-05-07 2017-12-07 Hitachi, Ltd. Method and apparatus to deploy information technology systems
US10397324B2 (en) * 2015-07-22 2019-08-27 Netapp, Inc. Methods and systems for managing a resource in a networked storage environment
US10097434B2 (en) * 2016-02-09 2018-10-09 T-Mobile Usa, Inc. Intelligent application diagnostics
US10797941B2 (en) * 2016-07-13 2020-10-06 Cisco Technology, Inc. Determining network element analytics and networking recommendations based thereon
EP4198702A4 (en) * 2021-01-06 2024-03-13 Samsung Electronics Co Ltd ELECTRONIC DEVICE AND MEMORY MANAGEMENT METHOD USING SAME

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050022185A1 (en) * 2003-07-10 2005-01-27 Romero Francisco J. Systems and methods for monitoring resource utilization and application performance
CN101009684A (zh) * 2007-01-29 2007-08-01 杭州华为三康技术有限公司 分布式系统中单板工作状态监控装置及方法
US20080082312A1 (en) * 2006-10-03 2008-04-03 Honeywell International Inc. Apparatus and method for controller performance monitoring in a process control system
US20110302294A1 (en) * 2010-06-07 2011-12-08 Compuware Corporation Service quality evaluator having adaptive evaluation criteria

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7269824B2 (en) * 2003-02-13 2007-09-11 Path Reliability, Inc. Software behavior pattern recognition and analysis
US8510430B2 (en) * 2006-08-03 2013-08-13 International Business Machines Corporation Intelligent performance monitoring based on resource threshold
US9588821B2 (en) * 2007-06-22 2017-03-07 Red Hat, Inc. Automatic determination of required resource allocation of virtual machines
US9727440B2 (en) * 2007-06-22 2017-08-08 Red Hat, Inc. Automatic simulation of virtual machine performance
US8208381B2 (en) * 2007-07-27 2012-06-26 Eg Innovations Pte. Ltd. Root-cause approach to problem diagnosis in data networks
US9395786B2 (en) * 2007-11-20 2016-07-19 Hewlett Packard Enterprise Development Lp Cross-layer power management in a multi-layer system
BRPI0822555A2 (pt) * 2008-04-11 2015-07-07 Bic Violex Sa Cabo de barbeador com um transportador de cabeça de barbeador retrátil e barbeador como cabo
US8543998B2 (en) * 2008-05-30 2013-09-24 Oracle International Corporation System and method for building virtual appliances using a repository metadata server and a dependency resolution service
US8261266B2 (en) * 2009-04-30 2012-09-04 Microsoft Corporation Deploying a virtual machine having a virtual hardware configuration matching an improved hardware profile with respect to execution of an application
US9342373B2 (en) * 2010-05-20 2016-05-17 International Business Machines Corporation Virtual machine management among networked servers
JP5458308B2 (ja) * 2010-06-11 2014-04-02 株式会社日立製作所 仮想計算機システム、仮想計算機システムの監視方法及びネットワーク装置
US8285800B2 (en) * 2010-06-25 2012-10-09 Compuware Corporation Service model creation using monitored data of the performance management tool
US8862727B2 (en) * 2012-05-14 2014-10-14 International Business Machines Corporation Problem determination and diagnosis in shared dynamic clouds
US9135135B2 (en) * 2012-06-28 2015-09-15 Sap Se Method and system for auto-adjusting thresholds for efficient monitoring of system metrics
US9135048B2 (en) * 2012-09-20 2015-09-15 Amazon Technologies, Inc. Automated profiling of resource usage
GB2508161A (en) * 2012-11-21 2014-05-28 Ibm Monitoring applications executing on a virtual machine and allocating the required resources to the virtual machine.

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050022185A1 (en) * 2003-07-10 2005-01-27 Romero Francisco J. Systems and methods for monitoring resource utilization and application performance
US20080082312A1 (en) * 2006-10-03 2008-04-03 Honeywell International Inc. Apparatus and method for controller performance monitoring in a process control system
CN101009684A (zh) * 2007-01-29 2007-08-01 杭州华为三康技术有限公司 分布式系统中单板工作状态监控装置及方法
US20110302294A1 (en) * 2010-06-07 2011-12-08 Compuware Corporation Service quality evaluator having adaptive evaluation criteria

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111381937A (zh) * 2020-04-02 2020-07-07 中国电子科技网络信息安全有限公司 一种基于时间基线的实验场景快照生成系统及方法

Also Published As

Publication number Publication date
CN104572232B (zh) 2018-04-17
US20150120906A1 (en) 2015-04-30

Similar Documents

Publication Publication Date Title
CN104572232A (zh) 用于监视一个应用在计算机系统上的执行的方法和系统
JP7277003B2 (ja) 分散型工業パフォーマンス監視及び分析
Vierhauser et al. ReMinds: A flexible runtime monitoring framework for systems of systems
US11138058B2 (en) Hierarchical fault determination in an application performance management system
US10942801B2 (en) Application performance management system with collective learning
US11138060B2 (en) Application performance management system with dynamic discovery and extension
CN104937548A (zh) 动态图的性能监视
CN103793295A (zh) 用于灾难恢复虚拟化的模拟引擎的系统和方法
CN104919427A (zh) 动态组件性能监视
CN105122733A (zh) 队列监控和可视化
Vierhauser et al. A flexible framework for runtime monitoring of system-of-systems architectures
US11153183B2 (en) Compacted messaging for application performance management system
Browne et al. Comprehensive, open‐source resource usage measurement and analysis for HPC systems
Chen et al. FRL-MFPG: Propagation-aware fault root cause location for microservice intelligent operation and maintenance
Sivalingam et al. LASSi: metric based I/O analytics for HPC
US10848371B2 (en) User interface for an application performance management system
Li et al. MicroSketch: Lightweight and adaptive sketch based performance issue detection and localization in microservice systems
WO2023154051A1 (en) Determining root causes of anomalies in services
US10817396B2 (en) Recognition of operational elements by fingerprint in an application performance management system
CN112639739A (zh) 在至少两个不同级别的平台的计算机上分发特定应用的子应用
Straesser et al. Kubernetes-in-the-Loop: Enriching Microservice Simulation Through Authentic Container Orchestration
Johansen et al. USING SOFTWARE DESIGN PATTERNS TO BUILD DISTRIBUTED ENVIRONMENTALMONITORING APPLICATIONS
Meixner Data-driven automatic deployment in edge computing
van Hoorn et al. Kubernetes-in-the-Loop: Enriching Microservice Simulation Through Authentic Container Orchestration
Зеленько et al. SPADE software agents and their impact on hardware resources

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20211104

Address after: USA New York

Patentee after: Qindarui Co.

Address before: New York grams of Armand

Patentee before: International Business Machines Corp.

TR01 Transfer of patent right