CN102882710B - 跨机器的事件日志关联 - Google Patents

跨机器的事件日志关联 Download PDF

Info

Publication number
CN102882710B
CN102882710B CN201210335483.1A CN201210335483A CN102882710B CN 102882710 B CN102882710 B CN 102882710B CN 201210335483 A CN201210335483 A CN 201210335483A CN 102882710 B CN102882710 B CN 102882710B
Authority
CN
China
Prior art keywords
event
machine
packet
protocol stack
processing components
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
CN201210335483.1A
Other languages
English (en)
Other versions
CN102882710A (zh
Inventor
S.P.米里
P.加格
B.舒尔茨
S.K.辛哈尔
M.西瓦库马
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 CN102882710A publication Critical patent/CN102882710A/zh
Application granted granted Critical
Publication of CN102882710B publication Critical patent/CN102882710B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

在具有多个计算机的计算环境中,与相对应活动的标识符相关联地对事件进行日志记录,其中这样的计算机可以包括虚拟机。当与活动相关联的数据分组被传输至目的地机器时,与所述活动相对应的活动标识符连同所述数据分组一起进行传输并且被目的地机器在对其事件进行日志记录时所使用。这允许来自两个机器的事件根据它们所属于的活动而被关联。

Description

跨机器的事件日志关联
背景技术
网络通信和其它计算机输入/输出(I/O)操作经常使用多种协议来实施。低层级的协议通常与设备硬件或传输媒体进行交互,而高层级的协议则通常与软件应用进行交互。从较低层级协议到较高层级协议的一系列协议处理组件被称作协议栈,并且该栈内的每个组件被称作协议层。诸如I/O分组之类的数据对象在其在应用和物理传输机制之间进行传输时通常串行通过协议栈的层。
作为示例,网络通信协议栈可以包括以下协议和相对应的层:
协议                       层
HTTP                     应用
TCP                       传输
IP                           互联网
以太网                   链路
IEEE 802.3u          物理。
出于调试和检修的目的,对单个数据分组通过协议栈的进程进行追踪通常是有用的。一些操作系统允许协议层报告或以日志记录与分组处理相关的事件,并且一些操作系统可以支持知识库(repository)、API(应用编程接口)、报告工具,以及用于促成事件报告和日志记录的其它中心功能。
通常,协议栈的每一层与栈的其它层隔离开来。然而,除了实际的I/O数据之外,在层之间传递的数据分组可以包括所谓的“带外(out-of-band)”数据。为了对通过协议栈的特定数据分组进行追踪,标识符可以与该数据分组相关联,并且在与该数据分组相关联的带外数据中在各层之间进行传递。当对事件进行日志记录时,每一层将所述分组标识符连同与事件相关的其它信息一起报告给日志记录系统。这允许报告服务汇集与单个分组相关的所有经日志记录的事件,并且对示出分组在其遍历协议栈时被如何处理的轨迹进行重构。该方法可以随各种类型的活动使用,以使得在协议栈内发生的与单个活动相关的所有事件都能够被轻易识别。
计算环境中越来越多虚拟化的使用已经带来了与诊断和检修相关的挑战。在虚拟计算环境中,单个物理机器可以容纳多个虚拟机。包括主机和虚拟机在内的每台机器可以具有其自己的操作系统并且实施其自己的协议栈。此外,每个协议栈可以独立于其它协议栈进行操作,并且没有便利的方式将从一个协议栈所报告的事件与从另一个协议栈所报告的事件关联起来。
发明内容
本公开描述了允许通过多个计算机的协议栈对基于活动相关事件进行追踪的报告、事件日志记录和机器间通信的方法,上述计算机可以包括物理机器和虚拟机。与特定活动相关联的数据分组与一个或多个活动标识符相关联。活动标识符进而与结合该活动所报告或日志记录的任意事件相关联。当数据分组从一个机器传输到另一个机器或者从一个协议栈传输到另一个协议栈时,活动代码被起始协议栈附加至数据分组,并且由接收协议栈的协议栈在记录日志时使用或报告。
该发明内容被提供以介绍以下具体实施方式中进一步描述的简化形式的概念的选择。该发明内容并非意在标识出所要求保护主题的关键特征或实质性特征,也并非意在被用来对所要求保护主题的范围进行限制。
附图说明
参考附图给出详细描述。在图中,附图标记最左侧的(一个或多个)数字标识该附图标记首次出现的图。不同图中使用共有的附图标记指示相似或相同的项目。
图1是图示用于将从不同协议栈和/或不同机器所报告的事件进行关联的技术的框图。
图2是进一步图示用于将来自不同协议栈和/或不同机器的事件进行关联的技术的框图。
图3A和3B是图示以促进事件关联的方式进行协议栈处理的流程图。
图4是图示从多个事件日志进行报告的方法的流程图。
图5是可以被用来实施这里所描述的技术的示例计算机配置的框图。
具体实施方式
图1示出了虚拟计算环境100,其具有与事件的日志记录、机器间通信以及I/O协议栈处理最为相关的部件和组件。该环境包含一个或多个虚拟机主机102。为了便于描述,图1中显示了两个主机102,它们利用共用的附图标记所显示。
每个主机102可以实施一个或多个虚拟机104(a)和104(b)。每个主机内的两个所图示的虚拟机的类似组件利用以后缀(a)和(b)加以区别的相同附图标记所显示。第一虚拟机104(a)的组件在每个示例中被示为具有所附后缀(a)。第二虚拟机104(b)的组件在每个示例中被示为具有所附后缀(b)。在以下讨论中,当引用任一个所涉及组件或其二者时,为了便于讨论有时可以省略后缀。
每个虚拟机104具有独立的操作系统(未示出),其实施协议栈106。虚拟机104和/或其操作系统还可以实施日志记录系统108,虚拟机104的各个不同组件可以对其报告分析人员可能感兴趣的事件。可以由组件来报告不同类型的错误以及其它类型的事件。
每个虚拟机104可以执行一个或多个应用110。在该环境中,术语“应用”是指在虚拟机104内执行并且关于协议栈106作为消费方和/或制造方的高层级组件。应用110可以与协议栈106的高层进行交互以发送和接收数据分组或其它I/O。应用110可以利用日志记录系统108来报告错误和事件。
主机102还具有操作系统(未示出),其实施各种功能以支持其虚拟机104的操作,包括用于促成虚拟机和其它物理机器之间的通信的各种I/O协议栈。作为相关示例,主机102可以实施虚拟网络交换机112,其可以使用一个或多个协议栈来仿真物理网络交换机的功能并且提供与主机102的虚拟机104的通信。虚拟机协议栈106的最低层级协议层与虚拟交换机112进行通信以在虚拟机104和主机102之间传递数据分组。虚拟交换机112还使用相同或附加协议栈促成与其它物理机器和/或主机的通信。在一些实施方式中,数据分组可以通过诸如主机102的单台机器所实施的多个协议栈进行传输。
主机102和/或其操作系统可以维护其自己的日志记录系统114。虚拟交换机112以及主机102的其它可执行组件可以向主机的日志记录系统114报告错误和其它处理事件。
在每个主机102内,数据分组116的示例流程由实线所图示,其具有指示数据传输方向的箭头。该示例假设分组116在第一虚拟机104(a)内发起并且通过主机102的虚拟交换机112被传输至第二虚拟机104(b)。更具体地,第一机器104(a)的应用110(a)生成分组116并且将该分组提交至协议站106(a)。协议栈106(a)通过其协议层对数据分组116进行处理并且随后将数据分组116连同活动标识符(AID)118一起传输至虚拟交换机112。
主机102的虚拟交换机112接收数据分组116和相关联的活动标识符118并且使用主机102内所实施的一个或多个协议栈的层执行各种处理。活动标识符118(或者如以下所描述的所标识的相关活动)在该处理期间保持与数据分组116相关联。最终,虚拟交换机112将分组116和活动标识符118传送至虚拟机104的协议栈106(b)。协议栈106(b)对分组116进行处理并最终将其提供至应用110(b)。
使用物理通信网络上的适当网络协议,数据可以以相同方式在两个主机102之间进行传输。当在主机之间传输数据分组116时,活动标识符118可以与分组相关联并且随其传送以对主机102及其虚拟机104之间的活动进行关联。例如,活动标识符118可以在数据分组116从一个主机的虚拟机传输至另一主机的虚拟机时与之相关联。
图1中的虚线指示日志记录活动和通信。在分组116的处理期间,协议栈106(a)的各个层向日志记录系统108(a)报告相关事件,并且协议栈106(b)的各个层向日志记录系统108(b)报告相关事件。类似地,虚拟交换机112的组件或协议层向主机102的日志记录系统114报告事件。
当与数据分组116的处理相关的事件被报告给任意的日志记录系统108和114时,事件指定已经与数据分组116相关联的活动标识符118。
报告系统120可以被管理员和/或技术人员用来在分组116遍历两个虚拟机104的协议栈时对其处理进行分析。报告系统120可以由以上所描述的虚拟或物理机器之一来实施,或者由独立的计算机或机器来实施。报告系统120能够访问虚拟机104的日志记录系统108以及主机102的日志记录系统114,并且因此能够从虚拟机104和/或主机102获得已经进行日志记录的事件的描述。
事件可以通过其活动标识符118进行过滤以汇集与单次活动或数据传输相关的事件。处理识别和关联与共有的活动相关的事件之外,报告系统120可以准备基于时间的报告,其指示各种机器中已经发生的有关各个数据分组或各种类型的活动的事件进行处理的时间记录(chronology)。
图2图示了数据分组可以如何与活动标识符相关联并且以允许对与数据分组所表示的活动相关的事件进行跨机器追踪的方式在两台机器之间传输的示例。两台机器可以是两个虚拟机、两台物理机器,或者虚拟机和物理机器或主机的组合。每个机器可以处于其自己的操作系统的控制之下,并且每个操作系统可以支持其自己的协议栈和日志记录子系统。
图2图示了由第一机器所实施的第一协议栈202,以及由第二机器所实施的第二协议栈。例如,协议栈可以由图1的虚拟机104(a)和主机102来实施,或者由图1所示机器的任意其它组合来实施。协议栈202和204的每一个具有多个处理层,它们在图2中被标记为层1、层2、层3和层4。
第一协议栈202在最高协议层接收数据分组206,该最高协议层在该示例中为层4。每个处理层可以是独立的处理组件。中间层从下一个较高层接收分组206并且将其送至下一个较低层直至到达最低层,该最低层在该示例中为层1。最低层通常处于物理媒体层,并且通过物理媒体与另一个协议栈的对应层进行通信。在这种情况下,第一协议栈202的层1与第二协议栈204的层1进行通信。
在某些实施例中,协议栈202和204的每一层被配置为将活动标识符208与分组206相关联。活动标识符可以是GUID(全局唯一标识符)或者对于协议栈所处理的每个不同分组而言唯一的其它代码。
用于接收分组206的第一层(在该示例中为栈202的层4)可以创建活动标识符208并且提供活动标识符208与分组206的初始关联。当将该分组传递至相同协议栈的后续层时,该活动标识符也被传输,诸如通过将活动标识符包括在与数据分组206相关联的带外数据中。例如,协议栈可以利用存储器缓冲器来存储数据分组,并且该缓冲器的部分可以被用于存储活动标识符。
在第一协议栈202的每一层执行时,其可以与事件日志记录系统210进行通信。事件日志记录系统210可以由在其上实施协议栈202的机器的操作系统或其它组件维护,并且可通过标准化且发布的API(应用编程接口)进行访问。每一层可以报告各种类型的事件212,包括错误、处理异常和诊断信息。
当第一协议栈202的层报告与分组206相关的事件212时,其还报告已经与分组206相关联的活动标识符208。事件日志记录系统210接收包括相关联的活动标识符208的事件212,并且在事件日志中存储事件描述。所存储的事件描述包括活动标识符208。
在某一时刻,分组206从第一协议栈202的层1被传递至第二协议栈204的层1。机器之间的这种传输可以使用不同的机器间协议来执行,诸如NDIS(网络驱动器接口规范)、RNDIS(远程网络驱动器接口规范)、ODI(开放数据链路接口)、UDI(统一驱动器对接)、GRE(同属选路封装),等等。
RNDIS是可以在层1用于主机和虚拟机之间的传输的协议的示例。当使用RNDIS时,活动标识符208可以作为标记/数值对包括在RNDIS有效载荷内。
GRE是可以在层1用于诸如主机和另一台物理机器之间或者两台主机之间的两台物理机器之间的传输的协议的示例。当使用GRE时,活动标识符208可以嵌入GRE规范定义的另外未使用的数据字段中。例如,GRE规范所规定的作为分组报头一部分的32比特的“关键字”或“序列号”字段可以被用来在分组206从一台物理机器传输至另一台物理机器期间存储活动标识符208。
在接收数据分组206之后,第二协议栈204以与第一协议栈202相同的方式工作。在第二协议栈204的每一层执行时,其可以与在其上实施协议栈204的机器的操作系统或其它组件所维护的事件日志记录系统216进行通信。
当第二协议栈204的层报告与分组206相关的事件212时,其还报告已经与分组206相关联的活动标识符208。事件日志记录系统216接收包括相关联的活动标识符208的事件212,并且将事件描述存储在事件日志218中。所存储的事件描述包括活动标识符208。
协议栈202和204的每一层可以简单地将相同的活动标识符208传递至后续的栈层。也就是说,可以由协议栈202和204的每个栈层对数据分组指定共有的活动标识符。可替换地,在一些实施例中,任意栈层可以向数据分组206指定新的活动标识符208。在这种情况下,栈层可以连同之前所指定的活动标识符208一起向事件日志记录系统210或216报告新的活动标识符208的指定。这允许事件日志记录系统210和216对协议栈的不同处理组件所进行的活动标识符的指定进行追踪,并且由此识别相关的活动标识符。在一些实施例中事件日志记录系统210和216可以创建相关活动标识符的映射以使得事件报告工具可以检查该映射来确定哪些所报告的事件与相同数据分组或活动相关联。
报告系统或工具120可以被分析人员用来查看系统表现,尤其是用于对数据分组206处理中的任意故障进行检修。报告系统120可以检查日志记录系统210和216所产生的事件日志214和218以找出与特定数据分组相关的任意事件。与特定分组相关的事件可以通过参考其活动标识符来进行识别。在一些实施例中,与特定数据分组或活动相关的所有事件将具有相同的活动标识符。在其它实施例中,报告系统120可以参考日志记录系统210和216所产生的标识符映射来识别已经结合某个分组或活动所使用的不同的活动标识符,并且可以随后找出具有不同但相关的活动标识符的那些事件。此外,在活动遍历多于两个的机器的情况下,活动标识符可以通过所有这些机器进行传播和追踪,并且报告系统或工具120可以生成包括来自包括虚拟机和物理机器在内的任意数量的不同机器的经日志记录的事件的活动轨迹。
图3A和3B图示了追踪与通过两个机器所处理的数据分组或活动相关联的事件的示例方法。图3A示出了第一机器所执行的动作。图3B示出了第二机器所执行的动作。动作将参考图2所示的部件进行描述。出于该描述的目的,假设第一机器实施第一协议栈202,而第二机器实施第二协议栈204。
动作302包括通过第一协议栈202传输数据分组206并且在第一协议栈202的每一层内执行特定于协议的处理。如以上所提到的,第一协议栈202由第一机器所实施,其可以是虚拟机主机、虚拟机或独立的物理机器。除了协议栈202的每个处理组件所执行的特定于协议的处理之外,动作302包括针对第一协议栈202的一系列处理组件或层中的每一个所执行的一组动作。
动作304包括接收数据分组206以及之前已经与数据分组206相关联的任意活动标识符。如果当前执行的栈处理组件处于协议栈202的最高层级,则数据分组206可以在没有之前存在的活动标识符的情况下被接收。
动作306包括对数据分组206或者与该数据分组相关联的活动指定活动标识符208。如果活动标识符208已经与数据分组206相关联并且在动作304中被接收,则可以在动作306中指定相同的活动标识符208。可替换地,可以创建并指定新的活动标识符208,并且新的活动标识符的创建和关联可以被报告给第一机器的日志记录系统210。在一些实施例中,分组206可以随现有活动标识符被接收,然而处理组件可以对分组206指定新的活动标识符。在这种情况下,处理组件将之前存在的活动标识符和新指定的活动标识符都报告给日志记录系统210,以使得日志记录系统210能够维护已经由协议栈的不同处理组件对数据分组206的处理所指定的各种活动标识符的一个或多个映射。
动作308包括向第一机器的日志记录系统210报告一个或多个事件212,其中所报告的事件212涉及第一协议栈202的处理组件对数据分组206所进行的处理。活动标识符208与每个事件212相关联并且连同事件212一起被报告。也可以报告其它数据,诸如描述、代码、时间戳、处理器ID、线程ID等。
动作310包括向协议栈202的下一个处理组件传送或提供所处理的数据分组206。活动标识符208在分组206被送至下一个处理组件时与其相关联并包括在一起。图3A的虚流程线指示框302内的动作针对协议栈202的后续层的可能重复。该重复反复进行直至数据分组已经到达第一协议栈202的最低层级。
在分组206已经被协议栈202的最后或最低层级的层处理之后,动作312包括将数据分组206和相关联的活动标识符208传送至第二机器,或者传送至第二机器的第二协议栈206。动作312可以由协议栈202的最后或最低层级的层来执行,诸如由协议栈202的层1来执行。
图3B显示了由第二协议栈204关于所接收的分组206和相关联的活动标识符208所执行的动作。动作314包括接收分组206和相关联的活动标识符208。该动作可以由第二协议栈204最低层级的层来执行,诸如由协议栈204的层1来执行。
动作316包括通过第二协议栈204传输数据分组206并且在第二协议栈204的每一层内执行特定于协议的处理。第二协议栈204由第二机器所实施,该第二机器可以是虚拟机主机、虚拟机或者独立的物理机器。除了协议栈204的每个处理组件所执行的特定于协议的处理之外,动作316包括针对第二协议栈204的一系列处理组件或层中的每一个所执行的一组动作。
动作318包括接收数据分组206以及之前已经与数据分组206相关联的任意活动标识符208。动作320包括对数据分组206或者与该数据分组相关联的活动指定活动标识符208。这里所指定的活动标识符208可以是已经与数据分组206相关联并且在动作318中所接收的相同标识符。可替换地,可以创建并指定新的活动标识符208,并且新的活动标识符的创建和和关联可以被报告给第二机器的日志记录系统216。在这种情况下,处理组件向日志记录系统216报告之前存在的活动标识符以及新指定的活动标识符,以使得日志记录系统216能够维护已经被协议栈204的不同处理组件对数据分组206的处理所已指定的各种活动标识符的映射。
动作322包括向第二机器的日志记录系统216报告一个或多个事件212,其中所报告的事件212涉及由第二协议栈204的处理组件对数据分组206所进行的处理。活动标识符208与每个事件212相关联并且连同事件212一起报告。
动作324包括将经处理的数据分组206传送或提供至协议栈204的下一个处理组件。活动ID 208在分组206被送至下一个处理组件时与之相关联并且包括在一起。图3B的虚流程线指示框314内的动作针对协议栈204的后续层的可能重复。该重复反复进行直至数据分组已经到达第二协议栈204的最高层级,此时分组206被送至其接收方应用。
图4图示了追踪虚拟计算和/或多计算机环境中的日志事件的示例方法。图4的动作可以由以上参考图1和2所讨论的报告系统120所执行。
动作402包括检查来自多个机器的事件日志,诸如图2所示的事件日志214和218。如以上所描述的,该事件日志指定事件以及相对应的活动标识符。活动标识符将事件与其它事件进行关联,并且与事件有关的具体数据分组或活动进行关联。
动作404包括通过参考对应于事件日志214中的事件的活动标识符而识别来自多个机器的与特定活动相关的多个事件。更具体地,报告系统120可以定位具有共有的活动标识符的所有事件。在其它实施例中,报告系统120可以定位具有相关活动标识符的事件。为了识别相关的活动标识符,报告系统可以检查已经被日志记录系统210和216所维护的一个或多个映射。
动作406包括至少部分地基于所识别的与特定活动相关的事件而产生活动轨迹408。活动轨迹408可以指示与特定活动或数据分组相关的所有事件以及其它信息,诸如时间线、时间记录、分组有效载荷、描述、错误消息和其它检修信息。
图5显示了计算机500的相关高层级组件,该计算机500作为可以被用来实施以上所描述的技术的各种类型的计算设备的示例。例如,每个主机102可以通过计算机500的物理实例来实施。诸如计算机500的计算机还可以被用来实施报告系统120的功能。
计算机500可以包括一个或多个处理器502以及计算机可读存储器504。以上所描述的日志记录和报告技术可以被实施为存在于计算机可读存储器内的软件,诸如包括存在于存储器504内供一个或多个和处理器502执行的指令集合或序列的一个或多个程序、模块或例程。作为高层级示例,存储器可以包含用于支持计算机500内的多个虚拟机504的操作的虚拟化支持软件506。存储器504还可以包含用于支持以上所描述的日志记录和报告功能的日志记录和/或报告软件508。
存储器504是计算机可读媒体的示例。计算机可读媒体包括至少两种类型的计算机可读媒体,即计算机存储媒体和通信媒体。
计算机存储媒体包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息的任意方法和技术所实施的易失性和非易失性、可移动和不可移动的媒体。计算机存储媒体包括相变随机访问存储器(PRAM)、静态随机访问存储器(SRAM)、动态随机访问存储器(DRAM)、其它类型的随机访问存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、闪存或其它存储器技术、光盘只读存储器(CD-ROM)、数字通用光盘(DVD)或其它光学存储、磁带盒、磁带、磁盘存储或其它磁性存储设备,或者可以被用来存储供计算设备访问的信息的任意其它非传输媒体,但是并不局限于此。
与之相比,通信媒体可以体现计算机可读指令、数据结构、程序模块,或者诸如载波的调制数据信号或其它传输机制中的其它数据。通信媒体还包括任意信息传递媒体。如这里所定义的,计算机存储媒体并不包括通信媒体。
计算机500还可以具有输入/输出设施510,诸如网络接口、用户接口等。
用来实施以上所描述的技术的软件可以存在于如所显示的存储器504中,并且还可以以各种方式以及使用不同装置进行存储和分布,诸如通过存储在包括便携式和可移动媒体在内的不同类型的计算机可读存储器504上。还可以使用数据网络或其它类型的数据计算机通信系统通过从知识库进行传输来对软件进行分布。
虽然已经以特定于结构特征和/或方法动作的语言对主题进行了描述,但是所要理解的是,所附权利要求中所限定的主题并不必然局限于以上所描述的具体特征或动作。相反,以上所描述的具体特征或动作作为实施所述权利要求的示例形式被公开。

Claims (16)

1.在虚拟计算环境中,一种追踪与通过虚拟机以及所述虚拟机的主机机器进行处理的数据分组相关联的事件的方法,包括:
在所述主机机器(102)内,通过第一协议栈(106(a))传输数据分组(116),所述第一协议栈包括第一系列处理组件;
在所述虚拟机内,通过第二协议栈(106(b))传输数据分组(116),所述第二协议栈包括第二系列处理组件;
当所述数据分组(116)通过所述第一和第二协议栈(106(a)和106(b))进行传输时将一个或多个活动标识符(118)与其进行关联(306);
报告(308)来自所述第一和第二协议栈(106(a)和106(b))的处理组件的事件,所报告的事件涉及所述第一和第二协议栈(106(a)和106(b))的处理组件所进行的对数据分组(116)的处理;
利用所报告的事件对所述一个或多个活动标识符(118)进行指定;并且
利用所述数据分组(116)在所述主机机器和虚拟机(104)之间传输所述一个或多个活动标识符(118)中的至少一个。
2.根据权利要求1的方法,进一步包括通过参考利用所报告的事件进行指定的一个或多个活动标识符(118)来识别与单个数据分组(116)相关的事件。
3.根据权利要求1的方法,进一步包括通过参考利用所报告的事件进行指定的一个或多个活动标识符(118)而将从所述第一和第二协议栈(106(a)和106(b))的处理组件所报告的事件中的至少一些事件进行关联。
4.根据权利要求1的方法,进一步包括:
在所述第一协议栈的相邻处理组件之间传送(310)一个或多个活动标识符中的至少一个;并且
在所述第二协议栈的相邻处理组件之间传送(310)活动标识符中的至少一个。
5.根据权利要求1的方法,其中所报告的事件(308)涉及所述第一和第二协议栈的处理组件所遇到的处理异常。
6.根据权利要求1的方法,其中在所述主机机器和虚拟机(104)之间传输进一步包括从所述虚拟机(104)向所述主机机器(102)传输所述数据分组。
7.一种追踪通过第一机器和第二机器进行处理的活动的方法,所述方法包括:
在所述第一机器和第二机器之间传输数据分组(116);
在所述第一机器内,通过一系列处理组件传输每个数据分组;
从所述一系列处理组件中的各个组件报告与所述数据分组相关的日志事件;
将所报告的日志事件与所述数据分组进行关联;
当在所述第一和第二机器之间传输所述数据分组中的个别数据分组时,将活动标识符与所述个别数据分组相关联(306);并且
报告(308)所述活动标识符以链接所报告的第二机器的日志事件以及所述第一机器中所报告的与所述个别数据分组相关的日志事件。
8.根据权利要求7的方法,进一步包括基于与所报告的所述日志事件相关联的活动标识符来识别(404)来自所述第一和第二机器的与所述个别数据分组相关的日志事件。
9.在虚拟计算环境中,一种追踪与通过虚拟机以及所述虚拟机的主机机器进行处理的数据分组相关联的事件的设备,所述设备包括:
用于在所述主机机器(102)内,通过第一协议栈(106(a))传输数据分组(116)的装置,所述第一协议栈包括第一系列处理组件;
用于在所述虚拟机内,通过第二协议栈(106(b))传输数据分组(116)的装置,所述第二协议栈包括第二系列处理组件;
用于当所述数据分组(116)通过所述第一和第二协议栈(106(a)和106(b))进行传输时将一个或多个活动标识符(118)与其进行关联(306)的装置;
用于报告(308)来自所述第一和第二协议栈(106(a)和106(b))的处理组件的事件的装置,所报告的事件涉及所述第一和第二协议栈(106(a)和106(b))的处理组件所进行的对数据分组(116)的处理;
用于利用所报告的事件对所述一个或多个活动标识符(118)进行指定的装置;以及
用于利用所述数据分组(116)在所述主机机器和虚拟机(104)之间传输所述一个或多个活动标识符(118)中的至少一个的装置。
10.根据权利要求9的设备,进一步包括用于通过参考利用所报告的事件进行指定的一个或多个活动标识符(118)来识别与单个数据分组(116)相关的事件的装置。
11.根据权利要求9的设备,进一步包括用于通过参考利用所报告的事件进行指定的一个或多个活动标识符(118)而将从所述第一和第二协议栈(106(a)和106(b))的处理组件所报告的事件中的至少一些事件进行关联的装置。
12.根据权利要求9的设备,进一步包括:
用于在所述第一协议栈的相邻处理组件之间传送(310)一个或多个活动标识符中的至少一个的装置;和
用于在所述第二协议栈的相邻处理组件之间传送(310)活动标识符中的至少一个的装置。
13.根据权利要求9的设备,其中所报告的事件(308)涉及所述第一和第二协议栈的处理组件所遇到的处理异常。
14.根据权利要求9的设备,其中用于在所述主机机器和虚拟机(104)之间传输的装置进一步包括用于从所述虚拟机(104)向所述主机机器(102)传输所述数据分组的装置。
15.一种追踪通过第一机器和第二机器进行处理的活动的设备,所述设备包括:
用于在所述第一机器和第二机器之间传输数据分组(116)的装置;
用于在所述第一机器内,通过一系列处理组件传输每个数据分组的装置;
用于从所述一系列处理组件中的各个组件报告与所述数据分组相关的日志事件的装置;
用于将所报告的日志事件与所述数据分组进行关联的装置;
用于当在所述第一和第二机器之间传输所述数据分组中的个别数据分组时,将活动标识符与所述个别数据分组相关联(306)的装置;以及
用于报告(308)所述活动标识符以链接所报告的第二机器的日志事件以及所述第一机器中所报告的与所述个别数据分组相关的日志事件的装置。
16.根据权利要求15的设备,进一步包括用于基于与所报告的所述日志事件相关联的活动标识符来识别(404)来自所述第一和第二机器的与所述个别数据分组相关的日志事件的装置。
CN201210335483.1A 2011-09-12 2012-09-12 跨机器的事件日志关联 Active CN102882710B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/230,706 2011-09-12
US13/230,706 US8806005B2 (en) 2011-09-12 2011-09-12 Cross-machine event log correlation
US13/230706 2011-09-12

Publications (2)

Publication Number Publication Date
CN102882710A CN102882710A (zh) 2013-01-16
CN102882710B true CN102882710B (zh) 2015-07-29

Family

ID=47483864

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210335483.1A Active CN102882710B (zh) 2011-09-12 2012-09-12 跨机器的事件日志关联

Country Status (4)

Country Link
US (1) US8806005B2 (zh)
EP (1) EP2756383B1 (zh)
CN (1) CN102882710B (zh)
WO (1) WO2013039815A1 (zh)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8959217B2 (en) * 2010-01-15 2015-02-17 Joyent, Inc. Managing workloads and hardware resources in a cloud resource
US8555276B2 (en) 2011-03-11 2013-10-08 Joyent, Inc. Systems and methods for transparently optimizing workloads
US8782224B2 (en) 2011-12-29 2014-07-15 Joyent, Inc. Systems and methods for time-based dynamic allocation of resource management
US9143582B2 (en) * 2013-03-08 2015-09-22 International Business Machines Corporation Interoperability for distributed overlay virtual environments
US9432287B2 (en) 2013-03-12 2016-08-30 International Business Machines Corporation Virtual gateways and implicit routing in distributed overlay virtual environments
US8881279B2 (en) 2013-03-14 2014-11-04 Joyent, Inc. Systems and methods for zone-based intrusion detection
US8677359B1 (en) 2013-03-14 2014-03-18 Joyent, Inc. Compute-centric object stores and methods of use
US9374241B2 (en) 2013-03-14 2016-06-21 International Business Machines Corporation Tagging virtual overlay packets in a virtual networking system
US8943284B2 (en) * 2013-03-14 2015-01-27 Joyent, Inc. Systems and methods for integrating compute resources in a storage area network
US9104456B2 (en) 2013-03-14 2015-08-11 Joyent, Inc. Zone management of compute-centric object stores
US8826279B1 (en) 2013-03-14 2014-09-02 Joyent, Inc. Instruction set architecture for compute-based object stores
US8793688B1 (en) 2013-03-15 2014-07-29 Joyent, Inc. Systems and methods for double hulled virtualization operations
US8775485B1 (en) 2013-03-15 2014-07-08 Joyent, Inc. Object store management operations within compute-centric object stores
US9092238B2 (en) 2013-03-15 2015-07-28 Joyent, Inc. Versioning schemes for compute-centric object stores
US9270619B2 (en) 2013-06-24 2016-02-23 Microsoft Technology Licensing, Llc Logical switch
US9407580B2 (en) 2013-07-12 2016-08-02 Nicira, Inc. Maintaining data stored with a packet
US9282019B2 (en) 2013-07-12 2016-03-08 Nicira, Inc. Tracing logical network packets through physical network
US9197529B2 (en) 2013-07-12 2015-11-24 Nicira, Inc. Tracing network packets through logical and physical networks
US9264330B2 (en) 2013-10-13 2016-02-16 Nicira, Inc. Tracing host-originated logical network packets
US9246935B2 (en) 2013-10-14 2016-01-26 Intuit Inc. Method and system for dynamic and comprehensive vulnerability management
US9313281B1 (en) 2013-11-13 2016-04-12 Intuit Inc. Method and system for creating and dynamically deploying resource specific discovery agents for determining the state of a cloud computing environment
US10158538B2 (en) 2013-12-09 2018-12-18 Nicira, Inc. Reporting elephant flows to a network controller
US9967199B2 (en) 2013-12-09 2018-05-08 Nicira, Inc. Inspecting operations of a machine to detect elephant flows
US9501345B1 (en) * 2013-12-23 2016-11-22 Intuit Inc. Method and system for creating enriched log data
US9323926B2 (en) 2013-12-30 2016-04-26 Intuit Inc. Method and system for intrusion and extrusion detection
US20150304343A1 (en) 2014-04-18 2015-10-22 Intuit Inc. Method and system for providing self-monitoring, self-reporting, and self-repairing virtual assets in a cloud computing environment
US9325726B2 (en) 2014-02-03 2016-04-26 Intuit Inc. Method and system for virtual asset assisted extrusion and intrusion detection in a cloud computing environment
US10133741B2 (en) * 2014-02-13 2018-11-20 Amazon Technologies, Inc. Log data service in a virtual environment
US9866581B2 (en) 2014-06-30 2018-01-09 Intuit Inc. Method and system for secure delivery of information to computing environments
US10757133B2 (en) 2014-02-21 2020-08-25 Intuit Inc. Method and system for creating and deploying virtual assets
US9276945B2 (en) 2014-04-07 2016-03-01 Intuit Inc. Method and system for providing security aware applications
US9419889B2 (en) 2014-03-07 2016-08-16 Nicira, Inc. Method and system for discovering a path of network traffic
US9419874B2 (en) 2014-03-27 2016-08-16 Nicira, Inc. Packet tracing in a software-defined networking environment
US9245117B2 (en) 2014-03-31 2016-01-26 Intuit Inc. Method and system for comparing different versions of a cloud based application in a production environment using segregated backend systems
US11294700B2 (en) 2014-04-18 2022-04-05 Intuit Inc. Method and system for enabling self-monitoring virtual assets to correlate external events with characteristic patterns associated with the virtual assets
US9374389B2 (en) 2014-04-25 2016-06-21 Intuit Inc. Method and system for ensuring an application conforms with security and regulatory controls prior to deployment
US9319415B2 (en) 2014-04-30 2016-04-19 Intuit Inc. Method and system for providing reference architecture pattern-based permissions management
US9900322B2 (en) 2014-04-30 2018-02-20 Intuit Inc. Method and system for providing permissions management
US9330263B2 (en) 2014-05-27 2016-05-03 Intuit Inc. Method and apparatus for automating the building of threat models for the public cloud
US9379956B2 (en) 2014-06-30 2016-06-28 Nicira, Inc. Identifying a network topology between two endpoints
US9553803B2 (en) 2014-06-30 2017-01-24 Nicira, Inc. Periodical generation of network measurement data
US10102082B2 (en) 2014-07-31 2018-10-16 Intuit Inc. Method and system for providing automated self-healing virtual assets
US9473481B2 (en) 2014-07-31 2016-10-18 Intuit Inc. Method and system for providing a virtual asset perimeter
US9588868B2 (en) * 2014-10-08 2017-03-07 International Business Machines Corporation Correlating multiple disjoint events via an operation identifier
US10469342B2 (en) 2014-10-10 2019-11-05 Nicira, Inc. Logical network traffic analysis
US10664535B1 (en) 2015-02-02 2020-05-26 Amazon Technologies, Inc. Retrieving log data from metric data
US9712554B2 (en) 2015-04-09 2017-07-18 Accenture Global Services Limited Event correlation across heterogeneous operations
CN106201942B (zh) * 2015-05-08 2019-05-28 阿里巴巴集团控股有限公司 将计算机设备间事件相关联的方法、设备及系统
US20170168881A1 (en) * 2015-12-09 2017-06-15 Sap Se Process chain discovery across communication channels
US10200306B2 (en) 2017-03-07 2019-02-05 Nicira, Inc. Visualization of packet tracing operation results
US10516728B2 (en) * 2017-03-10 2019-12-24 Microsoft Technology Licensing, Llc Virtual filtering platform in distributed computing systems
US10462182B2 (en) * 2017-05-12 2019-10-29 Vmware, Inc. Thin agent-based SSL offloading
US10873628B2 (en) 2017-06-13 2020-12-22 Oracle International Corporation System and method for non-intrusive context correlation across cloud services
US10608887B2 (en) 2017-10-06 2020-03-31 Nicira, Inc. Using packet tracing tool to automatically execute packet capture operations
US10812499B2 (en) 2017-11-09 2020-10-20 Accenture Global Solutions Limited Detection of adversary lateral movement in multi-domain IIOT environments
US11438252B2 (en) * 2019-04-04 2022-09-06 Microsoft Technology Licensing, Llc Packet drop detection in local networking stack through packet correlation
US11283699B2 (en) 2020-01-17 2022-03-22 Vmware, Inc. Practical overlay network latency measurement in datacenter
CN111367760B (zh) * 2020-02-28 2022-07-19 深圳平安医疗健康科技服务有限公司 日志采集方法及装置、计算机设备、存储介质
US11196628B1 (en) 2020-07-29 2021-12-07 Vmware, Inc. Monitoring container clusters
US11558426B2 (en) 2020-07-29 2023-01-17 Vmware, Inc. Connection tracking for container cluster
US11570090B2 (en) 2020-07-29 2023-01-31 Vmware, Inc. Flow tracing operation in container cluster
US11736436B2 (en) 2020-12-31 2023-08-22 Vmware, Inc. Identifying routes with indirect addressing in a datacenter
US11336533B1 (en) 2021-01-08 2022-05-17 Vmware, Inc. Network visualization of correlations between logical elements and associated physical elements
US11687210B2 (en) 2021-07-05 2023-06-27 Vmware, Inc. Criteria-based expansion of group nodes in a network topology visualization
US11711278B2 (en) 2021-07-24 2023-07-25 Vmware, Inc. Visualization of flow trace operation across multiple sites
US11706109B2 (en) 2021-09-17 2023-07-18 Vmware, Inc. Performance of traffic monitoring actions

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1694095A (zh) * 2004-04-30 2005-11-09 微软公司 实时文件系统修复

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134244A (en) * 1997-08-30 2000-10-17 Van Renesse; Robert Method and system for optimizing layered communication protocols
US6922417B2 (en) 2000-01-28 2005-07-26 Compuware Corporation Method and system to calculate network latency, and to display the same field of the invention
US7281052B2 (en) * 2001-12-14 2007-10-09 International Business Machines Corporation Data tracing identifiers
GB2395578A (en) 2002-11-22 2004-05-26 Ibm Fault tracing in systems with virtualization layers
US7131113B2 (en) 2002-12-12 2006-10-31 International Business Machines Corporation System and method on generating multi-dimensional trace files and visualizing them using multiple Gantt charts
US7392311B2 (en) * 2003-06-19 2008-06-24 International Business Machines Corporation System and method for throttling events in an information technology system
US7546488B2 (en) * 2004-07-02 2009-06-09 Seagate Technology Llc Event logging and analysis in a software system
JP4473766B2 (ja) 2005-04-04 2010-06-02 株式会社日立製作所 計算機システム、ログ収集方法、及びコンピュータプログラム
US7640539B2 (en) 2005-04-12 2009-12-29 International Business Machines Corporation Instruction profiling using multiple metrics
US20070143842A1 (en) * 2005-12-15 2007-06-21 Turner Alan K Method and system for acquisition and centralized storage of event logs from disparate systems
US20080196043A1 (en) 2007-02-08 2008-08-14 David Feinleib System and method for host and virtual machine administration
US8190778B2 (en) * 2007-03-06 2012-05-29 Intel Corporation Method and apparatus for network filtering and firewall protection on a secure partition
US8832682B2 (en) 2008-03-28 2014-09-09 Vmware, Inc. Trace collection for a virtual machine
US7904757B2 (en) * 2008-06-05 2011-03-08 Microsoft Corporation Activity identifier based tracing and troubleshooting
US8493871B2 (en) 2008-11-26 2013-07-23 Riverbed Technology, Inc. End-to end analysis of transactions in networks with traffic-altering devices
US20100223446A1 (en) 2009-02-27 2010-09-02 Microsoft Corporation Contextual tracing
US8650562B2 (en) 2009-06-12 2014-02-11 International Business Machines Corporation Method and apparatus for scalable monitoring of virtual machine environments combining base virtual machine and single monitoring agent for measuring common characteristics and individual virtual machines measuring individualized characteristics
US8289960B2 (en) 2009-06-22 2012-10-16 Citrix Systems, Inc. Systems and methods for N-core tracing
US8619772B2 (en) * 2009-12-21 2013-12-31 Telefonaktiebolaget L M Ericsson (Publ) Tracing support in a router

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1694095A (zh) * 2004-04-30 2005-11-09 微软公司 实时文件系统修复

Also Published As

Publication number Publication date
EP2756383A4 (en) 2015-04-01
US20130067067A1 (en) 2013-03-14
US8806005B2 (en) 2014-08-12
CN102882710A (zh) 2013-01-16
EP2756383B1 (en) 2019-03-06
WO2013039815A1 (en) 2013-03-21
EP2756383A1 (en) 2014-07-23

Similar Documents

Publication Publication Date Title
CN102882710B (zh) 跨机器的事件日志关联
US8601112B1 (en) Method and system for collecting and analyzing time-series data
US9189355B1 (en) Method and system for processing a service request
US9684524B1 (en) Service-oriented system optimization using trace data
US20030055809A1 (en) Methods, systems, and articles of manufacture for efficient log record access
US8042004B2 (en) Diagnosing communications between computer systems
US9317395B2 (en) Usage reporting from a cloud-hosted, distributed system
US8600941B1 (en) System and method for automatic configuration of networked information technology assets for a backup, recovery and archiving application
US20140201762A1 (en) Event handling system and method
EP3014817B1 (en) Hardware management communication protocol
CN107846449A (zh) 调用系统工具的方法、装置、可读存储介质及设备
US8977595B1 (en) Message-recovery file log locating and monitoring
US8520503B2 (en) Supporting application effectiveness in a network environment
EP3553689B1 (en) System and method for automatically securing sensitive data in public cloud using a serverless architecture
US8438271B2 (en) Performing services in a network data processing system
US8161180B1 (en) Method and apparatus for routing a data stream through a plurality of data movers independent of a network interface type
CN109634931B (zh) 一种日志上传方法及装置
US10970152B2 (en) Notification of network connection errors between connected software systems
US10740030B2 (en) Stopping a plurality of central processing units for data collection based on attributes of tasks
US10606714B2 (en) Stopping central processing units for data collection based on event categories of events
Wadhwa et al. Preventing faults: Fault monitoring and proactive fault tolerance in cloud computing
US8799926B1 (en) Active node detection in a failover computing environment
Yang et al. Management as a service for IT service management
CN114237956A (zh) 消息中间件故障定位方法、装置、设备及介质
Chan et al. Oakion Systems Distributed Computing Network

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150630

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150630

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant