亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

跨機器的事件日志關(guān)聯(lián)的制作方法

文檔序號:6376754閱讀:378來源:國知局
專利名稱:跨機器的事件日志關(guān)聯(lián)的制作方法
跨機器的事件日志關(guān)聯(lián)
背景技術(shù)
網(wǎng)絡(luò)通信和其它計算機輸入/輸出(I/O)操作經(jīng)常使用多種協(xié)議來實施。低層級的協(xié)議通常與設(shè)備硬件或傳輸媒體進行交互,而高層級的協(xié)議則通常與軟件應(yīng)用進行交互。從較低層級協(xié)議到較高層級協(xié)議的一系列協(xié)議處理組件被稱作協(xié)議棧,并且該棧內(nèi)的每個組件被稱作協(xié)議層。諸如I/o分組之類的數(shù)據(jù)對象在其在應(yīng)用和物理傳輸機制之間進行傳輸時通常串行通過協(xié)議棧的層。作為示例,網(wǎng)絡(luò)通信協(xié)議??梢园ㄒ韵聟f(xié)議和相對應(yīng)的層
mi_μ
HTTP應(yīng)用 TCP傳輸
IP互聯(lián)網(wǎng)
以太網(wǎng)鏈路
IEEE 802. 3u物理。出于調(diào)試和檢修的目的,對單個數(shù)據(jù)分組通過協(xié)議棧的進程進行追蹤通常是有用的。一些操作系統(tǒng)允許協(xié)議層報告或以日志記錄與分組處理相關(guān)的事件,并且一些操作系統(tǒng)可以支持知識庫(r印ository)、API (應(yīng)用編程接口)、報告工具,以及用于促成事件報告和日志記錄的其它中心功能。通常,協(xié)議棧的每一層與棧的其它層隔離開來。然而,除了實際的I/O數(shù)據(jù)之外,在層之間傳遞的數(shù)據(jù)分組可以包括所謂的“帶外(out-of-band)”數(shù)據(jù)。為了對通過協(xié)議棧的特定數(shù)據(jù)分組進行追蹤,標(biāo)識符可以與該數(shù)據(jù)分組相關(guān)聯(lián),并且在與該數(shù)據(jù)分組相關(guān)聯(lián)的帶外數(shù)據(jù)中在各層之間進行傳遞。當(dāng)對事件進行日志記錄時,每一層將所述分組標(biāo)識符連同與事件相關(guān)的其它信息一起報告給日志記錄系統(tǒng)。這允許報告服務(wù)匯集與單個分組相關(guān)的所有經(jīng)日志記錄的事件,并且對示出分組在其遍歷協(xié)議棧時被如何處理的軌跡進行重構(gòu)。該方法可以隨各種類型的活動使用,以使得在協(xié)議棧內(nèi)發(fā)生的與單個活動相關(guān)的所有事件都能夠被輕易識別。計算環(huán)境中越來越多虛擬化的使用已經(jīng)帶來了與診斷和檢修相關(guān)的挑戰(zhàn)。在虛擬計算環(huán)境中,單個物理機器可以容納多個虛擬機。包括主機和虛擬機在內(nèi)的每臺機器可以具有其自己的操作系統(tǒng)并且實施其自己的協(xié)議棧。此外,每個協(xié)議??梢元毩⒂谄渌鼌f(xié)議棧進行操作,并且沒有便利的方式將從一個協(xié)議棧所報告的事件與從另一個協(xié)議棧所報告的事件關(guān)聯(lián)起來。

發(fā)明內(nèi)容
本公開描述了允許通過多個計算機的協(xié)議棧對基于活動相關(guān)事件進行追蹤的報告、事件日志記錄和機器間通信的方法,上述計算機可以包括物理機器和虛擬機。與特定活動相關(guān)聯(lián)的數(shù)據(jù)分組與一個或多個活動標(biāo)識符相關(guān)聯(lián)。活動標(biāo)識符進而與結(jié)合該活動所報告或日志記錄的任意事件相關(guān)聯(lián)。當(dāng)數(shù)據(jù)分組從一個機器傳輸?shù)搅硪粋€機器或者從一個協(xié)議棧傳輸?shù)搅硪粋€協(xié)議棧時,活動代碼被起始協(xié)議棧附加至數(shù)據(jù)分組,并且由接收協(xié)議棧的協(xié)議棧在記錄日志時使用或報告。該發(fā)明內(nèi)容被提供以介紹以下具體實施方式
中進一步描述的簡化形式的概念的選擇。該發(fā)明內(nèi)容并非意在標(biāo)識出所要求保護主題的關(guān)鍵特征或?qū)嵸|(zhì)性特征,也并非意在被用來對所要求保護主題的范圍進行限制。


