CN110245034B - 根据使用数据的结构化日志模式的服务度量分析 - Google Patents
根据使用数据的结构化日志模式的服务度量分析 Download PDFInfo
- Publication number
- CN110245034B CN110245034B CN201910490791.3A CN201910490791A CN110245034B CN 110245034 B CN110245034 B CN 110245034B CN 201910490791 A CN201910490791 A CN 201910490791A CN 110245034 B CN110245034 B CN 110245034B
- Authority
- CN
- China
- Prior art keywords
- request
- error
- service
- detected
- bucket
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/008—Reliability or availability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0706—Error 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/0709—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0751—Error or fault detection not based on redundancy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0766—Error or fault reporting or storing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0766—Error or fault reporting or storing
- G06F11/0778—Dumping, i.e. gathering error/state information after a fault for later diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0766—Error or fault reporting or storing
- G06F11/0787—Storage of error reports, e.g. persistent data storage, storage using memory protection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3409—Recording 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
- G06F11/3419—Recording 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 by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3466—Performance evaluation by tracing or monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0766—Error or fault reporting or storing
- G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/875—Monitoring of systems including the internet
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Environmental & Geological Engineering (AREA)
- Data Mining & Analysis (AREA)
- Debugging And Monitoring (AREA)
Abstract
技术通常被描述为提供应用日志模式以追踪使用数据以便对服务的性能和可靠性进行分析的被动监测系统。该日志模式可以被配置为当在协同服务的独立的子系统中接收和处理每个请求时,对用户请求进行追踪。可以在服务的数据存储处创建日志条目,其中,日志条目包括子系统名称、由子系统执行的用于满足请求的操作、操作的开始时间和结束时间。日志模式还可以检测满足请求的错误,并且将所检测到的错误分类到桶中,其中每个桶指示一个失败场景。可以基于对桶的分析来计算错误率从而计算服务的可靠性。可以生成报告以启用对系统的性能和可靠性的持续监测。
Description
本申请是申请日为2015年2月23日、申请号为201580010711.X、发明名称为“根据使用数据的结构化日志模式的服务度量分析”的中国专利申请的分案申请。
背景技术
在协同的环境中,用户可以通过网络与协同服务进行交互。协同服务可以是通过网络同时向许多用户提供众多应用和功能的服务。协同服务可以监测来自多个用户的业务模式和数据请求,以便持续地监测服务的性能和可靠性。追踪在协同服务上所接收到并由服务的多个子系统所处理的大量数据请求可能产生一组复杂的数据,并且对这些数据进行聚合与分类来提取关于服务的有价值的度量以用于持续评估系统的性能和可靠性是困难的。
发明内容
提供了该发明内容以用简化的形式介绍在下文的具体实施方式部分中所进一步描述的概念的选择。该发明内容不旨在排他地标识所要求保护的主题的关键特征或本质特征,也不旨在作为帮助用来确定所要求保护的主题的范围。
实施例涉及应用日志模式以在协同服务处追踪使用数据的监测系统。日志模式可以被配置为当在协同服务的独立的子系统中接收和处理请求时,对用户请求进行追踪。可以在服务的数据存储处创建日志条目,其中,所述日志条目可以包括对请求进行处理的子系统、由子系统执行的以满足请求的操作、操作开始时间和结束的时间、请求的场所信息、以及在满足请求时所检测到的错误。日志模式可以在服务的子系统处启用错误检测以提供对服务的性能和可靠性的持续监测。
通过阅读以下的详细描述并回顾相关联的附图,这些和其他特征和优点将变得明显。应当理解的是,前述的一般描述以及下文的详细描述两者都是解释性的而不限制所要求保护的方面。
附图说明
图1示出了在其中用户可以通过网络与协同服务进行交互的基于云的示例环境;
图2示出了包括其中可以实现用于追踪使用数据的日志模式的多个子系统的服务的示例架构;
图3示出了在服务处记录使用数据并生成错误报告的概念图;
图4是其中可以实现根据实施例的系统的网络化环境;
图5是其中可以实现实施例的示例计算操作环境的框图;并且
图6示出了根据实施例的提供被动监测系统的过程的逻辑流程图,所述被动监测系统应用日志模式来追踪使用数据以便分析服务的性能和可靠性。
具体实施方式
如在上文中所简要描述的,监测系统被描述为记录使用数据并且提供对服务(例如,协同服务)的性能和可靠性的分析。该监测系统可以将日志模式应用至由一个或多个协同服务的子系统所接收和处理的请求以满足请求。可以在服务的数据存储处创建日志条目,其中,日志条目可以包括关于每个单独的请求的信息。每个日志条目可以包括对请求进行处理的子系统名称、由子系统执行的用于满足请求的操作、操作的开始时间和结束时间、用户场所信息、以及在处理请求时所检测到的错误。日志模式还可以启用对满足请求的错误的持续检测。可以将所检测到的错误分类到错误桶中,其中每个桶指示一个失败场景。可以基于对桶的分析来计算错误率从而计算服务的可靠性。可以生成报告以启用对系统的性能和可靠性的持续监测。
在以下的具体实施方式中,对形成了其一部分并且在其中作为说明而示出了具体的实施例或示例的附图进行了参考。可以组合这些方面、可以利用其它方面、并且可以做出结构改变而不脱离本公开的精神或范围。因此,以下的具体实施方式将不被看作是限制性意义,并且本发明的范围是由所附权利要求及其等同物所限定的。
尽管将在结合在个人计算机的操作系统上运行的应用程序而执行的程序模块的一般性的上下文中描述一些实施例,但是本领域技术人员将理解的是,也可以结合其它程序模块来实现这些方面。
通常而言,程序模块包括例程、程序、组件、数据结构、以及执行特定的任务或实现特定的抽象数据类型的其他类型的结构。此外,本领域技术人员将理解的是,可以利用包括手持设备、多处理器系统、基于微处理器的或可编程的消费性电子产品、微型计算机、大型计算机、以及类似的计算设备在内的其它计算机系统配置来实践实施例。还可以在其中任务是由通过通信网络链接的远程处理设备来执行的分布式计算环境中实现实施例。在分布式计算环境中,程序模块既可以位于本地的存储器存储设备中,也可以位于远程的存储器存储设备中。
可以将实施例实现为计算机实现的过程(方法)、计算系统、或者诸如计算机程序产品或计算机可读介质之类的制品。计算机程序产品可以是可以由计算机系统读取的计算机存储介质,并且对包括指令的计算机程序进行编码以使得计算机或计算系统执行示例过程。计算机可读存储介质是计算机可读存储器设备。计算机可读存储介质可以例如经由易失性计算机存储器、非易失性存储器、硬盘驱动器、闪存驱动器、软盘、或者光盘、以及类似的介质中的一个或多个而被实现。
在该说明书通篇中,术语“平台”可以是用于对系统进行监测以记录使用数据并且提供对服务的性能和可靠性的分析的软件组件和硬件组件的组合。平台的示例包括但不限于:在多个服务器上执行的托管服务、在单个计算设备上执行的应用、以及类似的系统。术语“服务器”通常是指通常在网络化环境中执行一个或多个软件程序的计算设备。然而,服务器还可以被实现为在被视为是网络上的服务器的一个或多个计算设备上执行的虚拟服务器(软件程序)。在下文中提供了关于这些技术和示例操作的更多的细节。
图1示出了根据一些示例实施例的在其中用户可以通过网络与协同服务进行交互的基于云的示例环境。
如在图100中所示,用户(102、104和106)可以通过基于云的网络110来访问诸如协同服务112之类的服务或应用。协同服务112可以在远程服务器处托管,并且可以通过基于云的网络110而通过用户的客户端设备来访问。协同服务112的本地版本也可以本地地托管在用户客户端设备处,并且可以通过基于云的网络110来取回与本地协同服务112相关联的数据。一些示例客户端设备可以包括膝上型计算机136、台式计算机132、智能电话134、车载电话、移动电话、平板计算机、和/或家庭自动化设备。尽管将网络描述为基于云的网络,但实施例不限于基于云的网络,并且可以以各种本地的和托管的网络来实现。
示例协同服务112可以是使得多个用户能够通过网络(例如,基于云的网络110)来访问与服务相关联的多个应用的服务。与服务相关联的应用可以提供多个工具和功能,例如,文档和文件管理、协同、社交网络、外联网、网站、企业管理、文档共享、电子邮件、文本消息传输、互联网协议语音(VOIP)、会议技术、即时通讯、电话通话、联系人管理、日历管理、以及其他类似的功能等。协同服务112还可以提供系统集成、过程集成、以及工作流程自动化功能。可以从协同服务112中接收与协同服务112相关联的不同类型的数据,例如软件数据、应用数据、通讯数据(例如电子邮件消息、文本消息、即时消息、语音信箱消息)以及其他类似数据,并且在用户客户端设备处进行交互。
可以将与协同服务112相关联的数据托管在与协同服务112相关联的数据存储器116处。数据存储器116可以按照与协同服务112相关联的应用所请求的来取回并存储数据,所述应用包括跨网络(例如,基于云的网络110)而在个人客户端设备上本地执行的应用。在示例实施例中,当用户从用户客户端设备通过网络与协同服务112进行交互时,可以将请求发送至协同服务112以取回数据以便响应并满足该请求。示例请求可以包括开始应用、打开文档、发起会话、与文档或应用交互、取回与应用相关联的数据、以及其他类似的请求。协同服务112可以通过网络从访问协同服务112的多个用户处持续地接收多个请求。追踪多个数据请求可以启用对协同服务112的性能的详细监测,并且可以启用对协同服务112的各种服务度量和关键性能指标(例如,用户业务、可靠性、和错误率)的计算。根据实施例的系统可以提供被动监测系统,以当协同服务112的子系统接收并处理请求时根据日志模式来记录使用数据。基于所记录的使用数据,可以生成性能和可靠性报告以启用待持续监测、分析、和提升的协同服务。
图2示出了根据一些实施例的包括其中可以实现用于追踪使用数据的日志模式的多个子系统的服务的示例架构。
如在图200中所示,协同服务210可以包括被配置为通过网络从客户端设备202接收请求218并且执行操作来处理请求218的多个子系统或层。示例子系统可以包括前端204、中间层、以及后端数据存储222,其中前端204可以最初通过网络从客户端设备202接收请求,,中间层可以包括被配置为满足特定的数据请求218的多个子系统(例如,206、212),并且后端数据存储222可以存储与协同服务210的每个子系统相关联的数据。不同的子系统可以在与协同服务210相关联的不同的虚拟机上执行,或者在同一个虚拟机上执行。额外地,协同服务210还可以执行一组操作来满足请求,其中这一组操作可以不局限于特定的子系统。
根据实施例,被动监测系统可以被配置为在处理请求并且将响应返回至用户之前,当请求218跨协同服务的不同的子系统以及虚拟机而顺序或并行传递时,追踪请求218。被动监测系统还可以被配置为在后端数据存储器222处应用日志模式来记录所追踪的使用数据。日志模式可以被配置当在每个请求在协同服务210的每个单独子系统上被接收并处理时,实时地追踪使用数据以便追踪请求的处理路径。日志模式可以在子系统级追踪使用数据,并且还可以追踪并记录每个子系统内的用于处理请求的子操作的使用数据。在示例场景中,每个请求都可以在其进入和退出协同服务210的每个子系统(例如,206、212)时被追踪,并且日志模式可以基于后端数据存储222中的条目而针对由协同服务210接收并处理的每个请求来提供子系统和操作。后端数据存储222处的每个条目可以包括子系统和操作的名称、从每个子系统进入和退出的时间、由子系统执行以满足请求的操作的开始时间和结束时间、初始请求的用户场所信息、以及与每个子系统处的对请求的处理相关联的错误信息。后端处的数据存储可以包括被配置为从作为分布式系统的一部分的多个不同的服务接收使用信息的数据存储接口。与协同服务210相关联的数据存储还可以是作为210的一部分的、与协同服务分离地托管的外部数据存储。外部数据存储可以从作为分布式系统的一部分的多个不同的服务中接收数据。
在示例场景中,当接收到请求时,日志模式可以对在其中接收到请求并且在其中发起操作的子系统进行标识和命名。子系统的名称可以是对请求进行处理的协同服务210的组件。额外地,日志模式可以定义由子系统执行以处理请求的特定的操作。还可以记录在子系统处的操作的开始时间和结束时间。可以将结束时间与开始时间一起使用以确定子系统对请求提供响应的响应时间或处理时间。保存用户请求的记录可以使得协同服务210能够持续地监测服务性能、业务,并且追踪错误以确定服务可靠性。基于看到最少和最多使用的用户业务子系统以及关于与服务的用户交互的性质(例如,在各种场景下由用户所执行的操作的模式)的观察,用户请求的记录还可以使得能够观察服务的热门特征。
在根据实施例的系统中,被动监测系统还可以在子系统处理请求218时启用错误检测和错误追踪以启用对服务可靠性的确定。当在子系统中的一个子系统处检测到处理请求的错误时,日志模式可以利用在后端数据存储222处的日志条目来记录错误。日志条目可以包括错误描述,所述错误描述可以包括对所发生的处理错误类型的详细描述以及其中发生错误的子系统的名称。错误描述可以包括内部错误代码,所述内部错误代码可以是可以由协同服务210所识别的针对错误的本地代码标识符。可以将内部错误代码映射至错误描述以提供协同服务210的用户能够识别和理解的对用户友好的错误描述。可以将面向用户的错误信息本地化,以使得对于同一个内部错误,可以生成基于用户定位的不同的错误信息。针对错误的日志条目还可以包括错误类型,所述错误类型可以包括用于对针对在子系统处的请求和相关联的操作所检测到的错误类型进行分类的与场所无关的字符串。
图3示出了根据一些实施例的在服务处记录使用数据并生成错误报告的概念图。
如前所述,被动监测系统可以应用日志模式来在协同服务310的子系统处追踪使用数据,以便提供关于协同服务310的性能和可靠性的详细信息。如在图300中所示,可以在协同服务310处接收一个或多个请求304,并且可以在协同服务310的一个或多个子系统(例如302、308)处处理一个或多个请求304。可以在协同服务310的数据存储器处记录特定于操作和子系统的使用数据320,以创建与协同服务相关联的使用数据的详细记录。例如,每次在子系统处接收并处理请求时,可以记录对请求进行处理的子系统,并且还可以报告所执行以处理请求的操作。可以在数据存储处记录包括与请求相关联的具体的子系统和操作的日志条目。所述日志条目可以包括与请求相关的额外的数据,所述数据包括请求开始和结束的时间、以及用户场所信息。用户场所信息和其他用户可识别的信息可以是匿名的,以保护个人用户隐私。被动监测系统还可以使得服务的特定的子系统和/或操作能够被监测,以便确定协同服务的特定的子系统的性能和可靠性以及协同服务整体的性能和可靠性。
为了提供对协同服务的性能和可靠性的分析,可以实现错误检测和错误追踪。当在协同服务310的子系统(例如302、308)处接收到请求304时,被动监测系统可以检测该请求是否被满足。如果该请求被满足,则将该请求记录为成功。如果该请求没有被满足,则将该请求记录为所检测到的错误。可以利用所记录的错误来生成针对协同服务310的性能和可靠性的报告314。
在根据实施例的系统中,为了生成错误检测记录以启用服务可靠性分析,系统可以监测在协同服务310的一个或多个子系统(302、308)处所接收到的每个请求,并且一旦在对请求进行处理中检测到错误,就可以记录该错误。可以将所检测到的每个错误分类到关于错误类型的桶322、或种类中,其中,每个桶322都指示不同的失败场景和成功场景。例如,桶可以指示特定的错误类型或者可以指示特定的场景,例如需要进一步的用户操作以便完成操作的场景。额外地,也可以将其他请求类型分类到与特定的请求类型相关联的桶中。在示例场景中,当首次检测到错误时,可以将错误分类到初始的未分类的桶322中,直到确定了错误类型为止。在确定了错误类型之后,可以根据所述错误类型将错误分类到有标签的桶322中。随后,可以基于错误类型将所检测到的错误分类到预先存在的桶中。如果新检测到的错误不属于预先存在的错误桶,则可以创建新的桶。可以基于新检测到的错误场景而持续增加新的桶322。可以创建额外的错误桶以在错误是由于操作不被协同服务支持的事实而产生的情况下,对所检测到的错误进行分类。成功桶可以存储被记录为成功的请求。可以基于对桶322的分析来计算错误率从而计算协同服务310的可靠性。可以针对每个桶来计算绝对数和百分比,并且可以将整体的服务可靠性测量为“成功”桶和“错误”桶的百分比的总和。
在根据实施例的系统中,可以基于所记录的错误数据来生成报告314。可以针对任何时段而生成报告314,例如,每日、每周、每月、每年、或其他可定制的时段。额外地,可以基于默认参数来提供报告314,也可以基于管理员或用户定制的参数来生成报告314。在一些实施例中,所生成的报告314可以被配置为提供显示与服务的子系统和操作相关联的所检测到的错误的统计的原始数据。在其他实施例中,报告314可以基于预先定义的设置和可定制的设置而提供对数据的分析。例如,报告314可以提供对特定的操作类型或子系统的性能分析、或其他指定的参数。可以通过解释可以影响请求是否有类似的预期的性能的因素(例如,请求的成功/失败、预期的待由请求来处理的数据的总量、以及其他类似的参数)来确定性能分析。此外,所生成的报告314可以提供服务性能的可审核性。例如,报告可以提供关于错误率和服务可靠性的实时的真实用户数据,并且协同服务310可以向客户端提供报告以展示实际错误率并保证可靠性。被动监测系统还可以被配置为对真实用户数据和合成的数据(例如,机器人数据)进行区分,并且基于真实用户数据而提供报告,从而提供基于真实用户数据的对协同服务的性能及可靠性的准确分析。也可以基于所记录的数据和报告来评估特定的子系统、特征、或一系列操作的可靠性。额外地,可以对报告进行过滤以启用对协同服务310的特定的子系统和操作的分析。
在额外的实施例中,被动监测系统可以被配置为基于所记录的使用和错误数据来生成警报。如之前所讨论的,被动监测系统可以是可定制的,以使得管理员可以对来自待监测的服务的具体的子系统的操作进行标定。在进一步的实施例中,可以针对失败的操作和服务故障来监测经标定的操作和子系统中的每一个,以启用对服务性能、可用性、和可靠性的持续监测。被动监测系统可以被配置为如果错误率(或用户请求失败)超过预先定义的阈值或期望,则提供自动警报。错误率阈值可以是可配置的值。被动监测系统可以被配置为识别重复的错误并且针对新的或之前从未见过的错误而发出警报,使得不会针对同一错误而多次提供同一警报。在另一个实施例中,当检测到特定的错误时,可以自动地提供故障诊断信息以帮助用户和管理员解决特定的错误。也可以提供自动愈合脚本以解决在协同服务310处所检测到的错误,而不导致将由协同服务310的用户所感受到的性能的降低。
在额外的实施例中,可以利用经记录的所检测到的错误来追踪并修复服务故障。可以通过检查未分类错误桶来识别所检测到的常见错误以及错误模式从而识别潜在的故障。服务的故障追踪组件可以被配置为针对故障而持续地检查错误桶,并且自动修复所检测到的故障。故障追踪组件还可以被配置为标记未被修复或无法被修复的故障。例如,在一些情况下,系统可以出于多种不同的原因而选择不修复故障,或者在其它场景中,故障可以无法被修复。故障追踪组件可以对无法被修复的错误和系统选择不进行修复的错误进行区分和指示。故障追踪组件还可以指示做出不进行修复的决策在可靠性和/或期望的增益的损失方面在协同服务310未来的可靠性和/或性能中的影响。故障追踪组件可以进一步被配置为提供警报来指示故障的存在。可以创建针对所检测到的故障的单独的桶,该桶可以使能够创建针对故障的可靠性报告。该可靠性报告可以指示百分之多少的故障已被修复并作为下次服务更新的一部分来部署、以及百分之多少的故障被标记为“无法被修复”。可以在可扩展服务部署场景中利用对故障的检测以在最终部署之前对服务进行改进。例如,可以将服务部署至第一组用户,并且可以针对错误和故障来对服务进行监测。随后,可以将服务部署至更大的组,并且针对错误和故障来进行监测,直至最终部署至指定的组或公共部署为止。在部署的每一层上,可以监测并收集包括错误数据和故障数据的使用数据,以创建对服务的性能和可靠性的综合分析,并且改进最终部署的性能和可靠性。
在进一步实施例中,可以根据用户场所来对使用数据进行本地化,并且使用数据可以包括可以基于用户场所而被本地化成不同的语言的数据字符串。可以独立于用户场所来对错误数据进行分类,以便一起分类所有使用数据,而无须由日志模式进行专业化、本地化的处理来对错误数据进行分类。也可以将具体的用户信息匿名化来保护用户隐私。
被动监测系统可以根据服务需要是可扩展和可定制的。协同服务310的用户和管理员可以能够访问在数据存储处所记录的数据以便对协同服务310的性能进行分析。可以定义并追踪在协同服务的每个子系统处的额外的数据类型,以使得日志模式能够根据协同服务310的需要是可扩展和可定制的。管理员还可以能够根据服务需要来定义从哪些子系统收集数据以及数据收集的频率。
在图1-3中所描述的示例应用、设备和模块仅仅是出于说明的目的而提供的。实施例不限于在示例图中所示出的配置和内容,并且可以使用应用了在本文中所描述的原理的其它引擎、客户端应用、服务提供商、和模块来实现。
图4是其中可以实现实施例的示例网络化环境。除了本地安装的应用,还可以提供被动监测系统来追踪子系统间的使用数据,并且确定服务的性能和可靠性。还可以结合可以经由在一个或多个服务器406或者独立的服务器414上执行的软件而实现的托管的应用和服务来应用被动监测系统。托管的服务或应用可以通过网络410与独立的计算设备(例如,手持式计算机、台式计算机401、膝上型计算机402、智能电话403、平板计算机(或平板电脑)(“客户端设备”))上的客户端应用进行通信,并且控制呈现给用户的用户界面。
客户端设备401-403可以用于访问由托管的服务或应用所提供的功能。服务器406或服务器414中的一个或多个可以用于提供上文中所讨论的多种服务。可以将相关的数据存储在可以由服务器406中的任何一个或者由数据库服务器408来管理的一个或多个数据存储(例如,数据存储409)中。
网络410可以包括服务器、客户端、互联网服务提供商、以及通信介质的任何拓扑结构。根据实施例的系统可以具有静态的拓扑结构或动态的拓扑结构。网络410可以包括诸如企业网络之类的安全网络,诸如无线开放网络之类的非安全网络,或者互联网。网络410还可以协调通过诸如PSTN或蜂窝网络之类的其它网络的通信。网络410在本文中所描述的节点之间提供通信。作为示例而非限制,网络410可以包括无线介质,例如声学、RF、红外、和其它无线介质。
可以应用计算设备、应用、数据源、以及数据分布系统的许多其它配置来实现应用日志模式来对服务或应用的子系统间的使用数据进行追踪的被动监测系统。此外,在图4中所讨论的网络化环境仅仅出于说明的目的。实施例不限于示例应用、模块、或过程。
图5和相关联的讨论旨在提供关于其中可以实现实施例的合适的计算环境的简短、概括的描述。参考图5,示出了根据实施例的应用的示例计算操作环境(例如,计算设备500)的框图。在基本配置中,计算设备500可以是在本文中所讨论的示例设备中的任何一个,并且可以包括至少一个处理单元502和系统存储器504。计算设备500还可以包括在执行程序的过程中协作的多个处理单元。取决于计算设备的确切的配置和类型,系统存储器504可以是易失性的(例如,RAM)、非易失性的(例如,ROM、闪速存储器等)或者两者的一些组合。系统存储器504通常包括适用于控制平台的操作的操作系统506,例如,来自Washington州Redmond市的MICROSOFT公司的操作系统、WINDOWS/>操作系统、或者WINDOWS />操作系统。系统存储器504还可以包括一个或多个软件应用,例如,使用数据记录应用522和错误追踪模块524。
错误追踪模块524可以结合操作系统506或使用数据记录应用522来操作以当在协同服务上接收到请求并由协同服务的一个或多个子系统处理请求时对请求进行监测,并且检测在对请求进行处理的过程中的失败。结合使用数据记录应用522,错误追踪模块524可以检测在请求处理的过程中何时发生错误,并且可以创建所检测到的错误的记录。可以将所检测到的错误分类到桶中以创建服务错误的综合记录。在图5中由虚线508内的那些组件示出了该基本配置。
计算设备500可以具有额外的特征或功能。例如,计算设备500还可以包括额外的数据存储设备(可移动的和/或不可移动的),例如,磁盘、光盘、或磁带。在图5中由可移动存储设备509和不可移动存储设备510示出了这样额外的存储设备。计算机可读存储介质可以包括以用于存储信息(例如,计算机可读指令、数据结构、程序模块、或其它数据)的任何方法或技术实现的易失性的和非易失性的、可移动的和不可移动的介质。系统存储器504、可移动存储设备509、和不可移动存储设备510全部都是计算机可读存储介质的示例。计算机可读存储介质包括但不限于RAM、ROM、EEPROM、闪速存储器或其它存储器技术、CD-ROM、数字通用盘(DVD)、或其它光存储、盒式磁带、磁带、磁盘存储设备或其它磁存储设备、或者可以用于存储期望的信息并且可以由计算设备500访问的任何其它介质。任何这样的计算机可读存储介质都可以是计算设备500的一部分。计算设备500还可以具有输入设备512,例如,键盘、鼠标、笔、语音输入设备、触摸输入设备、用于检测手势的光学捕获设备、以及类似的输入设备。也可以包括诸如显示器、扬声器、打印机、和其它类型是输出设备之类的输出设备514。这些设备是本领域中公知的并且不需要在这里详细讨论。
计算设备500还可以包含通信连接516,其允许设备例如通过分布式计算环境中的有线或无线网络、卫星链路、蜂窝链路、以及类似的机制来与其它设备518进行通信。其它设备518可以包括执行通信应用的计算机设备、其它目录或策略服务器、以及类似的设备。通信连接516是通信介质的一个示例。通信介质可以在其中包括计算机可读指令、数据结构、程序模块、或者经调制的数据信号(例如,载波或其它传输机制,并且包括任何信息传递介质)中的其它数据。术语“经调制的数据信号”是指这样的信号:具有使该信号的特性集中的一个或多个以如将信息编码在信号中的方式来设置或改变的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声学、RF、红外、和其它无线介质之类的无线介质。
示例实施例还包括用于提供应用日志模式来追踪使用数据以便对服务的性能和可靠性进行分析的被动监测系统的方法。这些方法可以以包括在该文档中所描述的结构的多种方式来实现。一种这样的方式是通过在该文档中所描述的类型的设备的机器操作。
另一种可选的方式是针对结合执行一些操作的一个或多个人类操作者而将被执行的方法的独立操作中的一个或多个。这些人类操作者不需要彼此处于同一位置,但每个操作者可以与执行程序的一部分的机器在一起。
图6示出了根据实施例的用于提供应用日志模式来追踪使用数据以便对服务的性能和可靠性进行分析的被动监测系统的方法的过程的逻辑流程图。过程600可以被实现为应用或操作系统的一部分。
过程600开始于操作610:“在服务处检测用户请求”,其中在协同服务处接收用于执行操作的请求。请求可以是由用户通过网络利用协同服务所接收到的、用于执行与在用户的客户端设备处所访问的应用相关联的操作的任何请求。
操作620:“创建与所检测到的请求和操作相关联的日志条目”紧接着操作610,其中,日志条目是在与服务相关联的数据存储处创建的。日志条目可以包括处理请求的子系统名称、操作标识、以及请求的开始时间与结束时间。
操作630:“检测满足请求的错误”紧接着操作620,其中,识别出由子系统执行以满足请求的操作,并且检测出执行操作以满足请求的错误。
操作640:“将错误分类到错误桶中”紧接着操作630,其中,可以将所检测到的错误分类到错误桶中,其中,桶指示失败场景。可以基于错误类型将所检测到的错误分类到预先存在的桶中,或者如果所检测到的错误不属于预先存在的错误桶,则可以创建新的桶。
操作650:“生成性能和可靠性报告”紧接着操作640,其中,可以基于对桶的分析来将计算错误率从而计算服务的性能和可靠性。可以基于所记录的错误数据来生成报告,以使得服务的管理员能够评估并改进服务。
在过程600中所包括的操作是出于说明的目的的。可以通过具有更少或更多的步骤的类似的过程,以及使用在本文中所描述的原则的不同顺序的操作来实现根据实施例来提供应用日志模式以追踪使用数据以便对服务的性能和可靠性进行分析的被动监测系统。
以上的说明书、示例、和数据提供了对实施例的组成部分的制造和使用的完整说明。尽管已经用特定于结构特征和/或方法行为的语言描述了主题,但应当理解的是,在所附权利要求中所定义的主题非必须限于在上文中所描述的具体的特征或行为。相反,在上文中所描述的具体的特征和行为是作为实现权利要求和实施例的示例形式而公开的。
Claims (60)
1.一种至少部分地在计算设备中执行的用于提供采用日志模式来在服务处跟踪请求的被动监测系统的方法,所述方法包括:
检测所述服务从用户接收的请求;
在与所述服务相关联的数据存储处创建所述请求的日志条目;
响应于确定所述请求未被满足,检测在所述服务处处理所述请求时的错误;
利用所述请求的所述日志条目来记录所检测到的错误;确定所检测到的错误的错误类型;
通过以下操作将所检测到的错误分类到错误桶中:
基于所述错误类型将所检测到的错误分类到预先存在的错误桶中;否则
响应于确定所述错误类型对于先前检测到的错误是独有的,创建新的错误桶并将所检测到的错误分类到所述新的错误桶中;
如果所检测到的错误的数量超过预先定义的阈值,则向所述用户提供警报;以及
基于成功桶与错误桶的百分比来确定所述服务的可靠性,其中,合成请求与实际用户请求不同,并且合成请求数据被移除以提供对所述服务的所述可靠性的准确确定。
2.根据权利要求 1 所述的方法,还包括:标识所述服务中的接收所述请求的子系统;
标识由所述子系统执行来满足所述请求的操作;以及
标识被执行来满足所述请求的所述操作的开始时间和结束时间。
3.根据权利要求 2 所述的方法,还包括:
在所述数据存储处将所述子系统、所述操作、被执行来满足请求的所述操作的所述开始时间和所述结束时间包括在所述日志条目中。
4.根据权利要求 1 所述的方法,还包括:
在所述数据存储处利用所述日志条目来记录所检测到的错误的错误描述。
5.根据权利要求 4 所述的方法,还包括:
将内部错误代码映射到所述错误描述,以在提供给所述用户的错误消息内提供用户友好的错误描述。
6.根据权利要求 5 所述的方法,还包括:
本地化所述错误消息,使得对于相同的内部错误代码,基于用户本地化生成不同的错误消息。
7.根据权利要求 1 所述的方法,还包括:
响应于确定所述请求被满足,将所述请求分类为成功桶中的成功。
8.根据权利要求 1 所述的方法,其中,如果所检测到的错误的数量超过所述预先定义的阈值,则向所述用户提供所述警报还包括:
识别重复检测到的相同错误类型的错误,使得对于所述相同错误类型,不会多次向所述用户提供相同警报。
9.根据权利要求 1 所述的方法,还包括:
向所述用户提供故障诊断消息以解决所检测到的错误。
10.根据权利要求 1 所述的方法,还包括:
提供愈合脚本以解决所述服务处的所检测到的错误。
11.根据权利要求 1 所述的方法,还包括:
生成包括以下各项中的一项或多项的所确定的可靠性的报告:所述服务、一个或多个特征、以及所述服务的一个或多个子系统。
12.一种用于提供采用日志模式来在服务处跟踪请求的被动监测系统的计算设备,所述计算设备包括:
存储器;
耦合至所述存储器的处理器,所述处理器执行日志应用,其中,所述日志应用被配置为:
检测所述服务从用户接收的请求;
在与所述服务相关联的数据存储处创建所述请求的日志条目;确定所述请求是否被所述服务满足;
响应于确定所述请求被满足,将所述请求分类为成功桶中的成功;响应于确定所述请求未被满足,基于检测到的错误的错误类型,将
所述请求分类为预先存在的错误桶和新创建的错误桶中的一者中的所述检测到的错误;
提供对所述用户的警报、对所述用户的故障诊断消息和对所述服务的愈合脚本中的至少一项,其中,所述警报、所述故障诊断消息和所述愈合脚本与所述检测到的错误相关联;以及
基于成功桶与错误桶的百分比来确定所述服务的可靠性,其中,合成请求与实际用户请求不同,并且合成请求数据被移除以提供对所述服务的所述可靠性的准确确定。
13.根据权利要求 12 所述的计算设备,其中,所述成功桶表示成功场景,并且所述错误桶表示失败场景。
14.根据权利要求 12 所述的计算设备,其中,所述请求是以下各项中的一项或多项:发起应用、打开文档、发起会话、与文档或应用交互、以及取回与应用相关联的数据。
15.根据权利要求 12 所述的计算设备,其中,所述日志应用还被配置为:
在所述数据存储处利用所述日志条目来记录所述检测到的错误的错误
描述,其中,所述错误描述包括内部错误代码、所述服务中的发生所述检测到的错误的子系统、以及所述错误类型。
16.根据权利要求 15 所述的计算设备,其中,所述错误类型包括与场所无关的字符串,所述与场所无关的字符串用于对针对所述请求和所述服务中的发生所述检测到的错误的所述子系统处的相关联的操作的所述检测到的错误的所述错误类型进行分类。
17.根据权利要求 12 所述的计算设备,其中,所述日志应用被配置为:基于所述服务的所确定的可靠性和性能来生成报告,所述报告包括以
下各项中的至少一项:对所述服务的性能的分析以及与所述服务相关联的一个或多个检测到的错误的原始数据。
18.一种至少部分地在计算设备中执行的用于提供采用日志模式来在服务处跟踪请求的被动监测系统的方法,所述方法包括:
检测所述服务从用户接收的请求;
在与所述服务相关联的数据存储处创建所述请求的日志条目;确定所述请求是否被所述服务满足;
如果所述请求被满足,则将所述请求分类为成功桶中的成功;
如果所述请求未被满足,则通过以下操作中的一个操作来将所述请求分类为错误桶中的检测到的错误:
基于错误类型将所述检测到的错误分类到预先存在的错误桶中;否则
响应于确定所述错误类型对于先前检测到的错误是独有的,创建新的错误桶并将所述检测到的错误分类到所述新的错误桶中;
提供对所述用户的警报、对所述用户的故障诊断消息和对所述服务的愈合脚本中的至少一项,其中,所述警报、所述故障诊断消息和所述愈合脚本与所述检测到的错误相关联;以及
基于成功桶与错误桶的百分比来确定所述服务的可靠性,其中,合成请求与实际用户请求不同,并且合成请求数据被移除以提供对所述服务的所
述可靠性的准确确定。
19.根据权利要求 18 所述的方法,其中,所述方法还包括:
采用故障追踪组件来持续的检查所述错误桶中的一个或多个错误桶以检测故障;
自动修复检测到的故障;以及
向所述用户提供指示所述检测到的故障的存在的另一警报。
20.根据权利要求 19 所述的方法,其中,所述方法包括:
使得所述服务的管理员能够定制所述日志模式以定义要监测的一个或多个子系统、监测频率和要监测的数据的类型。
21.一种用于监测服务处的请求错误的方法,所述方法包括:检测所述服务接收的请求;
创建所述请求的日志条目,其中,创建所述请求的所述日志条目包括,对于处理所述请求的每个子系统,记录以下各项中的一项或多项:
子系统名称,子操作名称,
进入所述子系统的时间和退出所述子系统的时间,
由所述子系统执行来满足所述请求的所述子操作的开始时间和结束时间,
所述请求的用户场所信息,或者
与在所述子系统处处理所述请求相关联的错误信息;
如果所述请求被所述服务满足,则在成功桶中记录条目;如果在所述服务处处理所述请求时检测到错误,则:
利用所述请求的所述日志条目来记录所检测到的错误;确定所检测到的错误的错误类型;
如果所检测到的错误对于先前检测到的错误是独有的,则将所检测到的错误分类到新的错误桶中;
如果所检测到的错误是已知的,则将所述错误分类到预先存在的错误
桶中;以及
基于所述成功桶和一个或多个错误桶来生成关于所述服务的可靠性的报告。
22.根据权利要求 21 所述的方法,其中,基于所述成功桶和所述一个或多个错误桶来生成关于所述服务的所述可靠性的所述报告包括:
基于所述成功桶与所述预先存在的错误桶和所述新的错误桶的总和的比率来确定所述服务的所述可靠性。
23.根据权利要求 21 所述的方法,其中,生成关于所述服务的所述可靠性的所述报告还包括:
包括与所述服务相关联的一个或多个检测到的错误的原始数据。
24.根据权利要求 21 所述的方法,还包括:根据记录的请求和错误的条目来定制日志模式。
25.根据权利要求 24 所述的方法,还包括:
接收对所述服务中的要监测的一个或多个子系统、监测频率和要监测的数据类型的定义。
26.根据权利要求 21 所述的方法,还包括:
在所述请求被处理并且响应被返回之前实时记录所检测到的错误。
27.根据权利要求 21 所述的方法,还包括:
监测所述服务中的处理所述请求的每个子系统内的子操作,以检测成功或错误。
28.根据权利要求 21 所述的方法,还包括:
根据记录的开始时间和记录的结束时间,确定每个子系统用于提供对所述请求的响应的处理时间;以及
使用所述处理时间来确定服务可靠性。
29.根据权利要求 21 所述的方法,还包括:
基于以下各项中的一项或多项来提供警报:所检测到的错误的数量超过预先定义的阈值以及所检测的错误是新错误。
30.一种用于监测基于云的服务处的请求错误的服务器,所述服务器包括:
存储器;
耦合至所述存储器的处理器,所述处理器执行应用,其中,所述应用被配置为:
检测所述服务接收的请求;创建所述请求的日志条目;
如果所述请求被所述服务满足,则在成功桶中记录条目;如果在所述服务处处理所述请求时检测到错误,则:
利用所述请求的所述日志条目来记录所检测到的错误;确定所检测到的错误的错误类型;
如果所检测到的错误对于先前检测到的错误是独有的,则将所检测到的错误分类到新的错误桶中;
如果所检测到的错误是已知的,则将所述错误分类到预先存在的错误桶中;以及
基于所述成功桶和一个或多个错误桶来生成关于所述服务的可靠性的报告,其中,所述报告包括以下各项中的一项或多项:经历最少使用的子系统的列表、经历最多使用的子系统的列表、关于与所述服务的用户交互的性质的观察、或用户在不同场景下执行的操作的模式。
31.根据权利要求 30 所述的服务器,其中,所述应用被配置为:在子系统级监测对请求的处理并记录错误。
32.根据权利要求 31 所述的服务器,其中,所述服务的子系统被分组
在以下各项中的一项或多项下:前端、中间层或后端。
33.根据权利要求 31 所述的服务器,其中,所述请求是跨所述服务的多个子系统顺序地或并行地处理的。
34.根据权利要求 30 所述的服务器,其中,所述日志条目被存储在数据存储中,并且所述数据存储包括数据存储接口,所述数据存储接口被配置为从作为分布式系统的一部分的多个基于云的服务接收使用数据。
35.根据权利要求 30 所述的服务器,其中,所述服务是被配置为促进以下各项中的一项或多项的协作服务:通信交换、文档共享、企业管理、文档管理、文件管理、协作、社交网络联系人管理、日历管理、数据共享或应用共享。
36.根据权利要求 30 所述的服务器,其中,所述请求是以下各项中的一项或多项:发起应用、打开文档、发起会话、与文档或应用交互、或者取回与应用相关联的数据。
37.根据权利要求 30 所述的服务器,其中,所述应用还被配置为:基于以下各项中的一项或多项来提供警报:所检测到的错误的数量超
过预先定义的阈值以及所检测的错误是新错误。
38.一种用于提供对一个或多个基于云的服务的错误的监测的方法,所述方法包括:
检测所述一个或多个基于云的服务接收的请求;创建所述请求的日志条目;
如果所述请求被所述一个或多个基于云的服务满足,则在成功桶中记录条目;
如果在所述一个或多个基于云的服务处处理所述请求时检测到错误,则:
利用所述请求的所述日志条目来记录所检测到的错误;确定所检测到的错误的错误类型;
如果所检测到的错误对于先前检测到的错误是独有的,则将所检测到的错误分类到新的错误桶中;
如果所检测到的错误是已知的,则将所述错误分类到预先存在的错误桶中;
独立于使用数据本地化来对所检测到的错误进行分类;以及将用户信息匿名化以保护用户隐私;以及
基于对所述请求的所述处理的分析来生成关于所述一个或多个基于云的服务的性能和可靠性的报告。
39.根据权利要求 38 所述方法,还包括:
基于可定制的时段并且基于默认参数和可定制参数来生成所述报告。
40.根据权利要求 38 所述方法,其中,关于所述一个或多个基于云的服务的所述性能和所述可靠性的所述报告是至少部分地基于所述成功桶与一个或多个错误桶的比率来生成的。
41.一种用于在服务处监测请求的方法,所述方法包括:检测所述服务接收的请求;
创建所述请求的日志条目,其中,创建所述请求的所述日志条目包括,对于处理所述请求的每个子系统,记录以下各项中的一项或多项:子系统名称、子操作名称、进入所述子系统的时间和退出所述子系统的时间、由所述子系统执行来满足所述请求的所述子操作的开始时间和结束时间、或者所述请求的用户场所信息;
如果所述请求被所述服务满足,则在成功桶中记录条目;
如果在所述服务处处理所述请求时检测到错误,则将所检测到的错误分类到错误桶中;以及
基于所述成功桶和所述错误桶来生成关于所述服务的可靠性的报告。
42.根据权利要求 41 所述的方法,其中,基于所述成功桶和所述错误桶来生成关于所述服务的所述可靠性的所述报告包括:
基于所述成功桶与一个或多个错误桶的比率来确定所述服务的所述可靠性。
43.根据权利要求 41 所述的方法,其中,生成关于所述服务的所述可靠性的所述报告还包括:
包括与所述服务相关联的一个或多个检测到的错误的原始数据。
44.根据权利要求 41 所述的方法,还包括:根据记录的请求和错误的条目来定制日志模式。
45.根据权利要求 44 所述的方法,还包括:
接收对所述服务中的要监测的一个或多个子系统、监测频率和要监测的数据类型的定义。
46.根据权利要求 41 所述的方法,还包括:
在所述请求被处理并且响应被返回之前实时记录所检测到的错误。
47.根据权利要求 41 所述的方法,还包括:
监测所述服务中的处理所述请求的每个子系统内的子操作,以检测成功或错误。
48.根据权利要求 41 所述的方法,还包括:
根据记录的开始时间和记录的结束时间,确定每个子系统用于提供对所述请求的响应的处理时间;以及
使用所述处理时间来确定服务可靠性。
49.一种用于在服务处监测请求的服务器,所述服务器包括:存储器;
耦合至所述存储器的处理器,所述处理器执行应用,其中,所述应用被配置为:
检测所述服务接收的请求;创建所述请求的日志条目;
如果所述请求被所述服务满足,则在成功桶中记录条目;
如果在处理所述请求时检测到错误,则将所检测到的错误分类到错误桶中;以及
基于所述成功桶和所述错误桶来生成关于所述服务的可靠性的报告,其中,所述报告包括以下各项中的一项或多项:经历最少使用的子系统的列表、经历最多使用的子系统的列表、关于与所述服务的用户交互的性质的观察、或用户在不同场景下执行的操作的模式。
50.根据权利要求 49 所述的服务器,其中,所述应用被配置为:在子系统级监测对请求的处理并记录错误。
51.根据权利要求 50 所述的服务器,其中,所述服务的子系统被分组在以下各项中的一项或多项下:前端、中间层或后端。
52.根据权利要求 50 所述的服务器,其中,所述请求是跨所述服务的多个子系统顺序地或并行地处理的。
53.根据权利要求 49 所述的服务器,其中,所述日志条目被存储在数据存储中,并且所述数据存储包括数据存储接口,所述数据存储接口被配置为从作为分布式系统的一部分的多个基于云的服务接收使用数据。
54.根据权利要求 49 所述的服务器,其中,所述服务是被配置为促进以下各项中的一项或多项的协作服务:通信交换、文档共享、企业管理、文档管理、文件管理、协作、社交网络联系人管理、日历管理、数据共享或应用共享。
55.根据权利要求 49 所述的服务器,其中,所述请求是以下各项中的一项或多项:发起应用、打开文档、发起会话、与文档或应用交互、或者取回与应用相关联的数据。
56.根据权利要求 49 所述的服务器,其中,所述应用还被配置为:基于以下各项中的一项或多项来提供警报:所检测到的错误的数量超
过预先定义的阈值以及所检测的错误是新错误。
57.一种提供对基于云的服务的监测的方法,所述方法包括:检测所述基于云的服务接收的请求;
创建所述请求的日志条目;
如果所述请求被所述基于云的服务满足,则在成功桶中记录条目;如果在所述基于云的服务处处理所述请求时检测到错误,则将所检测
到的错误分类到错误桶中;
将用户信息匿名化以保护用户隐私;以及
基于对所述请求的所述处理的分析来生成关于所述基于云的服务的性能和可靠性的报告。
58.根据权利要求 57 所述的方法,还包括:
基于可定制的时段并且基于默认参数和可定制参数来生成所述报告。
59.根据权利要求 57 所述的方法,还包括:
基于以下各项中的一项或多项来提供警报:所检测到的错误的数量超过预先定义的阈值以及所检测的错误是新错误。
60.根据权利要求 57 所述的方法,其中,关于所述基于云的服务的所述性能和所述可靠性的所述报告是至少部分地基于所述成功桶与一个或多个错误桶的比率来生成的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910490791.3A CN110245034B (zh) | 2014-02-26 | 2015-02-23 | 根据使用数据的结构化日志模式的服务度量分析 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/191,058 US9354963B2 (en) | 2014-02-26 | 2014-02-26 | Service metric analysis from structured logging schema of usage data |
US14/191,058 | 2014-02-26 | ||
PCT/US2015/017004 WO2015130583A1 (en) | 2014-02-26 | 2015-02-23 | Service metric analysis from structured logging schema of usage data |
CN201580010711.XA CN106062719B (zh) | 2014-02-26 | 2015-02-23 | 根据使用数据的结构化日志模式的服务度量分析 |
CN201910490791.3A CN110245034B (zh) | 2014-02-26 | 2015-02-23 | 根据使用数据的结构化日志模式的服务度量分析 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580010711.XA Division CN106062719B (zh) | 2014-02-26 | 2015-02-23 | 根据使用数据的结构化日志模式的服务度量分析 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110245034A CN110245034A (zh) | 2019-09-17 |
CN110245034B true CN110245034B (zh) | 2023-06-20 |
Family
ID=52633660
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910490791.3A Active CN110245034B (zh) | 2014-02-26 | 2015-02-23 | 根据使用数据的结构化日志模式的服务度量分析 |
CN201580010711.XA Active CN106062719B (zh) | 2014-02-26 | 2015-02-23 | 根据使用数据的结构化日志模式的服务度量分析 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580010711.XA Active CN106062719B (zh) | 2014-02-26 | 2015-02-23 | 根据使用数据的结构化日志模式的服务度量分析 |
Country Status (4)
Country | Link |
---|---|
US (4) | US9354963B2 (zh) |
EP (2) | EP3748501B1 (zh) |
CN (2) | CN110245034B (zh) |
WO (1) | WO2015130583A1 (zh) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9354963B2 (en) | 2014-02-26 | 2016-05-31 | Microsoft Technology Licensing, Llc | Service metric analysis from structured logging schema of usage data |
US10380867B2 (en) * | 2015-01-30 | 2019-08-13 | Cisco Technology, Inc. | Alert management within a network based virtual collaborative space |
CN106953759B (zh) * | 2017-03-22 | 2020-05-26 | 联想(北京)有限公司 | 集群控制方法和集群控制设备 |
US10725979B2 (en) | 2017-03-24 | 2020-07-28 | Microsoft Technology Licensing, Llc | Measuring usage of computing resources by storing usage events in a distributed file system |
US10860545B2 (en) | 2017-03-24 | 2020-12-08 | Microsoft Technology Licensing, Llc | Measuring usage of computing resources |
US10764383B1 (en) * | 2017-03-28 | 2020-09-01 | CatchOn, Inc. | Correlation of usage to corresponding users through device and DNS agents |
US20190018729A1 (en) | 2017-04-14 | 2019-01-17 | Microsoft Technology Licensing, Llc | Anomaly remediation using device analytics |
US10452465B2 (en) * | 2017-09-08 | 2019-10-22 | Oracle International Corporation | Techniques for managing and analyzing log data |
CN107748719A (zh) * | 2017-11-06 | 2018-03-02 | 广州酷狗计算机科技有限公司 | 测试报告生成方法及装置 |
US10691082B2 (en) * | 2017-12-05 | 2020-06-23 | Cisco Technology, Inc. | Dynamically adjusting sample rates based on performance of a machine-learning based model for performing a network assurance function in a network assurance system |
CN110058987B (zh) * | 2018-01-18 | 2023-06-27 | 伊姆西Ip控股有限责任公司 | 用于对计算系统进行追踪的方法、设备和计算机可读介质 |
US10977161B2 (en) * | 2018-05-30 | 2021-04-13 | Microsoft Technology Licensing, Llc | Automatic intelligent cloud service testing tool |
US11556120B2 (en) | 2018-10-29 | 2023-01-17 | Honeywell International Inc. | Systems and methods for monitoring performance of a building management system via log streams |
CN111221659B (zh) * | 2018-11-23 | 2023-10-03 | 北京图森智途科技有限公司 | 一种多机器人操作系统环境的订阅性能追踪系统 |
US10963331B2 (en) * | 2018-12-13 | 2021-03-30 | Microsoft Technology Licensing, Llc | Collecting repeated diagnostics data from across users participating in a document collaboration session |
CN110033242B (zh) * | 2019-04-23 | 2023-11-28 | 软通智慧科技有限公司 | 工作时间确定方法、装置、设备和介质 |
CN110958142A (zh) * | 2019-11-26 | 2020-04-03 | 华为技术有限公司 | 设备维护方法、维护设备、存储介质及计算机程序产品 |
US20210294682A1 (en) * | 2020-03-18 | 2021-09-23 | International Business Machines Corporation | Predicting cost reduction of event correlation in fault event management |
CN113595852A (zh) * | 2020-04-30 | 2021-11-02 | 北京字节跳动网络技术有限公司 | 一种邮件信息展示方法、装置、电子设备和存储介质 |
CN112181696B (zh) * | 2020-08-31 | 2023-05-12 | 五八到家有限公司 | 异常信息处理方法、设备及存储介质 |
US11032158B1 (en) | 2020-11-18 | 2021-06-08 | Coupang Corp. | Computerized systems and methods for processing high-volume log files from virtual servers |
CN112685098B (zh) * | 2020-12-31 | 2022-07-08 | 思必驰科技股份有限公司 | 前端接收服务器端数据的校验方法 |
CN112699009A (zh) * | 2021-01-12 | 2021-04-23 | 树根互联技术有限公司 | 数据检测方法和装置、服务器及存储介质 |
US11755402B1 (en) * | 2021-02-01 | 2023-09-12 | T-Mobile Innovations Llc | Self-healing information technology (IT) testing computer system leveraging predictive method of root cause analysis |
CN112801666B (zh) * | 2021-03-30 | 2021-10-26 | 北京宇信科技集团股份有限公司 | 基于企业服务总线的监控管理方法、系统、介质和设备 |
CN113452674B (zh) * | 2021-05-21 | 2024-05-07 | 南京逸智网络空间技术创新研究院有限公司 | 一种基于伽罗瓦域的流量日志多视图匿名方法 |
CN114168672B (zh) * | 2021-12-13 | 2022-09-23 | 明觉科技(北京)有限公司 | 日志数据的处理方法、装置、系统以及介质 |
CN114490751B (zh) * | 2021-12-29 | 2024-06-04 | 深圳优地科技有限公司 | 机器人故障的确定方法、装置、设备以及可读存储介质 |
CN115277383B (zh) * | 2022-07-28 | 2024-03-12 | 北京天融信网络安全技术有限公司 | 日志生成方法、装置、电子设备及计算机可读存储介质 |
US12072775B2 (en) * | 2022-12-07 | 2024-08-27 | Servicenow, Inc. | Centralized configuration and change tracking for a computing platform |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183987A (zh) * | 2006-11-17 | 2008-05-21 | 国际商业机器公司 | 用于监视动态Web内容应用的性能的方法和系统 |
CN102932323A (zh) * | 2011-08-29 | 2013-02-13 | 卡巴斯基实验室封闭式股份公司 | 对计算机网络中安全相关事故的自动分析 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6842782B1 (en) | 1998-12-08 | 2005-01-11 | Yodlee.Com, Inc. | Method and apparatus for tracking functional states of a web-site and reporting results to web developers |
US7587484B1 (en) | 2001-10-18 | 2009-09-08 | Microsoft Corporation | Method and system for tracking client software use |
US6912612B2 (en) * | 2002-02-25 | 2005-06-28 | Intel Corporation | Shared bypass bus structure |
US8032866B1 (en) | 2003-03-27 | 2011-10-04 | Identify Software Ltd. | System and method for troubleshooting runtime software problems using application learning |
US20040220947A1 (en) * | 2003-05-02 | 2004-11-04 | International Business Machines Corporation | Method and apparatus for real-time intelligent workload reporting in a heterogeneous environment |
US7925981B2 (en) * | 2003-05-14 | 2011-04-12 | Hewlett-Packard Development Company, L.P. | Systems and methods for managing web services via a framework of interfaces |
US20080005281A1 (en) * | 2006-06-29 | 2008-01-03 | Microsoft Corporation | Error capture and reporting in a distributed computing environment |
JP4306778B2 (ja) * | 2007-01-15 | 2009-08-05 | エプソンイメージングデバイス株式会社 | 表示装置 |
US7818418B2 (en) | 2007-03-20 | 2010-10-19 | Computer Associates Think, Inc. | Automatic root cause analysis of performance problems using auto-baselining on aggregated performance metrics |
US7936683B2 (en) * | 2007-06-20 | 2011-05-03 | At&T Intellectual Property I, L.P. | System and method of monitoring network performance |
US8271836B2 (en) | 2007-09-27 | 2012-09-18 | Microsoft Corporation | Capturing diagnostics in web browser applications |
US8347269B2 (en) | 2007-09-28 | 2013-01-01 | International Business Machines Corporation | Method, system and computer program for debugging software applications in a web environment |
KR100898339B1 (ko) * | 2007-10-05 | 2009-05-20 | 한국전자통신연구원 | 홈 네트워크 환경을 위한 자율적인 오류 처리 시스템 및 그방법 |
JP5444673B2 (ja) | 2008-09-30 | 2014-03-19 | 富士通株式会社 | ログ管理方法、ログ管理装置、ログ管理装置を備えた情報処理装置、及びプログラム |
US8365019B2 (en) | 2009-06-16 | 2013-01-29 | International Business Machines Corporation | System and method for incident management enhanced with problem classification for technical support services |
US8527955B2 (en) | 2009-09-11 | 2013-09-03 | International Business Machines Corporation | System and method to classify automated code inspection services defect output for defect analysis |
CN102137133B (zh) * | 2010-01-22 | 2015-01-21 | 华为技术有限公司 | 内容分发的方法、系统及调度服务器 |
US8626901B2 (en) * | 2010-04-05 | 2014-01-07 | Comscore, Inc. | Measurements based on panel and census data |
US8930525B2 (en) | 2010-04-27 | 2015-01-06 | Hewlett-Packard Development Company, L.P. | Method and apparatus for measuring business transaction performance |
NZ606236A (en) * | 2010-07-08 | 2014-09-26 | Univ Louisiana State | Adenovirus ad36 e4orf1 protein for prevention and treatment of non-alcoholic fatty liver disease |
US8849910B2 (en) * | 2011-06-03 | 2014-09-30 | Oracle International Corporation | System and method for using quality of service with workload management in an application server environment |
US20130346163A1 (en) | 2012-06-22 | 2013-12-26 | Johann Kemmer | Automatically measuring the quality of product modules |
US9667470B2 (en) * | 2012-09-07 | 2017-05-30 | Oracle International Corporation | Failure handling in the execution flow of provisioning operations in a cloud environment |
US9363136B2 (en) * | 2013-12-20 | 2016-06-07 | Intel Corporation | Mechanism to monitor quality of service |
US9354963B2 (en) * | 2014-02-26 | 2016-05-31 | Microsoft Technology Licensing, Llc | Service metric analysis from structured logging schema of usage data |
US20150244600A1 (en) * | 2014-02-26 | 2015-08-27 | Microsoft Corporation | Structured logging schema of usage data |
-
2014
- 2014-02-26 US US14/191,058 patent/US9354963B2/en active Active
-
2015
- 2015-02-23 WO PCT/US2015/017004 patent/WO2015130583A1/en active Application Filing
- 2015-02-23 EP EP20181655.0A patent/EP3748501B1/en active Active
- 2015-02-23 EP EP15709002.8A patent/EP3117321B1/en active Active
- 2015-02-23 CN CN201910490791.3A patent/CN110245034B/zh active Active
- 2015-02-23 CN CN201580010711.XA patent/CN106062719B/zh active Active
-
2016
- 2016-05-13 US US15/153,738 patent/US9503335B2/en active Active
- 2016-11-18 US US15/355,420 patent/US10289470B2/en active Active
-
2019
- 2019-03-26 US US16/365,534 patent/US10997010B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183987A (zh) * | 2006-11-17 | 2008-05-21 | 国际商业机器公司 | 用于监视动态Web内容应用的性能的方法和系统 |
CN102932323A (zh) * | 2011-08-29 | 2013-02-13 | 卡巴斯基实验室封闭式股份公司 | 对计算机网络中安全相关事故的自动分析 |
Also Published As
Publication number | Publication date |
---|---|
US20160254969A1 (en) | 2016-09-01 |
US20170123880A1 (en) | 2017-05-04 |
US9503335B2 (en) | 2016-11-22 |
WO2015130583A1 (en) | 2015-09-03 |
US9354963B2 (en) | 2016-05-31 |
US10289470B2 (en) | 2019-05-14 |
CN110245034A (zh) | 2019-09-17 |
US10997010B2 (en) | 2021-05-04 |
EP3748501A1 (en) | 2020-12-09 |
EP3748501B1 (en) | 2024-01-03 |
US20190220338A1 (en) | 2019-07-18 |
US20150242262A1 (en) | 2015-08-27 |
EP3117321A1 (en) | 2017-01-18 |
CN106062719B (zh) | 2019-06-04 |
EP3117321B1 (en) | 2020-07-29 |
CN106062719A (zh) | 2016-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245034B (zh) | 根据使用数据的结构化日志模式的服务度量分析 | |
US9590880B2 (en) | Dynamic collection analysis and reporting of telemetry data | |
US8661125B2 (en) | System comprising probe runner, monitor, and responder with associated databases for multi-level monitoring of a cloud service | |
KR102301946B1 (ko) | 분산 시스템에서 결함을 분석하기 위한 비주얼 툴 | |
US20190370138A1 (en) | Compliance testing through sandbox environments | |
EP3178004B1 (en) | Recovering usability of cloud based service from system failure | |
US10476768B2 (en) | Diagnostic and recovery signals for disconnected applications in hosted service environment | |
US20150244600A1 (en) | Structured logging schema of usage data | |
US20150089300A1 (en) | Automated risk tracking through compliance testing | |
US9444708B2 (en) | Detection of outage in cloud based service using synthetic measurements and anonymized usage data | |
US11144930B2 (en) | System and method for managing service requests | |
WO2022042126A1 (en) | Fault localization for cloud-native applications | |
GB2532285A (en) | Request monitoring | |
Sebu et al. | Business activity monitoring solution to detect deviations in business process execution | |
US9692665B2 (en) | Failure analysis in cloud based service using synthetic measurements | |
US12084205B2 (en) | Methods and systems for identifying aircraft faults | |
US20240119385A1 (en) | Methods and systems for discovery and monitoring of business flows |
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 |