CN110431530B - 度量和日志的预期收集 - Google Patents

度量和日志的预期收集 Download PDF

Info

Publication number
CN110431530B
CN110431530B CN201880018963.0A CN201880018963A CN110431530B CN 110431530 B CN110431530 B CN 110431530B CN 201880018963 A CN201880018963 A CN 201880018963A CN 110431530 B CN110431530 B CN 110431530B
Authority
CN
China
Prior art keywords
data
resource usage
diagnostic
collected
usage data
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.)
Active
Application number
CN201880018963.0A
Other languages
English (en)
Other versions
CN110431530A (zh
Inventor
J·齐昂斯
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN110431530A publication Critical patent/CN110431530A/zh
Application granted granted Critical
Publication of CN110431530B publication Critical patent/CN110431530B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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/0706Error 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 the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error 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 the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • 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/079Root cause analysis, i.e. error or fault diagnosis
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • 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/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种系统包括处理器和存储在有形机器可读介质上的机器可读指令,这些机器可读指令在由处理器执行时将处理器配置为收集关于计算系统内的资源使用的数据,该数据是在没有运行诊断程序的情况下,在值得诊断事件发生之前周期性地收集的;并且将所收集的数据提供给在值得诊断事件发生之后执行的诊断程序,使得诊断程序具有来自值得诊断事件发生之前的数据,以使得能够确定值得诊断事件的原因。

Description

度量和日志的预期收集
技术领域
本公开总体上涉及计算机诊断系统,并且更具体地涉及在事件发生之前收集资源使用数据并且将该数据提供给在事件发生之后执行的诊断程序以进行分析。
背景技术
本文中提供的背景描述是为了总体上呈现本公开的上下文。就目前提名的发明人的工作在本“背景技术”部分中描述的程度而言,该工作以及在提交时可能不适合作为现有技术的本描述的各方面既不明确也不隐含地被承认是本公开的现有技术。
很多操作系统提供用于收集关于计算机系统的操作和相关资源的数据的工具。在某些情况下,可以连续地收集数据。连续地收集数据会消耗计算机系统的大量资源,诸如处理器时间、存储器量、每秒磁盘输入/输出操作(IOPS)等。收集数据所消耗的资源对在计算机系统上运行的用户应用变得不可用。因此,虽然数据可以帮助诊断可能不时地发生的错误,但是连续地收集数据也会对用户应用的性能产生负面影响。
或者,可以仅在发生错误时收集这样的数据。例如,错误的发生可以触发诊断程序的执行,该诊断程序然后开始收集数据以便分析错误。然而,在这种情况下,导致错误发生的数据不可用,并且在没有这样的数据的情况下确定错误的原因可能是困难的。
发明内容
一种系统包括处理器和存储在有形机器可读介质上的机器可读指令,这些机器可读指令在由处理器执行时将处理器配置为收集关于计算系统内的资源使用的数据,该数据是在没有运行诊断程序的情况下,在值得诊断事件发生之前周期性地收集的;并且将所收集的数据提供给在值得诊断事件发生之后执行的诊断程序,使得诊断程序具有来自值得诊断事件发生之前的数据,以使得能够确定值得诊断事件的原因。
在其他特征中,机器可读指令还将处理器配置为与时间戳一起将所收集的数据提供给诊断程序,时间戳指示收集数据的时间。
在其他特征中,在值得诊断事件发生之前收集的数据和由诊断程序在值得诊断事件发生之后实时地收集的数据由诊断程序处理以提供给分析器,分析器分析处理后的数据以确定值得诊断事件的原因。
在其他特征中,周期性地收集数据而不运行诊断程序比通过运行诊断程序收集数据消耗更少的资源。
在其他特征中,所收集的数据包括关于计算系统对处理和存储资源中的一个或多个的使用的数据。
在其他特征中,机器可读指令还将处理器配置为将所收集的数据存储在具有预定量的存储器的循环缓冲器中。
在其他特征中,机器可读指令还将处理器配置为使用小于或等于分配给计算系统的预定量的资源来收集和存储数据。
在其他特征中,机器可读指令还将处理器配置为以压缩形式存储所收集的数据中的至少一些,并且以解压缩形式将所收集的数据提供给诊断程序。
在其他特征中,所收集的数据由分析器使用以生成用于重新配置计算系统或用于重新配置计算系统的一个或多个资源的推荐。
在其他特征中,一种方法包括收集关于计算系统内的资源使用的数据;在没有运行诊断程序的情况下,在待诊断事件发生之前周期性地收集数据;以及将所收集的数据提供给在事件发生之后执行的诊断程序,使得诊断程序具有来自事件发生之前的数据,以使得能够确定事件的原因。
在其他特征中,该方法还包括与时间戳一起将所收集的数据提供给诊断程序,时间戳指示收集数据的时间。
在其他特征中,来自事件发生之前的所收集的数据和由诊断程序在事件发生之后实时地独立地收集的数据由诊断程序处理,以使得能够确定事件的原因。
在其他特征中,周期性地收集数据而不运行诊断程序比通过运行诊断程序收集数据消耗更少的资源。
在其他特征中,该方法还包括收集包括关于计算系统对处理和存储资源中的一个或多个的使用的数据的数据。
在其他特征中,该方法还包括将所收集的数据存储在具有预定量的存储器的循环缓冲器中。
在其他特征中,该方法还包括使用小于或等于分配给计算系统的预定量的资源来收集和存储数据。
在其他特征中,该方法还包括以压缩形式存储所收集的数据中的至少一些,并且以解压缩形式将所收集的数据提供给诊断程序。
在其他特征中,该方法还包括基于所收集的数据提供用于重新配置计算系统或用于重新配置计算系统的一个或多个资源的推荐。
在其他特征中,一种系统包括处理器和存储在有形机器可读介质上的机器可读指令,这些机器可读指令在由处理器执行时将处理器配置为:收集关于计算系统对处理和存储资源中的一个或多个的使用的数据,该数据是在没有运行诊断程序的情况下,在要由诊断程序诊断的事件发生之前在循环缓冲器中周期性地收集的;并且在事件发生之后执行诊断程序时,与时间戳一起将所收集的数据提供给诊断程序,使得诊断程序具有来自事件发生之前的数据和由诊断程序在事件发生之后实时地独立地收集的数据,以使得能够确定事件的原因,时间戳指示收集数据的时间。
在其他特征中,机器可读指令还将处理器配置为使用小于或等于分配给计算系统的预定量的资源来收集和存储数据。周期性地收集数据而不运行诊断程序比通过运行诊断程序收集数据消耗更少的资源。
根据“具体实施方式”、“权利要求”和“附图”,本公开的其他应用领域将变得很清楚。详细描述和具体示例仅用于说明的目的,并不旨在限制本公开的范围。
附图说明
图1是可以用于部署虚拟机的云计算系统的简化示例的功能框图。
图2是示出用于在感兴趣的事件发生之前在虚拟机中收集和存储数据并且在事件发生之后将数据提供给诊断程序的方法的示例的流程图。
图3是可以实现图1的云计算系统的分布式网络系统的简化示例的功能框图。
图4是在图3的分布式网络系统中使用的客户端设备的简化示例的功能框图。
图5是在图3的分布式网络系统中使用的服务器的简化示例的功能框图。
在附图中,可以重复使用附图标记来标识相似和/或相同的元素。
具体实施方式
本公开涉及一种用于收集数据的新颖的系统和方法,该系统和方法不仅可以通过在感兴趣的诊断事件发生之前周期性地收集有限量的数据来节省资源,而且还可以通过将数据提供给在事件发生之后执行的诊断程序来帮助诊断事件。如下面详细解释的,数据是在不执行诊断程序的情况下收集的。收集的数据的种类也不同于由诊断程序通常收集的数据种类。具体地,在收集和存储数据时消耗的资源量远小于由诊断程序收集的数据种类通常消耗的资源量。此外,当待诊断事件发生并且触发(例如,通过用户动作)诊断程序的执行时,在事件发生之前收集的数据与时间戳一起被提供给诊断程序,时间戳指示数据是在事件发生之前收集的。因此,诊断程序可以处理在事件发生之前收集的数据以及在事件发生之后诊断程序实时地收集的数据,以确定事件的原因。下面详细描述本公开的新颖的系统和方法的这些和其他特征。
在整个本公开中,在云计算系统上运行的虚拟机仅用作示例以用于说明目的。本公开的教导不限于在云计算系统上运行的虚拟机;相反,本公开的教导同样适用于本地运行的独立计算机系统上运行的虚拟机。此外,本公开的教导不限于虚拟机;相反,本公开的教导同样适用于没有虚拟化的物理主机(即,非虚拟化的本地节点)。在整个本公开中,在云计算系统上运行的虚拟机、在本地独立计算机系统上运行的虚拟机、和没有虚拟化的物理主机(即,非虚拟化的本地节点)统称为计算设备或计算系统。
本公开内容如下组织。作为可以在其中实现本公开的方法的环境的示例,首先参考图1给出云计算系统的一般架构。仅作为示例,在云计算系统上运行的任何虚拟机都可以实现本公开的方法。随后,简要概述该方法,然后详细描述该方法及其技术效果。然后参考图2中所示的流程图描述该方法。在图3-5中,呈现了可以实现云计算系统的分布式网络系统的简化示例。分布式网络系统的任何节点可以运行虚拟机,该虚拟机又可以实现本公开的方法。
图1示出了根据本公开的云计算系统(CCS)10的简化示例。云计算系统10包括云控制器12和至少一个数据中心14。虽然为了简单起见仅示出了一个数据中心14,但是云控制器12可以对接多个数据中心。此外,虽然数据中心14被示出为对于云控制器12是本地的,但是一个或多个数据中心可以在地理上远离云控制器12,可以位于不同的地理位置(例如,在不同的时区、不同的国家或大陆等),并且可以经由各种网络与云控制器12通信。云控制器12控制一个或多个数据中心14。
每个数据中心14包括多个结构控制器32-1、32-2、……、和32-n(统称为结构控制器32)和对应的集群34-1、34-2、……、和34-n(统称为集群34)。每个结构控制器32控制相应的集群34。每个集群34包括多个机架(未示出),并且每个机架包括多个节点(也未示出),这些节点在整个本公开中也称为服务器、主机或机器。每个结构控制器32与分配器36相关联,分配器36为托管在集群34上的客户服务的实例分配集群34内的资源。
云控制器12包括门户20和软件开发工具包(SDK)22,客户可以使用SDK 22来选择资源并且请求服务部署。云控制器12还包括云资源管理器24、计算资源提供器26和前端28。前端28与一个或多个数据中心14的结构控制器32对接。云资源管理器24接收客户选择并且将客户选择转发给计算资源提供器26。计算资源提供器26基于客户选择生成租户模型。计算资源提供器26根据基于客户选择而生成的租户模型向客户服务提供资源。计算资源提供器26通过与云存储(Xstore)30、网络资源提供器31和结构控制器32对接来提供存储、网络和计算资源。可以基于租户模型在集群34中部署一个或多个虚拟机(VM)。
计算资源提供器26请求通过客户代理在部署的VM内采取动作,客户代理是在VM内运行的软件或程序并且经由安全通道与计算资源提供器26通信并且代表计算资源提供器26进行动作。由计算资源提供器26在VM内安装并且启用诊断程序,以通过客户代理进行动作。计算资源提供器26指示客户代理安装/启用诊断程序。本公开的新颖系统和方法可以在客户代理内实现,以使得易于执行诊断程序与下面讨论的客户代理中的代码之间的握手。在替代实现中,计算资源提供器26可以使用适当的凭证(当计算资源提供器26供应VM时注入到VM中)远程地访问VM,以发出启动诊断程序的命令。
现在呈现本发明方法的简要概述。通常,本公开涉及在诸如VM等系统内的度量的预期收集。度量是测量(例如,在时间间隔内的数目误差)。通常,在检测到问题时,在VM或任何其他资源提供器内开启更深层次的诊断。这是因为,持续地运行的诊断日志消耗处理器时间,并且该计算和所记录的度量的存储存在成本。因此,在一些系统中,可以仅从发现问题的时间收集度量而不是一直记录,因此,错过了实际事件和导致事件的重要度量。
本发明的方法执行三个新颖的操作:1)度量的预期收集;2)将这些度量注入诊断系统中,使得对于系统看起来好像度量已经一直被收集,甚至在诊断系统启动之前;3)将已经收集的日志注入诊断系统中,使得对于该系统看起来好像日志已经一直被摄取,甚至在诊断系统启动之前。(日志表示在特定时间发生的事件。)第二操作和第三操作的关键在于,诊断系统本身不必尝试将历史视图与同时期收集的视图集成;相反,本发明的方法集成了这些操作,使得诊断系统看到同时期视图,该同时期视图在时间上追溯到在触发(例如,通过用户动作)诊断程序的执行的触发事件之前。
本公开设想一种系统,该系统使用在每个VM内运行的代理,该代理收集少量的预定义的消耗约束度量。这里,短语“消耗约束”是指如下度量:(i)收集成本低廉(就与计算和存储相关联的成本而言),以及(ii)存储在循环缓冲器中以保持随时间(例如,滚动捕获窗口的时间段=-1周或-1天)收集的诊断数据(用于分析在过去发生的某个事件的目的)。缓冲器中的数据永远不会离开VM,并且代理的活动受到约束。因此,客户不需要为外部存储、网络消耗或CPU消耗付费。
与外部存储和网络出口不同,客户总是为CPU消耗付费。消耗约束度量不会耗尽(消耗)客户支付的可用CPU容量的很大一部分。例如,假定客户支付X达一小时(3600秒)的VM时间。术语“消耗约束度量”表示在捕获和压缩度量时,这些3600秒中的很少被耗尽(消耗)。通过将数据保持为对于VM是本地的,在捕获和压缩度量时,外部存储和网络出口都不会被耗尽(消耗)。
以下是根据本公开的预期未来需要而收集的数据的一些示例。处理器数据的示例包括%繁忙/IO等待/中断/空闲(这些加起来为100%)和%用户/低优先级/特权时间(这些加起来为100%)。存储器数据的示例包括%使用的存储器、每秒的页面操作(组合的页入和页出)和%使用的交换。每个安装的文件系统的文件系统数据示例包括%空闲空间、%空闲inode、读取操作/秒和写入操作/秒。每个连接设备的磁盘数据的示例包括平均I/O队列长度。此外,还可以收集有关Syslog事件的数据。注意,在本地收集和存储这些是每个Linux系统的正常操作部分。因此,除了在请求之前存储这些日志消息之外,当诊断被启用时,本公开对它们进行解压缩、重新格式化和加时间戳并且将它们注入收集系统中,就好像事件是在最初发生时已经在VM外部被收集的一样。
以下是根据本公开的在请求收集之前未收集的数据的一些示例。网络数据的示例包括网络统计(基于主机的度量就足够了)。存储器数据的示例包括单独的页入/页出统计、绝对(与百分比)度量。文件系统数据的示例包括绝对(与百分比)度量、以字节/秒为单位的读/写。磁盘数据的示例包括操作/秒、字节/秒、读取、写入的平均操作时间。操作系统(OS)数据的示例包括进程表。
当待诊断事件发生时(在整个本公开中也等同地称为值得诊断事件、感兴趣事件或重大事件),采取动作以使得能够收集深度诊断数据。该动作可以由用户通过例如使用基于web的门户(例如,在图1中示出为门户20)来启用/配置诊断或者使用命令行工具来进行。该动作引起诊断程序开始在VM内运行。该动作还引起另一程序运行,该程序使用预先收集的数据来产生馈送给诊断程序的事件(日志事件或度量收集事件)。该程序通过对预先收集的数据进行解压缩和重新格式化以供诊断程序使用来构造这些事件,因此它们被加时间戳以指示它们是在收集它们的历史时间点发生的,而不是在构造它们和对它们加时间戳以供应给诊断程序的时刻发生的。
最终结果是,VM中的诊断程序具有在感兴趣事件发生之前的一些数据以及在启用诊断程序之后同时期收集的数据。然后,诊断程序可以处理两组数据以确定事件的原因。虽然在整个本公开中使用术语“实时”,其暗示了几分之一秒的等待时间,实时表示同时期,并且同时期表示不是历史的。
应当注意,正在收集的一些度量来自VM外部(主机级别),这些度量被部分地收集以管理云基础设施,而其他度量来自VM内部以供客户消费。此外,当准备要转发给诊断程序的度量时,一些数据可能需要被解压缩,因为度量可能以压缩形式在缓冲器内。
现在详细描述本发明的方法及其技术效果。通常,用户使用门户开启诊断程序,并且指定要收集以用于诊断目的的数据类型。用户稍后可以返回门户并且查看自诊断开启以来收集的数据。本发明方法的目的是在用户未开启诊断时收集数据的子集。因此,当用户开启诊断,指定要收集的数据时,诊断程序具有来自诊断开启之前的一些数据,因为本发明的方法在诊断开启之前已经收集了数据的子集。因此,用户可以查看并且诊断程序可以分析在用户开启诊断并且请求数据收集的时间点之前收集的历史数据。
本发明的方法收集诊断通常将收集的数据的子集,以便将在收集客户可能不关心的数据时消耗的资源量(即,收集数据的成本)减少到最低限度。有两类数据。一类数据包括主机通常收集以供内部使用的数据(即,以正确地运行云基础设施)。另一类数据从虚拟机(VM)内收集,这对于本公开的发明方法而言是感兴趣的。从VM内收集的一些数据可以廉价地收集(即,不消耗大量资源),而其他数据的收集可能是昂贵的(即,收集消耗大量资源)并且可能不收集,除非用户指定。
有三个成本与收集数据相关联。第一成本是在VM内用来收集数据的处理器时间量。第二成本是在从VM发送出数据时消耗的网络带宽。第三成本是在VM外部存储数据的成本。由于本发明的方法将所收集的数据存储在VM内,并且由于数据保留在VM中直到在诊断程序开启时被发送到诊断程序,因此客户不会产生第二成本和第三成本。此外,由于该方法仅收集数据子集,因此第一成本显著最小化。
该方法收集的数据子集排除了诸如进程表(正在运行的进程的快照)等大数据集。该方法收集的数据子集包括诸如总CPU使用、总工作集大小(所有进程的总计)、交换使用和磁盘I/O队列长度等度量。例如,总CPU使用可以指示CPU使用飙升的时间点。工作集大小可以指示某事物的大小意外增长并且占用大部分存储器的时间点。交换使用可以指示存储器使用变为满并且开始交换从而导致性能显著损失的时间点。增长的I/O队列长度可以指示磁盘I/O开始落后的时间点。
收集和存储这些度量消耗很少的处理和存储资源。与这些度量相关联的数据的收集量非常小,并且可以存储在小缓冲器(例如,1MB循环缓冲器)中,与通常分配给VM的存储器和磁盘空间量相比,这可以忽略不计并且无关紧要。此外,用于存储数据的写入大小可以是操作系统的原子写入大小,使得在崩溃的情况下数据可能不会丢失。因此,数据可以存储在单个密集文件中,而不需要管理磁盘空间。
当在诊断程序开启时需要所收集的数据时,可以快速且容易地将文件中压缩的数据转换成由诊断程序使用的格式。当诊断程序开启时,它收集由用户指定的数据并且将数据写入存储表(例如,每个度量一行,并且每个时间戳几行)。在诊断程序开启之前在文件中收集的压缩数据可以展开并且放入对应的行中。因此,在诊断程序开启之前由本发明方法收集的历史数据与指示何时最初捕获历史数据的时间戳一起可用于诊断程序。
可以将用于执行本发明方法的代码集成到在VM上运行的代理中。只有VM的所有者才能访问由该方法收集的数据。此外,用户可以开启或关闭该方法。当诊断程序开启时,它查找存储由本发明方法收集的数据的文件。如果文件存在,则诊断程序从文件中提取数据,解压缩所提取的数据(因为它以紧凑的形式存储在文件中),并且使用扩展的数据填充表中的适当行。然后删除该文件。随后,当诊断程序关闭时,该方法再次开启,以便在诊断程序保持关闭时再次开始数据子集的周期性捕获。换言之,在诊断程序与执行本发明方法的代理中的代码之间发生上述类型的握手。
由本发明方法捕获的数据类型独立于VM的类型或客户的使用场景。要由该方法收集的数据类型的选择仅基于最小化在收集和存储由该方法捕获的数据时消耗的资源的目标。
由该方法收集的数据可以用于其他目的。例如,周期性地,可以在后端处获取和分析所收集的数据的快照。基于该分析,可以向用户推荐升级VM或改变其资源分配。此外,当用户开启诊断并且指定要由诊断收集的特定数据时,也可以在后端处分析该数据以推荐用户升级VM或改变其资源分配。此外,所收集的数据可以由支持人员用来解决客户问题或诊断通过其他方式检测到的基础设施问题。
图2示出了根据本公开的用于在事件发生之前收集和存储数据并且在事件发生之后将数据提供给诊断程序的方法50。在随后的方法50的描述中,术语“控件”是指下面参考图3-5描述的一个或多个客户端应用166和服务器应用186。换言之,在以下方法的描述中使用的术语“控件”表示由图3-5所示的客户端设备120或服务器130的一个或多个组件执行以执行所描述的功能的代码或指令(实现在图1所示的集群34中运行VM的节点、在本地运行的独立计算机系统上运行的虚拟机、或者没有虚拟化的物理主机(统称为计算设备或计算系统)。
在52处,控件在没有在VM上运行诊断程序的情况下,并且在VM上发生感兴趣的事件之前收集虚拟机内的有限量的资源使用数据。在54处,控件使用VM内的预定量的存储器(例如,具有有限量的存储器的循环缓冲器)来存储所收集的数据。
用户选择感兴趣的事件,这引起用户启动诊断程序。用户通过CRP门户(或API)启动诊断程序;并且CRP使用客户代理启动诊断程序,如上所述。在56处,控件检查诊断程序是否被启动。在58处,如果诊断程序被启动,则诊断程序实时地收集由用户指定的附加数据。
在60处,控件对在事件发生之前收集的数据加时间戳,以指示数据是在事件发生之前的时间收集的。在62处,控件将在事件发生之前收集的加时间戳的数据提供给诊断程序。在64处,诊断程序将所收集的度量和日志移出VM并且移入分析器(参见下面的定义),其中其他工具(图形、日志搜索、自动分析)可以对其进行操作以进行进一步分析,以使得能够基于在事件发生之前收集的加时间戳的数据和由诊断程序在事件发生之后实时地独立地收集的数据确定事件的原因。因此,控件使这些工具可以看到度量和日志的事件前视图,从而使得工具可以看到数据的集成的前/后视图。也就是说,控件使得所收集的数据可供某人或某物(例如,可以分析所收集的数据的一些人、工具或系统(在整个本公开中统称为分析器))分析,并且使得所收集的数据可用以便在值得诊断事件之前开始的集成流中示出度量/日志。
虽然未示出,但是随后,用户关闭诊断程序,并且控件返回到52。此外,虽然未示出,但是可以分析在54处存储的所收集的数据以向用户提供关于升级VM或其资源的推荐。另外,还可以分析由诊断程序在58处收集的数据,以向用户提供关于升级VM或其资源的推荐。
以下是可以实现本公开的系统和方法的分布式计算环境的简化示例。在整个说明书中,对诸如服务器、客户端设备、应用等术语的引用仅用于说明目的。术语“服务器”和“客户端设备”应当广义地理解为表示包括被配置为执行机器可读指令的一个或多个处理器和存储器的计算设备。术语“应用”和“计算机程序(或程序)”应当被广义地理解为表示可以由计算设备执行的机器可读指令。
图3示出了可以实现图1所示的云计算系统10的分布式网络系统100的简化示例。分布式网络系统100包括网络110、一个或多个客户端设备120-1、120-2、……、和120-N(统称为客户端设备120)(其中N是大于或等于1的整数)、以及服务器130。网络110可以包括局域网(LAN)、广域网(WAN)(诸如因特网)或其他类型的网络(统称为网络110)。客户端设备120经由网络110与服务器130通信。客户端设备120和服务器130可以使用无线和/或有线连接来连接到网络110。
例如,客户端设备120可以包括智能电话、个人数字助理(PDA)、膝上型计算机、个人计算机(PC)等。服务器130可以向客户端设备120提供多个服务。例如,服务器130可以执行多个软件应用。服务器130可以托管由多个软件应用使用并且由客户端设备120的用户使用的多个数据库。
虽然仅示出了一个服务器,但是分布式网络系统100可以包括多个服务器。例如,服务器可以位于不同的地理位置。例如,一个或多个服务器130可以实现图1所示的云控制器12。客户端设备120可以实现结构控制器32。作为另一示例,一个或多个服务器130可以实现结构控制器32。作为又一示例,一个或多个服务器130可以实现集群34的节点(未示出);等等。换言之,客户端设备120可以针对在客户端设备120下游的设备作为服务器130进行操作。
图4示出了客户端设备120的简化示例。客户端设备120通常可以包括中央处理单元(CPU)或处理器150、一个或多个输入设备152(例如,小键盘、触摸板、鼠标等)、包括显示器156的显示子系统154、网络接口158、存储器160和大容量存储装置162。
网络接口158将客户端设备120经由网络110连接到分布式网络系统100。例如,网络接口158可以包括有线接口(例如,以太网接口)和/或无线接口(例如,Wi-Fi、蓝牙、近场通信(NFC)或其他无线接口)。存储器160可以包括易失性或非易失性存储器、高速缓存或其他类型的存储器。大容量存储装置162可以包括闪存、硬盘驱动器(HDD)或其他大容量存储设备。
客户端设备120的处理器150执行操作系统(OS)164和一个或多个客户端应用166。客户端应用166包括将客户端设备120经由网络110连接到服务器130的应用。客户端设备120经由网络110访问由服务器130执行的一个或多个应用。客户端设备120可以实现在图1所示的集群34中运行VM的节点、在本地运行的独立计算机系统上运行的虚拟机、或者没有虚拟化的物理主机(统称为计算系统)。在任一种情况下,客户端应用166可以包括上面描述的可以在VM上运行的诊断程序和执行上述发明方法的代码。
图5示出了服务器130的简化示例。服务器130通常包括一个或多个CPU或处理器170、一个或多个输入设备172(例如,键盘、触摸板、鼠标等)、包括显示器176的显示子系统174、网络接口178、存储器180和大容量存储装置182。
网络接口178将服务器130经由网络110连接到分布式网络系统100。例如,网络接口178可以包括有线接口(例如,以太网接口)和/或无线接口(例如,Wi-Fi、蓝牙、近场通信(NFC)或其他无线接口)。存储器180可以包括易失性或非易失性存储器、高速缓存或其他类型的存储器。大容量存储装置182可以包括闪存、一个或多个硬盘驱动器(HDD)或其他大容量存储设备。
服务器130的处理器170执行操作系统(OS)184和一个或多个服务器应用186。大容量存储装置182可以存储一个或多个数据库188,一个或多个数据库188存储由服务器应用186用来执行相应功能的数据结构。服务器130可以实现在图1所示的集群34中运行VM的节点。在这种情况下,服务器应用186可以包括上面描述的可以在VM上运行的诊断程序和执行上述发明方法的代码。
前面的描述本质上仅是说明性的,而决不是要限制本公开、其应用或用途。本公开的广泛教导可以以各种形式实现。因此,尽管本公开包括特定示例,但是本公开的真实范围不应当受此限制,因为在研究了附图、说明书和所附权利要求之后,其他修改将变得很清楚。应当理解,方法内的一个或多个步骤可以以不同的顺序(或同时)执行,而不改变本公开的原理。此外,尽管上面将每个实施例描述为具有某些特征,但是关于本公开的任何实施例描述的那些特征中的任何一个或多个可以在任何其他实施例中实现和/或与任何其他实施例的特征组合,即使该组合没有明确描述。换言之,所描述的实施例不是相互排斥的,并且一个或多个实施例彼此的排列仍然在本公开的范围内。
元件之间(例如,模块、电路元件、半导体层等之间)的空间和功能关系使用各种术语来描述,包括“连接”、“接合”、“耦合”、“邻近”、“相邻”、“之上”、“上方”、“下方”和“设置”。除非明确地描述为“直接”,否则当在上面的公开内容中描述第一和第二元素之间的关系时,该关系可以是直接关系,其中在第一和第二元素之间不存在其他中间元素,但该关系也可以是间接关系,其中在第一和第二元件之间存在(空间或功能上)一个或多个中间元件。如本文中使用的,短语A、B和C中的至少一个应当被解释为使用非排他性逻辑“或”表示逻辑(A“或”B“或”C),并且不应当被解释为表示“A中的至少一个、B中的至少一个、以及C中的至少一个”。
在附图中,箭头所指示的箭头方向通常表示图示所关注的信息流(诸如数据或指令)。例如,当元素A和元素B交换各种信息但从元素A传输到元素B的信息与图示相关时,箭头可以从元素A指向元素B。这个单向箭头并不表示没有其他信息从元素B传输到元素A。此外,对于从元素A发送到元素B的信息,元素B可以向元素A发送对信息的请求或接收对信息的确认。
术语“存储器”是术语“计算机可读介质”或“机器可读介质”的子集。本文中使用的术语“计算机可读介质”或“机器可读介质”不包括通过介质(诸如在载波上)传播的暂态电信号或电磁信号;因此,术语“计算机可读介质”或“机器可读介质”可以被认为是有形的和非暂态的。非暂态有形计算机可读介质或机器可读介质的非限制性示例是非易失性存储器电路(诸如闪存电路、可擦除可编程只读存储器电路或掩模只读存储器电路)、易失性存储器电路(诸如静态随机存取存储器电路或动态随机存取存储器电路)、磁存储介质(诸如模拟或数字磁带或硬盘驱动器)和光存储介质(诸如CD、DVD或蓝光光盘)。
在本申请中,被描述为具有特定属性或执行特定操作的装置元件被具体配置为具有那些特定属性并且执行那些特定操作。具体地,对用于执行动作的元件的描述表示该元件被配置为执行该动作。元件的配置可以包括对元件的编程,诸如通过在与元件相关联的非暂态有形计算机可读介质上编码指令。
本申请中描述的装置和方法可以由通过配置通用计算机以执行计算机程序中包含的一个或多个特定功能而创建的专用计算机部分或全部来实现。上述功能块、流程图组件和其他元件用作软件规范,其可以通过熟练技术人员或程序员的例行工作转换成计算机程序。
计算机程序包括存储在至少一个非暂态有形计算机可读介质上的处理器可执行指令。计算机程序还可以包括或依赖于存储的数据。计算机程序可以包括与专用计算机的硬件交互的基本输入/输出系统(BIOS)、与专用计算机的特定设备交互的设备驱动程序、一个或多个操作系统、用户应用、后台服务、后台应用等。
计算机程序可以包括:(i)要解析的描述性文本,诸如HTML(超文本标记语言)、XML(可扩展标记语言)、或JSON(JavaScript对象表示法),(ii)汇编代码,(iii)由编译器从源代码生成的对象代码,(iv)用于由解释器执行的源代码,(v)用于由即时编译器编译和执行的源代码等。仅作为示例,可以使用来自以下语言的语法来编写源代码,包括C、C++、C#、Objective-C、Swift、Haskell、Go、SQL、R、Lisp、
Figure BDA0002204845060000161
Fortran、Perl、Pascal、Curl、OCaml、/>
Figure BDA0002204845060000162
HTML5(超文本标记语言第5版)、Ada、ASP(动态服务器网页)、PHP(PHP:超文本预处理器)、Scala、Eiffel、Smalltalk、Erlang、Ruby、/>
Figure BDA0002204845060000163
Visual
Figure BDA0002204845060000164
Lua、MATLAB、SIMULINK和/>
Figure BDA0002204845060000165
权利要求中所述的任何元素均不是35U.S.C§112(f)意义上的装置加功能元件,除非使用短语“用于……的装置(for means)”或者在方法权利要求的情况下使用短语“用于……的操作(operation for)”或“用于……的步骤(step for)”明确叙述元素。

Claims (20)

1.一种系统,包括:
处理器,被配置为:
收集关于计算系统内的资源使用的资源使用数据,所述资源使用数据是在没有运行诊断程序的情况下,并且在诊断事件的发生之前周期性地被收集的;
响应于所述诊断事件的所述发生启动所述诊断程序以同时期收集诊断数据;
将所收集的资源使用数据转换为由所述诊断程序使用的格式,并且为所收集的所述资源使用数据加上时间戳,以指示所收集的所述资源使用数据在所述诊断事件的所述发生之前发生;以及
将所收集的所述资源使用数据提供给在所述诊断事件的所述发生之后执行的所述诊断程序,使得所述诊断程序具有来自所述诊断事件的所述发生之前的资源使用数据与响应于所述诊断事件的所述发生而由所述诊断程序收集的所述诊断数据的集成视图,以使得能够确定所述诊断事件的原因。
2.根据权利要求1所述的系统,其中来自所述诊断事件的所述发生之前的所收集的所述资源使用数据和由所述诊断程序在所述诊断事件的所述发生之后实时地收集的所述诊断数据由所述诊断程序处理以提供给分析器,所述分析器分析经处理的所述数据以确定所述诊断事件的所述原因。
3.根据权利要求1所述的系统,其中周期性地收集所述资源使用数据并且不运行所述诊断程序比通过运行所述诊断程序收集所述诊断数据消耗更少的资源。
4.根据权利要求1所述的系统,其中所收集的所述资源使用数据包括关于所述计算系统对处理和存储资源中的一个或多个的使用的数据。
5.根据权利要求1所的系统,其中所述处理器还被配置为将所收集的所述资源使用数据存储在具有预定量的存储器的循环缓冲器中。
6.根据权利要求1所述的系统,其中所述处理器还被配置为使用小于或等于分配给所述计算系统的预定量的资源来收集和存储所述资源使用数据。
7.根据权利要求1所述的系统,其中所述处理器还被配置为:
以压缩形式存储所收集的所述资源使用数据中的至少一些数据,以及
以解压缩形式将所收集的所述资源使用数据提供给所述诊断程序。
8.根据权利要求1所述的系统,其中所收集的所述资源使用数据由分析器使用以生成用于重新配置所述计算系统或用于重新配置所述计算系统的一个或多个资源的推荐。
9.根据权利要求1所述的系统,其中所收集的所述资源使用数据以压缩格式被存储,并且
其中所述处理器还被配置为通过扩展所收集的所述资源使用数据并将所收集的所述资源使用数据填充到由所述诊断程序使用的数据表的对应行中来将所收集的所述资源使用数据转换成由所述诊断程序使用的所述格式以用于所述诊断事件的分析。
10.一种方法,包括:
收集关于计算系统内的资源使用的资源使用数据;
在没有运行诊断程序的情况下,并且在待诊断的事件的发生之前周期性地收集所述资源使用数据;
响应于所述事件的所述发生启动所述诊断程序以同时期收集诊断数据;
将所收集的资源使用数据转换为由所述诊断程序使用的格式,并且为所收集的所述资源使用数据加上时间戳,以指示所收集的所述资源使用数据在所述事件的所述发生之前发生;以及
将所收集的所述资源使用数据提供给在所述事件的所述发生之后执行的所述诊断程序,使得所述诊断程序具有来自所述事件的所述发生之前的资源使用数据与响应于所述事件的所述发生而由所述诊断程序收集的所述诊断数据的集成视图,以使得能够确定所述事件的原因。
11.根据权利要求10所述的方法,还包括与时间戳一起将所收集的所述资源使用数据提供给所述诊断程序,其中所述时间戳指示所述数据被收集的时间。
12.根据权利要求10所述的方法,其中来自所述事件的所述发生之前的所收集的所述资源使用数据和由所述诊断程序在所述事件的所述发生之后实时地独立地收集的诊断数据由所述诊断程序处理,以使得能够确定所述事件的所述原因。
13.根据权利要求10所述的方法,
其中周期性地收集所述资源使用数据并且不运行所述诊断程序比通过运行所述诊断程序收集诊断数据消耗更少的资源。
14.根据权利要求10所述的方法,还包括收集包括关于以下的数据的所述资源使用数据:所述计算系统对处理和存储资源中的一个或多个的使用。
15.根据权利要求10所述的方法,还包括将所收集的所述资源使用数据存储在具有预定量的存储器的循环缓冲器中。
16.根据权利要求10所述的方法,还包括使用小于或等于分配给所述计算系统的预定量的资源来收集和存储所述资源使用数据。
17.根据权利要求10所述的方法,还包括:
以压缩形式存储所收集的所述资源使用数据中的至少一些数据;以及
以解压缩形式将所收集的所述资源使用数据提供给所述诊断程序。
18.根据权利要求10所述的方法,还包括基于所收集的所述资源使用数据提供用于重新配置所述计算系统或用于重新配置所述计算系统的一个或多个资源的推荐。
19.一种系统,包括:
处理器,被配置为:
收集关于计算系统对处理和存储资源中的一个或多个的使用的资源使用数据,所述资源使用数据是在没有运行诊断程序的情况下,并且在要由所述诊断程序诊断的事件的发生之前在循环缓冲器中周期性地被收集的;
响应于所述事件的所述发生启动所述诊断程序以同时期收集诊断数据;
将所收集的资源使用数据转换为由所述诊断程序使用的格式,并且为所收集的所述资源使用数据加上时间戳,以指示所收集的所述资源使用数据在所述事件的所述发生之前发生;以及
当所述诊断程序在所述事件的所述发生之后被执行时,与所述时间戳一起将所收集的所述资源使用数据提供给所述诊断程序,使得所述诊断程序具有来自所述事件的所述发生之前的所述资源使用数据和由所述诊断程序在所述事件的所述发生之后实时地独立地收集的所述诊断数据的集成视图,以使得能够确定所述事件的原因,其中所述时间戳指示所述数据被收集的时间。
20.根据权利要求19所述的系统,其中所述处理器还被配置为使用小于或等于分配给所述计算系统的预定量的资源来收集和存储所述资源使用数据,并且其中周期性地收集所述资源使用数据并且不运行所述诊断程序比通过运行所述诊断程序收集诊断数据消耗更少的资源。
CN201880018963.0A 2017-03-23 2018-03-13 度量和日志的预期收集 Active CN110431530B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/467,355 2017-03-23
US15/467,355 US11126465B2 (en) 2017-03-23 2017-03-23 Anticipatory collection of metrics and logs
PCT/US2018/022125 WO2018175141A1 (en) 2017-03-23 2018-03-13 Anticipatory collection of metrics and logs

Publications (2)

Publication Number Publication Date
CN110431530A CN110431530A (zh) 2019-11-08
CN110431530B true CN110431530B (zh) 2023-06-27

Family

ID=61873924

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880018963.0A Active CN110431530B (zh) 2017-03-23 2018-03-13 度量和日志的预期收集

Country Status (4)

Country Link
US (1) US11126465B2 (zh)
EP (1) EP3602301B1 (zh)
CN (1) CN110431530B (zh)
WO (1) WO2018175141A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10481966B2 (en) * 2017-05-24 2019-11-19 Vmware, Inc. Methods and systems to prioritize alerts with quantification of alert impacts
US10785102B2 (en) * 2017-09-24 2020-09-22 Vmware, Inc. Modifying distributed application based on cloud diagnostic data
JP2020071570A (ja) * 2018-10-30 2020-05-07 ファナック株式会社 データ作成装置、デバッグ装置、データ作成方法及びデータ作成プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8775125B1 (en) * 2009-09-10 2014-07-08 Jpmorgan Chase Bank, N.A. System and method for improved processing performance
CN105934746A (zh) * 2013-09-13 2016-09-07 阿苏兰特公司 用于收集、追踪和存储用于计算设备的系统性能和事件数据的系统和方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002082275A1 (en) * 2001-04-09 2002-10-17 Monitoring Technology Corporation Data recording and playback system and method
US7020802B2 (en) * 2002-10-17 2006-03-28 Sun Microsystems, Inc. Method and apparatus for monitoring and recording computer system performance parameters
US7457872B2 (en) * 2003-10-15 2008-11-25 Microsoft Corporation On-line service/application monitoring and reporting system
US7379849B2 (en) 2004-05-21 2008-05-27 Bea Systems, Inc. Diagnostic image
US7483810B2 (en) * 2004-06-29 2009-01-27 Honeywell International Inc. Real time event logging system
US20060293811A1 (en) * 2005-06-24 2006-12-28 Keith Andreasen Automotive data logger
US9086917B1 (en) 2006-10-17 2015-07-21 Manageiq, Inc. Registering and accessing virtual systems for use in a managed system
US8141051B2 (en) * 2006-12-29 2012-03-20 Intel Corporation Methods and apparatus to collect runtime trace data associated with application performance
US7882399B2 (en) * 2007-12-13 2011-02-01 International Business Machines Corporation Intelligent job functionality
US8407528B2 (en) 2009-06-30 2013-03-26 Texas Instruments Incorporated Circuits, systems, apparatus and processes for monitoring activity in multi-processing systems
CA2712002C (en) * 2009-09-09 2016-08-30 Aastra Technologies Limited Diagnostics methods for a communications device
US8688620B2 (en) 2011-09-23 2014-04-01 Hewlett-Packard Development Company, L.P. Anomaly detection in data centers
US20140059388A1 (en) * 2012-08-23 2014-02-27 Rawllin International Inc. Diagnostic and performance data collection
US9176847B2 (en) * 2013-05-22 2015-11-03 International Business Machines Corporation Managing diagnostic information
US9225621B2 (en) * 2013-06-25 2015-12-29 Netflix, Inc. Progressive deployment and termination of canary instances for software analysis
US10467036B2 (en) 2014-09-30 2019-11-05 International Business Machines Corporation Dynamic metering adjustment for service management of computing platform
US9612899B2 (en) * 2015-03-04 2017-04-04 International Business Machines Corporation Collaborative collection of diagnostics data of software programs
US10042697B2 (en) 2015-05-28 2018-08-07 Oracle International Corporation Automatic anomaly detection and resolution system
US10176036B2 (en) * 2015-10-29 2019-01-08 Commvault Systems, Inc. Monitoring, diagnosing, and repairing a management database in a data storage management system
US10430263B2 (en) * 2016-02-01 2019-10-01 Electro Industries/Gauge Tech Devices, systems and methods for validating and upgrading firmware in intelligent electronic devices
US9929922B2 (en) * 2016-06-13 2018-03-27 Oracle International Corporation Sampling-densification technique to facilitate high-sampling-density signatures for telemetry data in enterprise computing systems
JP6547793B2 (ja) * 2016-08-12 2019-07-24 株式会社デンソー タイヤマウントセンサ、ダイアグ履歴記憶装置およびダイアグ報知装置
US10540612B2 (en) * 2016-08-26 2020-01-21 Oracle International Corporation Technique for validating a prognostic-surveillance mechanism in an enterprise computer system
US10331507B2 (en) * 2016-12-21 2019-06-25 Mastercard International Incorporated Systems and methods for real time computer fault evaluation
JP6869755B2 (ja) * 2017-03-07 2021-05-12 オークマ株式会社 状態診断装置
US10410115B2 (en) * 2017-04-28 2019-09-10 Intel Corporation Autonomous machines through cloud, error corrections, and predictions
US10505805B1 (en) * 2017-06-26 2019-12-10 Amazon Technologies, Inc. Computing resources checkpoint restoration
US10474551B2 (en) * 2017-06-30 2019-11-12 Wipro Limited Method and system for recovering data from storage systems
TWI647564B (zh) * 2017-11-07 2019-01-11 先智雲端數據股份有限公司 用於診斷資料中心儲存設備之剩餘壽命的方法與系統
JP7074542B2 (ja) * 2018-04-06 2022-05-24 ファナック株式会社 ネットワークを利用した診断サービスシステム及び診断方法
US11121919B2 (en) * 2018-04-13 2021-09-14 Vmware, Inc. Methods and apparatus to determine a duration estimate and risk estimate of performing a maintenance operation in a networked computing environment
CN108923952B (zh) * 2018-05-31 2021-11-30 北京百度网讯科技有限公司 基于服务监控指标的故障诊断方法、设备及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8775125B1 (en) * 2009-09-10 2014-07-08 Jpmorgan Chase Bank, N.A. System and method for improved processing performance
CN105934746A (zh) * 2013-09-13 2016-09-07 阿苏兰特公司 用于收集、追踪和存储用于计算设备的系统性能和事件数据的系统和方法

Also Published As

Publication number Publication date
US11126465B2 (en) 2021-09-21
CN110431530A (zh) 2019-11-08
WO2018175141A1 (en) 2018-09-27
EP3602301B1 (en) 2021-08-11
US20180276043A1 (en) 2018-09-27
EP3602301A1 (en) 2020-02-05

Similar Documents

Publication Publication Date Title
US11550630B2 (en) Monitoring and automatic scaling of data volumes
CN111625201B (zh) 用于存储客户端文件系统的存储卷的动态缩放
Yang et al. End-to-end I/O monitoring on leading supercomputers
US9483407B2 (en) Speculative reads
Misra et al. Managing tail latency in datacenter-scale file systems under production constraints
US11514317B2 (en) Machine learning based resource availability prediction
Heger Hadoop performance tuning-a pragmatic & iterative approach
JP2020024733A (ja) データボリュームの動的な構成
US9811443B2 (en) Dynamic trace level control
US20140351394A1 (en) Reporting performance capabilities of a computer resource service
CN110431530B (zh) 度量和日志的预期收集
US10657099B1 (en) Systems and methods for transformation and analysis of logfile data
Cejka et al. Java embedded storage for time series and meta data in Smart Grids
JP2021149550A (ja) ストレージシステムおよびストレージシステムの分析方法
JP7325480B2 (ja) 自動取引装置及びそれを含んだサイネージシステム
US10432490B2 (en) Monitoring single content page application transitions
US11436123B2 (en) Application execution path tracing for inline performance analysis
Yan et al. Using memory in the right way to accelerate Big Data processing
US8924789B2 (en) System and method for providing virtual machine diagnostic information using a flight recorder functionality
US10637915B1 (en) Storage services configured for storage-oriented applications
Perennou et al. Workload characterization for a non-hyperscale public cloud platform
US11275529B2 (en) Maintenance management on backup storage systems
Brandt et al. Large-scale persistent numerical data source monitoring system experiences
Nguyen et al. Technical report: Optimistic execution in key-value store
US20240152453A1 (en) Mitigation of garbage collection overhead

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
GR01 Patent grant
GR01 Patent grant