參考附圖給出詳細(xì)描述。在圖中,附圖標(biāo)記最左側(cè)的(一個或多個)數(shù)字標(biāo)識該附圖標(biāo)記首次出現(xiàn)的圖。不同圖中使用共有的附圖標(biāo)記指示相似或相同的項目。圖I是圖示用于將從不同協(xié)議棧和/或不同機器所報告的事件進行關(guān)聯(lián)的技術(shù)的框圖。圖2是進一步圖示用于將來自不同協(xié)議棧和/或不同機器的事件進行關(guān)聯(lián)的技術(shù) 的框圖。圖3A和3B是圖示以促進事件關(guān)聯(lián)的方式進行協(xié)議棧處理的流程圖。圖4是圖示從多個事件日志進行報告的方法的流程圖。圖5是可以被用來實施這里所描述的技術(shù)的示例計算機配置的框圖。
具體實施例方式圖I示出了虛擬計算環(huán)境100,其具有與事件的日志記錄、機器間通信以及I/O協(xié)議棧處理最為相關(guān)的部件和組件。該環(huán)境包含一個或多個虛擬機主機102。為了便于描述,圖I中顯示了兩個主機102,它們利用共用的附圖標(biāo)記所顯示。每個主機102可以實施一個或多個虛擬機104 (a)和104 (b)。每個主機內(nèi)的兩個所圖示的虛擬機的類似組件利用以后綴(a)和(b)加以區(qū)別的相同附圖標(biāo)記所顯示。第一虛擬機104 (a)的組件在每個示例中被示為具有所附后綴(a)。第二虛擬機104 (b)的組件在每個示例中被示為具有所附后綴(b)。在以下討論中,當(dāng)引用任一個所涉及組件或其二者時,為了便于討論有時可以省略后綴。每個虛擬機104具有獨立的操作系統(tǒng)(未示出),其實施協(xié)議棧106。虛擬機104和/或其操作系統(tǒng)還可以實施日志記錄系統(tǒng)108,虛擬機104的各個不同組件可以對其報告分析人員可能感興趣的事件。可以由組件來報告不同類型的錯誤以及其它類型的事件。每個虛擬機104可以執(zhí)行一個或多個應(yīng)用110。在該環(huán)境中,術(shù)語“應(yīng)用”是指在虛擬機104內(nèi)執(zhí)行并且關(guān)于協(xié)議棧106作為消費方和/或制造方的高層級組件。應(yīng)用110可以與協(xié)議棧106的高層進行交互以發(fā)送和接收數(shù)據(jù)分組或其它I/O。應(yīng)用110可以利用日志記錄系統(tǒng)108來報告錯誤和事件。主機102還具有操作系統(tǒng)(未示出),其實施各種功能以支持其虛擬機104的操作,包括用于促成虛擬機和其它物理機器之間的通信的各種I/o協(xié)議棧。作為相關(guān)示例,主機102可以實施虛擬網(wǎng)絡(luò)交換機112,其可以使用一個或多個協(xié)議棧來仿真物理網(wǎng)絡(luò)交換機的功能并且提供與主機102的虛擬機104的通信。虛擬機協(xié)議棧106的最低層級協(xié)議層與虛擬交換機112進行通信以在虛擬機104和主機102之間傳遞數(shù)據(jù)分組。虛擬交換機112還使用相同或附加協(xié)議棧促成與其它物理機器和/或主機的通信。在一些實施方式中,數(shù)據(jù)分組可以通過諸如主機102的單臺機器所實施的多個協(xié)議棧進行傳輸。主機102和/或其操作系統(tǒng)可以維護其自己的日志記錄系統(tǒng)114。虛擬交換機112以及主機102的其它可執(zhí)行組件可以向主機的日志記錄系統(tǒng)114報告錯誤和其它處理事件。在每個主機102內(nèi),數(shù)據(jù)分組116的示例流程由實線所圖示,其具有指示數(shù)據(jù)傳輸方向的箭頭。該示例假設(shè)分組116在第一虛擬機104 (a)內(nèi)發(fā)起并且通過主機102的虛擬交換機112被傳輸至第二虛擬機104 (b)。更具體地,第一機器104 (a)的應(yīng)用110 (a)生成分組116并且將該分組提交至協(xié)議站106 (a)。協(xié)議棧106 (a)通過其協(xié)議層對數(shù)據(jù)分組116進行處理并且隨后將數(shù)據(jù)分組116連同活動標(biāo)識符(AID) 118 一起傳輸至虛擬交換機 112。主機102的虛擬交換機112接收數(shù)據(jù)分組116和相關(guān)聯(lián)的活動標(biāo)識符118并且使 用主機102內(nèi)所實施的一個或多個協(xié)議棧的層執(zhí)行各種處理。活動標(biāo)識符118 (或者如以下所描述的所標(biāo)識的相關(guān)活動)在該處理期間保持與數(shù)據(jù)分組116相關(guān)聯(lián)。最終,虛擬交換機112將分組116和活動標(biāo)識符118傳送至虛擬機104的協(xié)議棧106 (b)。協(xié)議棧106(b)對分組116進行處理并最終將其提供至應(yīng)用110 (b)。使用物理通信網(wǎng)絡(luò)上的適當(dāng)網(wǎng)絡(luò)協(xié)議,數(shù)據(jù)可以以相同方式在兩個主機102之間進行傳輸。當(dāng)在主機之間傳輸數(shù)據(jù)分組116時,活動標(biāo)識符118可以與分組相關(guān)聯(lián)并且隨其傳送以對主機102及其虛擬機104之間的活動進行關(guān)聯(lián)。例如,活動標(biāo)識符118可以在數(shù)據(jù)分組116從一個主機的虛擬機傳輸至另一主機的虛擬機時與之相關(guān)聯(lián)。圖I中的虛線指示日志記錄活動和通信。在分組116的處理期間,協(xié)議棧106(a)的各個層向日志記錄系統(tǒng)108 (a)報告相關(guān)事件,并且協(xié)議棧106 (b)的各個層向日志記錄系統(tǒng)108 (b)報告相關(guān)事件。類似地,虛擬交換機112的組件或協(xié)議層向主機102的日志記錄系統(tǒng)114報告事件。當(dāng)與數(shù)據(jù)分組116的處理相關(guān)的事件被報告給任意的日志記錄系統(tǒng)108和114時,事件指定已經(jīng)與數(shù)據(jù)分組116相關(guān)聯(lián)的活動標(biāo)識符118。報告系統(tǒng)120可以被管理員和/或技術(shù)人員用來在分組116遍歷兩個虛擬機104的協(xié)議棧時對其處理進行分析。報告系統(tǒng)120可以由以上所描述的虛擬或物理機器之一來實施,或者由獨立的計算機或機器來實施。報告系統(tǒng)120能夠訪問虛擬機104的日志記錄系統(tǒng)108以及主機102的日志記錄系統(tǒng)114,并且因此能夠從虛擬機104和/或主機102獲得已經(jīng)進行日志記錄的事件的描述。事件可以通過其活動標(biāo)識符118進行過濾以匯集與單次活動或數(shù)據(jù)傳輸相關(guān)的事件。處理識別和關(guān)聯(lián)與共有的活動相關(guān)的事件之外,報告系統(tǒng)120可以準(zhǔn)備基于時間的報告,其指示各種機器中已經(jīng)發(fā)生的有關(guān)各個數(shù)據(jù)分組或各種類型的活動的事件進行處理的時間記錄(chronology )。圖2圖示了數(shù)據(jù)分組可以如何與活動標(biāo)識符相關(guān)聯(lián)并且以允許對與數(shù)據(jù)分組所表示的活動相關(guān)的事件進行跨機器追蹤的方式在兩臺機器之間傳輸?shù)氖纠?。兩臺機器可以是兩個虛擬機、兩臺物理機器,或者虛擬機和物理機器或主機的組合。每個機器可以處于其自己的操作系統(tǒng)的控制之下,并且每個操作系統(tǒng)可以支持其自己的協(xié)議棧和日志記錄子系統(tǒng)。
圖2圖示了由第一機器所實施的第一協(xié)議棧202,以及由第二機器所實施的第二協(xié)議棧。例如,協(xié)議??梢杂蓤DI的虛擬機104 (a)和主機102來實施,或者由圖I所示機器的任意其它組合來實施。協(xié)議棧202和204的每一個具有多個處理層,它們在圖2中被標(biāo)記為層I、層2、層3和層4。第一協(xié)議棧202在最高協(xié)議層接收數(shù)據(jù)分組206,該最高協(xié)議層在該示例中為層
4。每個處理層可以是獨立的處理組件。中間層從下一個較高層接收分組206并且將其送至下一個較低層直至到達最低層,該最低層在該示例中為層I。最低層通常處于物理媒體層,并且通過物理媒體與另一個協(xié)議棧的對應(yīng)層進行通信。在這種情況下,第一協(xié)議棧202的層I與第二協(xié)議棧204的層I進行通信。
在某些實施例中,協(xié)議棧202和204的每一層被配置為將活動標(biāo)識符208與分組206相關(guān)聯(lián)?;顒訕?biāo)識符可以是GUID (全局唯一標(biāo)識符)或者對于協(xié)議棧所處理的每個不同分組而言唯一的其它代碼。用于接收分組206的第一層(在該示例中為棧202的層4)可以創(chuàng)建活動標(biāo)識符208并且提供活動標(biāo)識符208與分組206的初始關(guān)聯(lián)。當(dāng)將該分組傳遞至相同協(xié)議棧的后續(xù)層時,該活動標(biāo)識符也被傳輸,諸如通過將活動標(biāo)識符包括在與數(shù)據(jù)分組206相關(guān)聯(lián)的帶外數(shù)據(jù)中。例如,協(xié)議??梢岳么鎯ζ骶彌_器來存儲數(shù)據(jù)分組,并且該緩沖器的部分可以被用于存儲活動標(biāo)識符。在第一協(xié)議棧202的每一層執(zhí)行時,其可以與事件日志記錄系統(tǒng)210進行通信。事件日志記錄系統(tǒng)210可以由在其上實施協(xié)議棧202的機器的操作系統(tǒng)或其它組件維護,并且可通過標(biāo)準(zhǔn)化且發(fā)布的API (應(yīng)用編程接口)進行訪問。每一層可以報告各種類型的事件212,包括錯誤、處理異常和診斷信息。當(dāng)?shù)谝粎f(xié)議棧202的層報告與分組206相關(guān)的事件212時,其還報告已經(jīng)與分組206相關(guān)聯(lián)的活動標(biāo)識符208。事件日志記錄系統(tǒng)210接收包括相關(guān)聯(lián)的活動標(biāo)識符208的事件212,并且在事件日志中存儲事件描述。所存儲的事件描述包括活動標(biāo)識符208。在某一時刻,分組206從第一協(xié)議棧202的層I被傳遞至第二協(xié)議棧204的層I。機器之間的這種傳輸可以使用不同的機器間協(xié)議來執(zhí)行,諸如NDIS (網(wǎng)絡(luò)驅(qū)動器接口規(guī)范)、RNDIS (遠程網(wǎng)絡(luò)驅(qū)動器接口規(guī)范)、0DI (開放數(shù)據(jù)鏈路接口)、UDI (統(tǒng)一驅(qū)動器對接)、GRE (同屬選路封裝),等等。RNDIS是可以在層I用于主機和虛擬機之間的傳輸?shù)膮f(xié)議的示例。當(dāng)使用RNDIS時,活動標(biāo)識符208可以作為標(biāo)記/數(shù)值對包括在RNDIS有效載荷內(nèi)。GRE是可以在層I用于諸如主機和另一臺物理機器之間或者兩臺主機之間的兩臺物理機器之間的傳輸?shù)膮f(xié)議的示例。當(dāng)使用GRE時,活動標(biāo)識符208可以嵌入GRE規(guī)范定義的另外未使用的數(shù)據(jù)字段中。例如,GRE規(guī)范所規(guī)定的作為分組報頭一部分的32比特的“關(guān)鍵字”或“序列號”字段可以被用來在分組206從一臺物理機器傳輸至另一臺物理機器期間存儲活動標(biāo)識符208。在接收數(shù)據(jù)分組206之后,第二協(xié)議棧204以與第一協(xié)議棧202相同的方式工作。在第二協(xié)議棧204的每一層執(zhí)行時,其可以與在其上實施協(xié)議棧204的機器的操作系統(tǒng)或其它組件所維護的事件日志記錄系統(tǒng)216進行通信。當(dāng)?shù)诙f(xié)議棧204的層報告與分組206相關(guān)的事件212時,其還報告已經(jīng)與分組206相關(guān)聯(lián)的活動標(biāo)識符208。事件日志記錄系統(tǒng)216接收包括相關(guān)聯(lián)的活動標(biāo)識符208的事件212,并且將事件描述存儲在事件日志218中。所存儲的事件描述包括活動標(biāo)識符208。協(xié)議棧202和204的每一層可以簡單地將相同的活動標(biāo)識符208傳遞至后續(xù)的棧層。也就是說,可以由協(xié)議棧202和204的每個棧層對數(shù)據(jù)分組指定共有的活動標(biāo)識符??商鎿Q地,在一些實施例中,任意棧層可以向數(shù)據(jù)分組206指定新的活動標(biāo)識符208。在這種情況下,棧層可以連同之前所指定的活動標(biāo)識符208 —起向事件日志記錄系統(tǒng)210或216報告新的活動標(biāo)識符208的指定。這允許事件日志記錄系統(tǒng)210和216對協(xié)議棧的不同處理組件所進行的活動標(biāo)識符的指定進行追蹤,并且由此識別相關(guān)的活動標(biāo)識符。在一些實施例中事件日志記錄系統(tǒng)210和216可以創(chuàng)建相關(guān)活動標(biāo)識符的映射以使得事件報告工具可以檢查該映射來確定哪些所報告的事件與相同數(shù)據(jù)分組或活動相關(guān)聯(lián)。報告系統(tǒng)或工具120可以被分析人員用來查看系統(tǒng)表現(xiàn),尤其是用于對數(shù)據(jù)分組206處理中的任意故障進行檢修。報告系統(tǒng)120可以檢查日志記錄系統(tǒng)210和216所產(chǎn)生 的事件日志214和218以找出與特定數(shù)據(jù)分組相關(guān)的任意事件。與特定分組相關(guān)的事件可以通過參考其活動標(biāo)識符來進行識別。在一些實施例中,與特定數(shù)據(jù)分組或活動相關(guān)的所有事件將具有相同的活動標(biāo)識符。在其它實施例中,報告系統(tǒng)120可以參考日志記錄系統(tǒng)210和216所產(chǎn)生的標(biāo)識符映射來識別已經(jīng)結(jié)合某個分組或活動所使用的不同的活動標(biāo)識符,并且可以隨后找出具有不同但相關(guān)的活動標(biāo)識符的那些事件。此外,在活動遍歷多于兩個的機器的情況下,活動標(biāo)識符可以通過所有這些機器進行傳播和追蹤,并且報告系統(tǒng)或工具120可以生成包括來自包括虛擬機和物理機器在內(nèi)的任意數(shù)量的不同機器的經(jīng)日志記錄的事件的活動軌跡。圖3A和3B圖示了追蹤與通過兩個機器所處理的數(shù)據(jù)分組或活動相關(guān)聯(lián)的事件的示例方法。圖3A示出了第一機器所執(zhí)行的動作。圖3B示出了第二機器所執(zhí)行的動作。動作將參考圖2所示的部件進行描述。出于該描述的目的,假設(shè)第一機器實施第一協(xié)議棧202,而第二機器實施第二協(xié)議棧204。動作302包括通過第一協(xié)議棧202傳輸數(shù)據(jù)分組206并且在第一協(xié)議棧202的每一層內(nèi)執(zhí)行特定于協(xié)議的處理。如以上所提到的,第一協(xié)議棧202由第一機器所實施,其可以是虛擬機主機、虛擬機或獨立的物理機器。除了協(xié)議棧202的每個處理組件所執(zhí)行的特定于協(xié)議的處理之外,動作302包括針對第一協(xié)議棧202的一系列處理組件或?qū)又械拿恳粋€所執(zhí)行的一組動作。動作304包括接收數(shù)據(jù)分組206以及之前已經(jīng)與數(shù)據(jù)分組206相關(guān)聯(lián)的任意活動標(biāo)識符。如果當(dāng)前執(zhí)行的棧處理組件處于協(xié)議棧202的最高層級,則數(shù)據(jù)分組206可以在沒有之前存在的活動標(biāo)識符的情況下被接收。動作306包括對數(shù)據(jù)分組206或者與該數(shù)據(jù)分組相關(guān)聯(lián)的活動指定活動標(biāo)識符208。如果活動標(biāo)識符208已經(jīng)與數(shù)據(jù)分組206相關(guān)聯(lián)并且在動作304中被接收,則可以在動作306中指定相同的活動標(biāo)識符208??商鎿Q地,可以創(chuàng)建并指定新的活動標(biāo)識符208,并且新的活動標(biāo)識符的創(chuàng)建和關(guān)聯(lián)可以被報告給第一機器的日志記錄系統(tǒng)210。在一些實施例中,分組206可以隨現(xiàn)有活動標(biāo)識符被接收,然而處理組件可以對分組206指定新的活動標(biāo)識符。在這種情況下,處理組件將之前存在的活動標(biāo)識符和新指定的活動標(biāo)識符都報告給日志記錄系統(tǒng)210,以使得日志記錄系統(tǒng)210能夠維護已經(jīng)由協(xié)議棧的不同處理組件對數(shù)據(jù)分組206的處理所指定的各種活動標(biāo)識符的一個或多個映射。動作308包括向第一機器的日志記錄系統(tǒng)210報告一個或多個事件212,其中所報告的事件212涉及第一協(xié)議棧202的處理組件對數(shù)據(jù)分組206所進行的處理。活動標(biāo)識符208與每個事件212相關(guān)聯(lián)并且連同事件212 —起被報告。也可以報告其它數(shù)據(jù),諸如描述、代碼、時間戳、處理器ID、線程ID等。動作310包括向協(xié)議棧202的下一個處理組件傳送或提供所處理的數(shù)據(jù)分組206?;顒訕?biāo)識符208在分組206被送至下一個處理組件時與其相關(guān)聯(lián)并包括在一起。圖3A的虛流程線指示框302內(nèi)的動作針對協(xié)議棧202的后續(xù)層的可能重復(fù)。該 重復(fù)反復(fù)進行直至數(shù)據(jù)分組已經(jīng)到達第一協(xié)議棧202的最低層級。在分組206已經(jīng)被協(xié)議棧202的最后或最低層級的層處理之后,動作312包括將數(shù)據(jù)分組206和相關(guān)聯(lián)的活動標(biāo)識符208傳送至第二機器,或者傳送至第二機器的第二協(xié)議棧206。動作312可以由協(xié)議棧202的最后或最低層級的層來執(zhí)行,諸如由協(xié)議棧202的層I來執(zhí)行。圖3B顯示了由第二協(xié)議棧204關(guān)于所接收的分組206和相關(guān)聯(lián)的活動標(biāo)識符208所執(zhí)行的動作。動作314包括接收分組206和相關(guān)聯(lián)的活動標(biāo)識符208。該動作可以由第二協(xié)議棧204最低層級的層來執(zhí)行,諸如由協(xié)議棧204的層I來執(zhí)行。動作316包括通過第二協(xié)議棧204傳輸數(shù)據(jù)分組206并且在第二協(xié)議棧204的每一層內(nèi)執(zhí)行特定于協(xié)議的處理。第二協(xié)議棧204由第二機器所實施,該第二機器可以是虛擬機主機、虛擬機或者獨立的物理機器。除了協(xié)議棧204的每個處理組件所執(zhí)行的特定于協(xié)議的處理之外,動作316包括針對第二協(xié)議棧204的一系列處理組件或?qū)又械拿恳粋€所執(zhí)行的一組動作。動作318包括接收數(shù)據(jù)分組206以及之前已經(jīng)與數(shù)據(jù)分組206相關(guān)聯(lián)的任意活動標(biāo)識符208。動作320包括對數(shù)據(jù)分組206或者與該數(shù)據(jù)分組相關(guān)聯(lián)的活動指定活動標(biāo)識符208。這里所指定的活動標(biāo)識符208可以是已經(jīng)與數(shù)據(jù)分組206相關(guān)聯(lián)并且在動作318中所接收的相同標(biāo)識符??商鎿Q地,可以創(chuàng)建并指定新的活動標(biāo)識符208,并且新的活動標(biāo)識符的創(chuàng)建和和關(guān)聯(lián)可以被報告給第二機器的日志記錄系統(tǒng)216。在這種情況下,處理組件向日志記錄系統(tǒng)216報告之前存在的活動標(biāo)識符以及新指定的活動標(biāo)識符,以使得日志記錄系統(tǒng)216能夠維護已經(jīng)被協(xié)議棧204的不同處理組件對數(shù)據(jù)分組206的處理所已指定的各種活動標(biāo)識符的映射。動作322包括向第二機器的日志記錄系統(tǒng)216報告一個或多個事件212,其中所報告的事件212涉及由第二協(xié)議棧204的處理組件對數(shù)據(jù)分組206所進行的處理?;顒訕?biāo)識符208與每個事件212相關(guān)聯(lián)并且連同事件212 —起報告。動作324包括將經(jīng)處理的數(shù)據(jù)分組206傳送或提供至協(xié)議棧204的下一個處理組件?;顒覫D 208在分組206被送至下一個處理組件時與之相關(guān)聯(lián)并且包括在一起。圖3B的虛流程線指示框314內(nèi)的動作針對協(xié)議棧204的后續(xù)層的可能重復(fù)。該重復(fù)反復(fù)進行直至數(shù)據(jù)分組已經(jīng)到達第二協(xié)議棧204的最高層級,此時分組206被送至其接收方應(yīng)用。圖4圖示了追蹤虛擬計算和/或多計算機環(huán)境中的日志事件的示例方法。圖4的動作可以由以上參考圖I和2所討論的報告系統(tǒng)120所執(zhí)行。
動作402包括檢查來自多個機器的事件日志,諸如圖2所示的事件日志214和218。如以上所描述的,該事件日志指定事件以及相對應(yīng)的活動標(biāo)識符?;顒訕?biāo)識符將事件與其它事件進行關(guān)聯(lián),并且與事件有關(guān)的具體數(shù)據(jù)分組或活動進行關(guān)聯(lián)。動作404包括通過參考對應(yīng)于事件日志214中的事件的活動標(biāo)識符而識別來自多個機器的與特定活動相關(guān)的多個事件。更具體地,報告系統(tǒng)120可以定位具有共有的活動標(biāo)識符的所有事件。在其它實施例中,報告系統(tǒng)120可以定位具有相關(guān)活動標(biāo)識符的事件。為了識別相關(guān)的活動標(biāo)識符,報告系統(tǒng)可以檢查已經(jīng)被日志記錄系統(tǒng)210和216所維護的一個或多個映射。動作406包括至少部分地基于所識別的與特定活動相關(guān)的事件而產(chǎn)生活動軌跡408?;顒榆壽E408可以指示與特定活動或數(shù)據(jù)分組相關(guān)的所有事件以及其它信息,諸如時間線、時間記錄、分組有效載荷、描述、錯誤消息和其它檢修信息。

圖5顯示了計算機500的相關(guān)高層級組件,該計算機500作為可以被用來實施以上所描述的技術(shù)的各種類型的計算設(shè)備的示例。例如,每個主機102可以通過計算機500的物理實例來實施。諸如計算機500的計算機還可以被用來實施報告系統(tǒng)120的功能。計算機500可以包括一個或多個處理器502以及計算機可讀存儲器504。以上所描述的日志記錄和報告技術(shù)可以被實施為存在于計算機可讀存儲器內(nèi)的軟件,諸如包括存在于存儲器504內(nèi)供一個或多個和處理器502執(zhí)行的指令集合或序列的一個或多個程序、模塊或例程。作為高層級示例,存儲器可以包含用于支持計算機500內(nèi)的多個虛擬機504的操作的虛擬化支持軟件506。存儲器504還可以包含用于支持以上所描述的日志記錄和報告功能的日志記錄和/或報告軟件508。存儲器504是計算機可讀媒體的示例。計算機可讀媒體包括至少兩種類型的計算機可讀媒體,即計算機存儲媒體和通信媒體。計算機存儲媒體包括以用于存儲諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)的信息的任意方法和技術(shù)所實施的易失性和非易失性、可移動和不可移動的媒體。計算機存儲媒體包括相變隨機訪問存儲器(PRAM)、靜態(tài)隨機訪問存儲器(SRAM)、動態(tài)隨機訪問存儲器(DRAM)、其它類型的隨機訪問存儲器(RAM)、只讀存儲器(ROM)、電可擦可編程只讀存儲器(EEPR0M)、閃存或其它存儲器技術(shù)、光盤只讀存儲器(⑶-ROM)、數(shù)字通用光盤(DVD)或其它光學(xué)存儲、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設(shè)備,或者可以被用來存儲供計算設(shè)備訪問的信息的任意其它非傳輸媒體,但是并不局限于此。與之相比,通信媒體可以體現(xiàn)計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊,或者諸如載波的調(diào)制數(shù)據(jù)信號或其它傳輸機制中的其它數(shù)據(jù)。通信媒體還包括任意信息傳遞媒體。如這里所定義的,計算機存儲媒體并不包括通信媒體。計算機500還可以具有輸入/輸出設(shè)施510,諸如網(wǎng)絡(luò)接口、用戶接口等。用來實施以上所描述的技術(shù)的軟件可以存在于如所顯示的存儲器504中,并且還可以以各種方式以及使用不同裝置進行存儲和分布,諸如通過存儲在包括便攜式和可移動媒體在內(nèi)的不同類型的計算機可讀存儲器504上。還可以使用數(shù)據(jù)網(wǎng)絡(luò)或其它類型的數(shù)據(jù)計算機通信系統(tǒng)通過從知識庫進行傳輸來對軟件進行分布。雖然已經(jīng)以特定于結(jié)構(gòu)特征和/或方法動作的語言對主題進行了描述,但是所要理解的是,所附權(quán)利要求中所限定的主題并不必然局限于以上所描述的具體特征或動作。相反,以上所描述的具體特征或動作作為實施所述權(quán)利要求的示例形式被公開?!?br> 權(quán)利要求
1.在虛擬計算環(huán)境中,一種追蹤與通過虛擬機以及所述虛擬機的主機進行處理的數(shù)據(jù)分組相關(guān)聯(lián)的事件的方法,包括 在所述主機(102)內(nèi),通過第一協(xié)議棧(106 (a))傳輸數(shù)據(jù)分組(116),所述第一協(xié)議棧包括第一系列處理組件; 在所述虛擬機內(nèi),通過第二協(xié)議棧(106 (b))傳輸數(shù)據(jù)分組(116),所述第二協(xié)議棧包括第二系列處理組件; 當(dāng)所述數(shù)據(jù)分組(116)通過所述第一和第二協(xié)議棧(106 (a)和106 (b))進行傳輸時將一個或多個活動標(biāo)識符(118)與其進行關(guān)聯(lián)(306); 報告(308)來自所述第一和第二協(xié)議棧(106 (a)和106 (b))的處理組件的事件,所報告的事件涉及所述第一和第二協(xié)議棧(106 (a)和106 (b))的處理組件所進行的對數(shù)據(jù)分組(116)的處理; 利用所報告的事件對所述一個或多個活動標(biāo)識符(118)進行指定;并且當(dāng)所述數(shù)據(jù)分組(116)在所述主機和虛擬機(104)之間進行傳輸時利用其對所述至少一個活動標(biāo)識符(118)進行指定。
2.根據(jù)權(quán)利要求1的方法,進一步包括通過參考利用所報告的事件進行指定的一個或多個活動標(biāo)識符(118)來識別與單個數(shù)據(jù)分組(116)相關(guān)的事件。
3.根據(jù)權(quán)利要求1的方法,進一步包括通過參考利用所報告的事件進行指定的一個或多個活動標(biāo)識符(118)而將從所述第一和第二協(xié)議棧(106 (a)和106 (b))的處理組件所報告的事件進行關(guān)聯(lián)。
4.根據(jù)權(quán)利要求1的方法,進一步包括 在所述第一協(xié)議棧的相鄰處理組件之間傳送(310)至少一個活動標(biāo)識符;并且 在所述第二協(xié)議棧的相鄰處理組件之間傳送(310)至少一個活動標(biāo)識符。
5.根據(jù)權(quán)利要求1的方法,其中所報告事件(308)涉及所述處理組件所遇到的處理異常。
6.根據(jù)權(quán)利要求1的方法,進一步包括從所述虛擬機(104)向所述主機(102)傳輸所述數(shù)據(jù)分組。
7.—種追蹤通過第一機器和第二機器進行處理的活動的方法,所述方法包括 在所述第一和第二機器之間傳輸數(shù)據(jù)分組(116); 在所述第一機器內(nèi),通過一系列處理組件傳輸每個數(shù)據(jù)分組; 從所述一系列處理組件中的各個組件報告與所述數(shù)據(jù)分組相關(guān)的日志事件; 將所報告的事件與所述數(shù)據(jù)分組進行關(guān)聯(lián); 當(dāng)在所述第一和第二機器之間傳輸個別數(shù)據(jù)分組時,將活動標(biāo)識符與所述個別數(shù)據(jù)分組相關(guān)聯(lián)(306);并且 報告(308 )所述活動標(biāo)識符以鏈接所報告的與所述第一和第二機器中的所述個別數(shù)據(jù)分組相關(guān)的日志事件。
8.根據(jù)權(quán)利要求7的方法,進一步包括基于與所述日志事件相關(guān)聯(lián)的活動標(biāo)識符來識別(404)來自所述第一和第二機器的與所述個別數(shù)據(jù)分組相關(guān)的日志事件。
9.一種追蹤虛擬計算環(huán)境中的日志事件的方法,包括 檢查來自多個機器的事件日志(402),其中所述事件日志指定事件以及相關(guān)聯(lián)的活動標(biāo)識符; 通過參考對應(yīng)于所述事件的活動標(biāo)識符來識別來自所述多個機器的與特定活動相關(guān)的事件(404);并且 至少部分地基于所識別的與特定活動相關(guān)的所識別的事件產(chǎn)生(406)活動軌跡。
10.根據(jù)權(quán)利要求9的方法,其中所述活動軌跡(408)包括來自所述多個機器之中的幾個機器的事件。
11.一種或多種其上存儲計算機可執(zhí)行指令的計算機可讀存儲媒體,所述指令當(dāng)由計算設(shè)備執(zhí)行時,使得所述計算設(shè)備實現(xiàn)如權(quán)利要求I 一 10中的任一個所述的方法。
全文摘要
在具有多個計算機的計算環(huán)境中,與相對應(yīng)活動的標(biāo)識符相關(guān)聯(lián)地對事件進行日志記錄,其中這樣的計算機可以包括虛擬機。當(dāng)與活動相關(guān)聯(lián)的數(shù)據(jù)分組被傳輸至目的地機器時,與所述活動相對應(yīng)的活動標(biāo)識符連同所述數(shù)據(jù)分組一起進行傳輸并且被目的地機器在對其事件進行日志記錄時所使用。這允許來自兩個機器的事件根據(jù)它們所屬于的活動而被關(guān)聯(lián)。
文檔編號G06F9/455GK102882710SQ20121033548
公開日2013年1月16日 申請日期2012年9月12日 優(yōu)先權(quán)日2011年9月12日
發(fā)明者S.P.米里, P.加格, B.舒爾茨, S.K.辛哈爾, M.西瓦庫馬 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1