欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

  • 用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的方法和系統(tǒng)的制作方法

    文檔序號(hào):10577282閱讀:217來(lái)源:國(guó)知局
    用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的方法和系統(tǒng)的制作方法
    【專利摘要】本發(fā)明涉及一種用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的方法和系統(tǒng)。一種計(jì)算環(huán)境包括在多個(gè)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的多個(gè)軟件程序。每個(gè)軟件程序具有關(guān)聯(lián)的診斷數(shù)據(jù)。每個(gè)端點(diǎn)機(jī)器運(yùn)行診斷代理。所述診斷代理彼此通信。與所述多個(gè)軟件程序交互的監(jiān)視服務(wù)器檢測(cè)與在目標(biāo)端點(diǎn)上運(yùn)行的軟件程序關(guān)聯(lián)的故障,并且提交收集所述故障軟件程序的所述診斷數(shù)據(jù)的請(qǐng)求。將該收集請(qǐng)求提交到不同于所述故障程序的服務(wù)軟件程序。所述服務(wù)軟件程序可以在不同于所述目標(biāo)端點(diǎn)的服務(wù)端點(diǎn)上運(yùn)行。所述服務(wù)軟件程序從在所述目標(biāo)端點(diǎn)上運(yùn)行的診斷代理檢索所請(qǐng)求的診斷數(shù)據(jù)。所述監(jiān)視服務(wù)器然后從所述服務(wù)軟件程序接收所請(qǐng)求的診斷數(shù)據(jù)。
    【專利說(shuō)明】
    用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的方法和系統(tǒng)
    技術(shù)領(lǐng)域
    [0001]本公開(kāi)涉及信息技術(shù)(IT)領(lǐng)域。更具體地說(shuō),本公開(kāi)涉及軟件程序的診斷。以下通過(guò)討論與本公開(kāi)的上下文相關(guān)的技術(shù),介紹本公開(kāi)的背景。但是,即使當(dāng)本討論參考文檔、操作、構(gòu)件等時(shí),也不建議或表示所討論的技術(shù)是現(xiàn)有技術(shù)的一部分或者是與本公開(kāi)相關(guān)的領(lǐng)域中的常識(shí)。
    【背景技術(shù)】
    [0002]軟件程序可能在其操作期間出現(xiàn)故障,尤其是當(dāng)它們?cè)趶?fù)雜環(huán)境中運(yùn)行時(shí),在復(fù)雜環(huán)境中,多個(gè)軟件程序在它們之間交互。當(dāng)發(fā)生這種情況時(shí),通常執(zhí)行診斷活動(dòng);診斷活動(dòng)可以旨在確定故障的原因,以便嘗試修復(fù)故障(通過(guò)永久修復(fù)故障或者僅臨時(shí)繞過(guò)故障)。為此,可以從其中運(yùn)行軟件程序的計(jì)算機(jī)收集診斷數(shù)據(jù)(例如通過(guò)跟蹤軟件程序的執(zhí)行而生成的日志文件);對(duì)該診斷數(shù)據(jù)的分析提供有關(guān)其中發(fā)生故障的上下文的有用提示(以便促進(jìn)故障原因的確定)。

    【發(fā)明內(nèi)容】

    [0003]在此公開(kāi)了用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的方法、計(jì)算機(jī)程序產(chǎn)品和計(jì)算機(jī)系統(tǒng)的實(shí)施例。所述計(jì)算環(huán)境包括在多個(gè)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的多個(gè)軟件程序。每個(gè)軟件程序具有關(guān)聯(lián)的診斷數(shù)據(jù)。每個(gè)端點(diǎn)計(jì)算機(jī)器運(yùn)行診斷代理。所述診斷代理全部彼此通信。
    [0004]監(jiān)視服務(wù)器與所述軟件程序交互,并且檢測(cè)與在目標(biāo)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的所述軟件程序之一交互的故障。作為響應(yīng),所述監(jiān)視服務(wù)器提交用于收集所述故障軟件程序的診斷數(shù)據(jù)的請(qǐng)求。將該收集請(qǐng)求提交給不同于所述故障軟件程序的服務(wù)軟件程序。在某些實(shí)施例中,所述服務(wù)軟件程序在服務(wù)端點(diǎn)計(jì)算機(jī)器上運(yùn)行,所述服務(wù)端點(diǎn)計(jì)算機(jī)器不同于在其上運(yùn)行所述故障軟件程序的所述目標(biāo)端點(diǎn)計(jì)算機(jī)器。
    [0005]所述服務(wù)軟件程序從在所述目標(biāo)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的診斷代理檢索所請(qǐng)求的診斷數(shù)據(jù)。在某些實(shí)施例中,在所述服務(wù)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的診斷代理提交用于檢索所述故障軟件程序的所述診斷數(shù)據(jù)的請(qǐng)求。在此類實(shí)施例中,將該檢索請(qǐng)求提交給在所述目標(biāo)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的所述診斷代理。所述監(jiān)視服務(wù)器然后從所述服務(wù)軟件程序接收所請(qǐng)求的診斷數(shù)據(jù)。
    【附圖說(shuō)明】
    [0006]本申請(qǐng)中包括的附圖結(jié)合在本說(shuō)明書(shū)中并構(gòu)成本說(shuō)明書(shū)的一部分。它們示出本公開(kāi)的實(shí)施例,并且與描述一起用于解釋本公開(kāi)的原理。附圖僅示出某些實(shí)施例并且不限制本公開(kāi)。為了簡(jiǎn)單起見(jiàn),對(duì)應(yīng)元素使用相同或相似的參考標(biāo)號(hào)表示而且不重復(fù)其解釋,并且每個(gè)實(shí)體的名稱通常用于表示其類型和屬性一例如值、內(nèi)容和表示。
    [0007]圖1是示出根據(jù)本公開(kāi)的實(shí)施例的用于執(zhí)行診斷活動(dòng)的實(shí)例計(jì)算環(huán)境的框圖;
    [0008]圖2是示出根據(jù)本公開(kāi)的實(shí)施例的用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的實(shí)例軟件組件的框圖;
    [0009]圖3A是示出根據(jù)本公開(kāi)的實(shí)施例的監(jiān)視服務(wù)器與在端點(diǎn)計(jì)算機(jī)器上運(yùn)行的軟件程序之間的實(shí)例交互的框圖;
    [0010]圖3B是示出根據(jù)本公開(kāi)的實(shí)施例的監(jiān)視服務(wù)器與在端點(diǎn)計(jì)算機(jī)器上運(yùn)行的軟件程序之間的交互的實(shí)例故障的框圖;
    [0011]圖3C是示出根據(jù)本公開(kāi)的實(shí)施例的用于收集故障軟件程序的診斷數(shù)據(jù)的請(qǐng)求從監(jiān)視服務(wù)器到服務(wù)軟件程序的實(shí)例提交的框圖;
    [0012]圖3D是示出根據(jù)本公開(kāi)的實(shí)施例的監(jiān)視服務(wù)器從服務(wù)軟件程序進(jìn)行故障軟件程序的診斷數(shù)據(jù)的實(shí)例接收的框圖;
    [0013]圖4A是示出根據(jù)本公開(kāi)的實(shí)施例的由計(jì)算環(huán)境中的監(jiān)視服務(wù)器、監(jiān)視代理和診斷代理執(zhí)行的實(shí)例診斷活動(dòng)的活動(dòng)圖的第一部分;
    [0014]圖4B是示出根據(jù)本公開(kāi)的實(shí)施例的由計(jì)算環(huán)境中的監(jiān)視服務(wù)器、監(jiān)視代理和診斷代理執(zhí)行的實(shí)例診斷活動(dòng)的活動(dòng)圖的第二部分。
    [0015]雖然本發(fā)明易于具有各種修改和替代形式,但是在附圖中通過(guò)實(shí)例的方式示出了本發(fā)明的特定實(shí)施例并將在此進(jìn)行詳細(xì)描述。但是,應(yīng)當(dāng)理解,本發(fā)明并非將本發(fā)明限于描述的特定實(shí)施例。相反,本發(fā)明將覆蓋所有落入本發(fā)明的精神和范圍內(nèi)的修改物、等效物和替代物。
    【具體實(shí)施方式】
    [0016]在特定環(huán)境中,診斷數(shù)據(jù)的收集可以相對(duì)復(fù)雜。典型的實(shí)例是在云計(jì)算(或簡(jiǎn)稱云)環(huán)境中,其中云提供者按需供應(yīng)云服務(wù),這些云提供者在請(qǐng)求時(shí)供應(yīng)、配置和釋放云服務(wù)(向?qū)?yīng)用戶完全隱藏對(duì)應(yīng)實(shí)現(xiàn))。在這種情況下,如在標(biāo)題為“Providing RemoteApplicat1n Logs for Cloud Applicat1ns!;為云應(yīng)用提供遠(yuǎn)程應(yīng)用日志)”并且在2012年10月16日提交的第2014/0109188號(hào)美國(guó)專利申請(qǐng)公開(kāi)(其全部?jī)?nèi)容在此引入作為參考)中描述的,云平臺(tái)可以提供顯示接口的服務(wù)以便遠(yuǎn)程提供部署在該平臺(tái)上的應(yīng)用組件的已存儲(chǔ)應(yīng)用日志;實(shí)例化顯示的接口以便處理從客戶機(jī)中發(fā)送的對(duì)指定應(yīng)用組件的應(yīng)用日志的遠(yuǎn)程請(qǐng)求。此外,如在標(biāo)題為 “Managing Runtime Execut1n of Applicat1ns onCloud Computing Systems(管理應(yīng)用在云計(jì)算系統(tǒng)上的運(yùn)行時(shí)執(zhí)行)”并且在2010年5月5日提交的第8,719,804號(hào)美國(guó)專利(其全部?jī)?nèi)容在此引入作為參考)中描述的,可以使用一種分布式對(duì)等(P2P)方法聚合全局系統(tǒng)狀態(tài)而不需要(或補(bǔ)充)集中監(jiān)視,以便構(gòu)建可擴(kuò)展監(jiān)視系統(tǒng);具體地說(shuō),部署有每個(gè)應(yīng)用實(shí)例的監(jiān)視器可以顯示其狀態(tài)作為屬性元組,這些元組隨著聚合樹(shù)中的更新而傳播。
    [0017]但是在特定情況下,診斷數(shù)據(jù)的收集可以相當(dāng)困難(如果不是不可能)。一個(gè)典型的實(shí)例是當(dāng)不可直接訪問(wèn)具有軟件程序的計(jì)算機(jī)器時(shí)。
    [0018]通常在云環(huán)境中發(fā)生這種情況。例如,在云環(huán)境中,根據(jù)軟件即服務(wù)(SaaS)模型,可以作為云服務(wù)供應(yīng)軟件應(yīng)用。這些軟件應(yīng)用可以與用戶的端點(diǎn)計(jì)算機(jī)器(或簡(jiǎn)稱端點(diǎn))交互;一個(gè)典型的實(shí)例是用于監(jiān)視端點(diǎn)的選定資源的(資源)監(jiān)視應(yīng)用。在這種情況下,每個(gè)軟件應(yīng)用具有在云環(huán)境中運(yùn)行的中央組件,該中央組件與在每個(gè)端點(diǎn)上運(yùn)行的本地組件(即,在監(jiān)視應(yīng)用的情況下,則為從對(duì)應(yīng)監(jiān)視代理接收端點(diǎn)的監(jiān)視數(shù)據(jù)的監(jiān)視服務(wù)器)交互;但是,為了保證用戶的任何信息的隱私性,云提供者可能不以任何其它方式訪問(wèn)端點(diǎn)(除了與對(duì)應(yīng)本地組件通信之外)。
    [0019]因此,每當(dāng)軟件應(yīng)用的任何本地組件發(fā)生故障時(shí),云提供者可能無(wú)法從對(duì)應(yīng)端點(diǎn)中收集任何診斷數(shù)據(jù)。在這種情況下,云提供者改為請(qǐng)求用戶提供所需的診斷數(shù)據(jù)。例如,用戶可以訪問(wèn)其中本地組件發(fā)生故障的端點(diǎn),并且將其診斷數(shù)據(jù)手動(dòng)上傳到云環(huán)境中;但是,該操作耗時(shí)并且容易出錯(cuò)。此外,用戶可以經(jīng)由與云提供者的FTP連接,實(shí)施執(zhí)行相同操作的腳本;但是,F(xiàn)TP連接相對(duì)較慢。在任何情況下,診斷數(shù)據(jù)的收集始終需要用戶的干預(yù);這可能相當(dāng)使人煩惱,并且可能顯著增加修復(fù)任何故障所需的時(shí)間,從而對(duì)對(duì)應(yīng)的服務(wù)質(zhì)量產(chǎn)生不利影響(就客戶滿意度和軟件應(yīng)用的性能而言)。
    [0020]一般地說(shuō),本公開(kāi)基于以協(xié)作方式收集診斷數(shù)據(jù)的理念。具體地說(shuō),一個(gè)方面提供一種用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的方法,其中從不同于故障軟件程序的服務(wù)軟件程序接收故障軟件程序的診斷數(shù)據(jù),該服務(wù)軟件程序從在故障軟件程序的目標(biāo)計(jì)算機(jī)上運(yùn)行的目標(biāo)診斷代理檢索故障軟件程序的診斷數(shù)據(jù)。另一個(gè)方面提供一種用于實(shí)現(xiàn)所述方法的計(jì)算機(jī)程序(和對(duì)應(yīng)的計(jì)算機(jī)程序產(chǎn)品)。另一個(gè)方面提供一種對(duì)應(yīng)的系統(tǒng)。
    [0021]更具體地說(shuō),在獨(dú)立權(quán)利要求中描述本公開(kāi)的一個(gè)或多個(gè)方面,并且在從屬權(quán)利要求中描述本公開(kāi)的有利特性,其中逐字引用在此結(jié)合的所有權(quán)利要求的措辭(其中通過(guò)參考在細(xì)節(jié)上作必要修改后應(yīng)用于每個(gè)其它方面的任何特定方面,提供任何有利特性)。
    [0022]具體參考圖1,示出其中可以應(yīng)用根據(jù)本公開(kāi)的一個(gè)實(shí)施例的解決方案的計(jì)算基礎(chǔ)架構(gòu)100的示意框圖。具體地說(shuō),計(jì)算基礎(chǔ)架構(gòu)100是云(計(jì)算)環(huán)境(按需供應(yīng)云資源)。云環(huán)境100可以基于不同部署模型,具體地說(shuō)公共云(S卩,用于公眾)、私有云(S卩,用于單個(gè)組織)、共同體云(即,用于數(shù)個(gè)組織)或混合云(即,基于不同部署模型的組合)。
    [0023]云環(huán)境100包括一個(gè)或多個(gè)云提供者105(在圖中僅示出一個(gè))。每個(gè)云提供者105是一個(gè)實(shí)體,其供應(yīng)(計(jì)算)資源池作為云服務(wù)(B卩,可以非??焖俚毓?yīng)、配置和釋放的共享資源);在請(qǐng)求時(shí)向云提供者105的用戶供應(yīng)云服務(wù)資源(通常具有虛擬類型,S卩,通過(guò)物理資源的軟件進(jìn)行仿真),以使得每個(gè)用戶對(duì)這些資源具有單獨(dú)控制(然后可以使用這些資源,猶如它們是專用的物理資源)??梢愿鶕?jù)數(shù)個(gè)服務(wù)模型供應(yīng)云服務(wù),具體地說(shuō)這些服務(wù)模型是基礎(chǔ)架構(gòu)即服務(wù)或IaaS(使用對(duì)應(yīng)管理軟件供應(yīng)計(jì)算和存儲(chǔ)資源,例如虛擬機(jī)、虛擬磁盤(pán))、平臺(tái)即服務(wù)或PaaS(供應(yīng)軟件平臺(tái),例如數(shù)據(jù)庫(kù)、Web服務(wù)器)、軟件即服務(wù)或SaaS(供應(yīng)軟件應(yīng)用,例如監(jiān)視器、辦公套件)以及網(wǎng)絡(luò)即服務(wù)或NaaS(供應(yīng)連接性服務(wù),例如VPN、IP地址)。
    [0024]用戶通過(guò)(通信)網(wǎng)絡(luò)110連接到云提供者105。為此,云提供者105顯示用于訪問(wèn)它的前端組件。此外,云提供者105具有實(shí)際上實(shí)現(xiàn)供應(yīng)的云資源的后端組件,例如在一個(gè)或多個(gè)服務(wù)器場(chǎng)(在圖中未示出)中組織的大量服務(wù)器計(jì)算機(jī)器(或簡(jiǎn)稱服務(wù)器);不可從外部訪問(wèn)云提供者105的后端組件,以使得用戶完全不知道其位置和配置。
    [0025]在本公開(kāi)的上下文中,云提供者105提供的云資源包括根據(jù)SaaS模型供應(yīng)的軟件應(yīng)用(其中云基礎(chǔ)架構(gòu)100是公共的,具有屬于通過(guò)因特網(wǎng)訪問(wèn)的第三方的云提供者105)。例如,這些軟件應(yīng)用可以包括按需作為服務(wù)供應(yīng)的(性能)監(jiān)視應(yīng)用。在這種情況下,云提供者105的一般用戶可以利用監(jiān)視應(yīng)用來(lái)監(jiān)視其一個(gè)或多個(gè)端點(diǎn)計(jì)算機(jī)器(或簡(jiǎn)稱端點(diǎn))115(例如,一個(gè)或多個(gè)數(shù)據(jù)中心的服務(wù)器)的選定(軟件和/或硬件)資源。用戶使用其一個(gè)或多個(gè)客戶機(jī)計(jì)算機(jī)(或簡(jiǎn)稱客戶機(jī))120(例如,具有瘦類型)訪問(wèn)監(jiān)視應(yīng)用(例如,用于配置和報(bào)告目的)。
    [0026]云基礎(chǔ)架構(gòu)100的每個(gè)計(jì)算機(jī)(S卩,云提供者105的服務(wù)器、用戶的端點(diǎn)115和客戶機(jī)120)包括數(shù)個(gè)單元,這些單元并行連接到總線結(jié)構(gòu)125 (具有根據(jù)云基礎(chǔ)架構(gòu)100中的計(jì)算機(jī)的實(shí)際功能而適當(dāng)擴(kuò)展的架構(gòu))。詳細(xì)地說(shuō),一個(gè)或多個(gè)微處理器(μΡ)130控制計(jì)算機(jī)的操作;微處理器130將RAM 135用作工作存儲(chǔ)器,并且ROM 140存儲(chǔ)用于引導(dǎo)計(jì)算機(jī)的基本代碼。計(jì)算機(jī)器還具備大容量存儲(chǔ)器,其包括一個(gè)或多個(gè)硬盤(pán)145和驅(qū)動(dòng)器150以便讀取/寫(xiě)入可移動(dòng)存儲(chǔ)單元155(例如,光盤(pán))。此外,計(jì)算機(jī)器具有輸入/輸出(I/O)單元160(例如,鍵盤(pán)、鼠標(biāo)和顯示器)。網(wǎng)絡(luò)適配器(NIC)165用于將計(jì)算機(jī)器連接到網(wǎng)絡(luò)110。具體地說(shuō),在云提供者105的服務(wù)器的情況下,硬盤(pán)145可以由其服務(wù)器場(chǎng)的存儲(chǔ)單元提供,并且驅(qū)動(dòng)器150和/或I/O單元160可以由其控制臺(tái)提供。
    [0027]現(xiàn)在參考圖2,示出可以用于實(shí)現(xiàn)根據(jù)本公開(kāi)的一個(gè)實(shí)施例的解決方案的主要軟件組件。
    [0028]使用參考標(biāo)號(hào)200將所有軟件組件(程序和數(shù)據(jù))表示為一個(gè)整體。軟件組件200通常存儲(chǔ)在大容量存儲(chǔ)器中,并且當(dāng)運(yùn)行程序時(shí)(至少部分地)加載到對(duì)應(yīng)計(jì)算機(jī)的工作存儲(chǔ)器中。程序最初例如從可移動(dòng)存儲(chǔ)單元或者從網(wǎng)絡(luò)安裝到大容量存儲(chǔ)器中。在這方面,每個(gè)軟件組件可以表示一個(gè)模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包括一個(gè)或多個(gè)用于實(shí)現(xiàn)指定邏輯功能的可執(zhí)行指令。
    [0029]具體地說(shuō),一般用戶的每個(gè)端點(diǎn)115運(yùn)行一個(gè)或多個(gè)(功能)軟件程序。例如,這些軟件程序包括部署代理203,其用于(與部署服務(wù)器協(xié)作,該部署服務(wù)器在云提供者的一個(gè)或多個(gè)服務(wù)器上運(yùn)行,在圖中未示出)在端點(diǎn)115上部署其它軟件程序。
    [0030]在所述實(shí)例中,部署代理203已部署監(jiān)視代理205,其用于監(jiān)視端點(diǎn)115的選定(被監(jiān)視)資源(例如,處理能力、工作存儲(chǔ)器、操作系統(tǒng)、應(yīng)用程序)。為此,監(jiān)視代理205訪問(wèn)存儲(chǔ)監(jiān)視代理205的(監(jiān)視)配置的(本地)監(jiān)視配置儲(chǔ)存庫(kù)210,以便控制對(duì)應(yīng)的監(jiān)視活動(dòng)(例如,要測(cè)量的被監(jiān)視資源的度量、其測(cè)量的頻率)。監(jiān)視代理205收集監(jiān)視數(shù)據(jù),將監(jiān)視數(shù)據(jù)保存到(本地)監(jiān)視數(shù)據(jù)儲(chǔ)存庫(kù)215中;監(jiān)視數(shù)據(jù)包括隨時(shí)間測(cè)量的被監(jiān)視資源的度量值(例如,指示硬件資源的消耗,例如其百分比,或者軟件資源的使用,例如其每秒處理的事務(wù))。監(jiān)視代理205還被配備為通過(guò)將與其相關(guān)的日志數(shù)據(jù)連續(xù)保存到(本地)日志數(shù)據(jù)儲(chǔ)存庫(kù)220中,跟蹤其執(zhí)行;日志數(shù)據(jù)記錄在監(jiān)視代理205的執(zhí)行期間發(fā)生的選定事件的指示(例如,正常操作、需要?jiǎng)幼饕员惴乐瑰e(cuò)誤的警告狀況、導(dǎo)致故障的錯(cuò)誤狀況)。
    [0031]云提供者的一個(gè)或多個(gè)服務(wù)器(在圖中僅示出一個(gè),使用參考標(biāo)號(hào)225表示)運(yùn)行監(jiān)視服務(wù)器230(不可由用戶訪問(wèn)),監(jiān)視服務(wù)器230實(shí)現(xiàn)(根據(jù)SaaS模型)作為服務(wù)向一個(gè)或多個(gè)對(duì)應(yīng)用戶供應(yīng)的監(jiān)視應(yīng)用。為此,監(jiān)視服務(wù)器230與其用戶的端點(diǎn)115的監(jiān)視代理205交互;但是,監(jiān)視服務(wù)器230不能直接訪問(wèn)端點(diǎn)115(以便保證在其上提供的用戶的任何信息的隱私性)。此外,監(jiān)視服務(wù)器230控制(中央)配置儲(chǔ)存庫(kù)235(其存儲(chǔ)每個(gè)用戶的監(jiān)視代理205的監(jiān)視配置)、(中央)監(jiān)視數(shù)據(jù)儲(chǔ)存庫(kù)240(其存儲(chǔ)每個(gè)用戶的監(jiān)視代理205的監(jiān)視數(shù)據(jù))以及(中央)日志數(shù)據(jù)儲(chǔ)存庫(kù)245(其存儲(chǔ)每個(gè)用戶的監(jiān)視代理205的日志數(shù)據(jù))。(例如,云提供者的系統(tǒng)管理員)使用診斷管理器250針對(duì)所有用戶的監(jiān)視代理205執(zhí)行診斷活動(dòng);為此,診斷管理器250訪問(wèn)日志數(shù)據(jù)儲(chǔ)存庫(kù)245。
    [0032]云提供者的一個(gè)或多個(gè)服務(wù)器(與服務(wù)器225相同或不同,在圖中僅示出一個(gè),使用參考標(biāo)號(hào)255表示)顯示監(jiān)視接口 260,其與監(jiān)視服務(wù)器230通信。每個(gè)用戶的客戶機(jī)120(在圖中僅示出一個(gè))運(yùn)行瀏覽器265(其通常用于瀏覽因特網(wǎng));在這種情況下,瀏覽器265還用于訪問(wèn)監(jiān)視接口 260以便管理用戶的端點(diǎn)115的監(jiān)視(例如,以便在端點(diǎn)115上創(chuàng)建、更新、刪除、開(kāi)始、停止監(jiān)視活動(dòng),并且下載對(duì)應(yīng)的監(jiān)視報(bào)告)。
    [0033]在根據(jù)本公開(kāi)的一個(gè)實(shí)施例的解決方案中,每個(gè)端點(diǎn)115進(jìn)一步運(yùn)行診斷代理270(以便收集同一用戶的其它端點(diǎn)115的診斷數(shù)據(jù),如下面描述的那樣)。每個(gè)端點(diǎn)115的診斷代理270與對(duì)應(yīng)的監(jiān)視代理205通信,并且與同一用戶的其它端點(diǎn)115的診斷代理270(在圖中未示出)通信。此外,診斷代理270訪問(wèn)存儲(chǔ)診斷代理270的(診斷)配置的(本地)診斷配置儲(chǔ)存庫(kù)275,以便控制對(duì)應(yīng)監(jiān)視代理205的日志數(shù)據(jù)的共享(例如,存儲(chǔ)日志數(shù)據(jù)的文件或文件夾的列表)。診斷代理270相應(yīng)地訪問(wèn)日志數(shù)據(jù)儲(chǔ)存庫(kù)220(即,在診斷配置中指示的其文件/文件夾)ο在這種情況下,監(jiān)視服務(wù)器230進(jìn)一步控制(中央)診斷配置儲(chǔ)存庫(kù)280 (存儲(chǔ)每個(gè)用戶的診斷代理270的診斷配置,這可以由用戶如上所述通過(guò)監(jiān)視接口 260使用他/她的瀏覽器265進(jìn)行管理)。
    [0034]現(xiàn)在參考圖3A-圖3D,示出根據(jù)本公開(kāi)的一個(gè)實(shí)施例的解決方案的示例性應(yīng)用。
    [0035]從圖3A開(kāi)始,在監(jiān)視應(yīng)用的正常操作期間,監(jiān)視服務(wù)器230與所有端點(diǎn)的監(jiān)視代理交互;具體地說(shuō),監(jiān)視服務(wù)器230從對(duì)應(yīng)監(jiān)視代理連續(xù)接收在每個(gè)端點(diǎn)上收集的監(jiān)視數(shù)據(jù)。例如,該圖示出兩個(gè)端點(diǎn),這些端點(diǎn)和對(duì)應(yīng)的軟件組件通過(guò)向其參考標(biāo)號(hào)添加后綴“a”和“b”加以區(qū)分;因此,在這種情況下,監(jiān)視服務(wù)器230從端點(diǎn)115a的監(jiān)視代理205a接收端點(diǎn)115a的監(jiān)視數(shù)據(jù),并且從端點(diǎn)115b的監(jiān)視代理205b接收端點(diǎn)115b的監(jiān)視數(shù)據(jù)。
    [0036]移到圖3B,發(fā)生與(故障)監(jiān)視代理(例如監(jiān)視代理205a)交互的故障。例如,當(dāng)監(jiān)視代理205a崩潰(因?yàn)槠湟韵鹿收?當(dāng)監(jiān)視服務(wù)器230不再接收到對(duì)應(yīng)的監(jiān)視數(shù)據(jù)時(shí)檢測(cè)到該故障)時(shí),可以發(fā)生這種情況;盡管如此,對(duì)應(yīng)的端點(diǎn)115a(及其診斷代理270a)仍然運(yùn)行。
    [0037]在這種情況下,如圖3C中所示,在根據(jù)本公開(kāi)的一個(gè)實(shí)施例的解決方案中,監(jiān)視服務(wù)器230向不同(服務(wù))監(jiān)視代理(S卩,所述實(shí)例中的監(jiān)視代理205b)提交對(duì)監(jiān)視代理205a的日志數(shù)據(jù)的收集請(qǐng)求。監(jiān)視代理205b將收集請(qǐng)求轉(zhuǎn)發(fā)到其(服務(wù))診斷代理270b。轉(zhuǎn)而,診斷代理270b向其(目標(biāo))診斷代理270a提交對(duì)監(jiān)視代理205a的日志數(shù)據(jù)的檢索請(qǐng)求。
    [0038]移到圖3D,響應(yīng)于此,診斷代理270a(從日志數(shù)據(jù)儲(chǔ)存庫(kù)220a)檢索監(jiān)視代理205a的日志數(shù)據(jù)。診斷代理270a然后將監(jiān)視代理205a的日志數(shù)據(jù)返回到診斷代理270b。診斷代理270b將監(jiān)視代理205a的日志數(shù)據(jù)返回到監(jiān)視代理205b。轉(zhuǎn)而,監(jiān)視代理205b將監(jiān)視代理205a的日志數(shù)據(jù)返回到監(jiān)視服務(wù)器230。
    [0039]上述解決方案在診斷代理270a、270b之間實(shí)現(xiàn)一種專門(mén)協(xié)作(對(duì)等)基礎(chǔ)架構(gòu),以便收集其監(jiān)視代理205a、205b的日志數(shù)據(jù)(或者更一般地說(shuō),任何其它軟件程序的任何其它診斷數(shù)據(jù))。
    [0040]這樣,即使當(dāng)不可直接訪問(wèn)其端點(diǎn)115a時(shí),也可以收集(故障)監(jiān)視代理205a的日志數(shù)據(jù)。還可以在不需要端點(diǎn)115a的用戶的任何干預(yù)的情況下獲得該結(jié)果;這避免打攪用戶并且顯著縮短修復(fù)任何故障所需的時(shí)間,同時(shí)對(duì)對(duì)應(yīng)的服務(wù)質(zhì)量產(chǎn)生有利影響(在客戶滿意度和監(jiān)視應(yīng)用的性能方面)。
    [0041]此外,監(jiān)視服務(wù)器230收集日志數(shù)據(jù)仍然通過(guò)利用與監(jiān)視代理205a、205b的(標(biāo)準(zhǔn))通信來(lái)實(shí)現(xiàn)(在這種情況下,使用監(jiān)視代理205b以便收集監(jiān)視代理205a的診斷數(shù)據(jù));因此,通信可以相當(dāng)有效。在任何情況下,診斷代理270a、270b之間的日志數(shù)據(jù)的共享不會(huì)造成任何隱私暴露,因?yàn)樗梢杂捎脩綦S意控制(例如,僅在其端點(diǎn)115a、115b之間)。
    [0042]現(xiàn)在參考圖4A-4B,示出描述涉及實(shí)現(xiàn)根據(jù)本公開(kāi)的一個(gè)實(shí)施例的解決方案的活動(dòng)流程的活動(dòng)圖。
    [0043]具體地說(shuō),該圖表示用于使用方法400針對(duì)上述端點(diǎn)執(zhí)行診斷活動(dòng)的示例性過(guò)程。在這方面,每個(gè)方框可以表示一個(gè)或多個(gè)用于針對(duì)相關(guān)計(jì)算機(jī)器實(shí)現(xiàn)指定邏輯功能的可執(zhí)行指令。
    [0044]從通用端點(diǎn)的部署代理的通道開(kāi)始,在方框402監(jiān)聽(tīng)來(lái)自部署服務(wù)器(在圖中未示出)的任何部署請(qǐng)求。只要與本公開(kāi)相關(guān),當(dāng)已接收用于將新軟件程序(或其任何更新)部署到端點(diǎn)(即,所述實(shí)例中的監(jiān)視代理)上的部署請(qǐng)求時(shí),過(guò)程轉(zhuǎn)到方框404。響應(yīng)于此,通過(guò)以下操作部署監(jiān)視代理:(例如,從圖中未示出的部署庫(kù)中)下載對(duì)應(yīng)的軟件包,并且然后將該軟件包應(yīng)用于端點(diǎn)上,以便相應(yīng)地安裝和配置監(jiān)視代理。
    [0045]現(xiàn)在在方框406進(jìn)行測(cè)試以便驗(yàn)證診斷代理是否已經(jīng)在端點(diǎn)上可用。如果不可用(意味著這是部署在端點(diǎn)上的與其關(guān)聯(lián)的第一個(gè)軟件程序),則在方框408還將診斷代理部署到端點(diǎn)上(包括在監(jiān)視代理的同一軟件包中或者具備專用的軟件包)。繼續(xù)到方框410,以專用過(guò)程啟動(dòng)診斷代理;這樣,診斷代理保持運(yùn)行而不考慮端點(diǎn)的其它軟件程序的任何故障(除非故障有損于整個(gè)端點(diǎn)的操作)。診斷代理在方框412讀取其診斷配置(例如,在一個(gè)或多個(gè)XML文件中),以便確定在端點(diǎn)上運(yùn)行的軟件程序的可以與用戶的其它端點(diǎn)共享的診斷數(shù)據(jù)(即,所述實(shí)例中的監(jiān)視代理的日志數(shù)據(jù));響應(yīng)于診斷配置(在圖中未示出)的任何變化,也執(zhí)行相同的操作?,F(xiàn)在參考方框414,診斷代理發(fā)現(xiàn)可用于用戶的其它端點(diǎn)上的診斷代理(例如,通過(guò)在其內(nèi)聯(lián)網(wǎng)中廣播對(duì)應(yīng)的請(qǐng)求,并且監(jiān)聽(tīng)任何對(duì)應(yīng)的響應(yīng),其它診斷代理也使用同一請(qǐng)求以知曉其是否可用)。過(guò)程然后返回到方框402,等待下一個(gè)部署請(qǐng)求;當(dāng)診斷代理已經(jīng)在端點(diǎn)上可用時(shí),還直接從方框406到達(dá)同一點(diǎn)。
    [0046]通過(guò)完全獨(dú)立的方式,監(jiān)視服務(wù)器在其通道中監(jiān)聽(tīng)來(lái)自其所有用戶的監(jiān)視代理的任何通信。為此(只要與本公開(kāi)相關(guān)),通過(guò)在方框416驗(yàn)證是否已從任何監(jiān)視代理中接收監(jiān)視數(shù)據(jù),連續(xù)執(zhí)行循環(huán)。如果是,則監(jiān)視服務(wù)器在方框418將監(jiān)視數(shù)據(jù)添加到其監(jiān)視數(shù)據(jù)儲(chǔ)存庫(kù)的對(duì)應(yīng)條目。過(guò)程然后返回到方框416以便重復(fù)上述相同操作。相反,如果未接收到監(jiān)視數(shù)據(jù),則在方框420進(jìn)行進(jìn)一步測(cè)試以便驗(yàn)證任何監(jiān)視代理的(監(jiān)視)超時(shí)(例如,等于其測(cè)量周期的1.5-3倍)是否已到期。如果未到期,則在這種情況下過(guò)程也返回到方框416,再次等待監(jiān)視數(shù)據(jù)。相反,當(dāng)監(jiān)視代理的超時(shí)已到期時(shí)(意味著可能已發(fā)生故障,因?yàn)楸O(jiān)視服務(wù)器不再接收到其監(jiān)視數(shù)據(jù)),在方框422提交針對(duì)該監(jiān)視代理的日志數(shù)據(jù)的收集請(qǐng)求。
    [0047]移到通用端點(diǎn)的監(jiān)視代理的通道,在方框424監(jiān)聽(tīng)來(lái)自監(jiān)視服務(wù)器的任何通信。只要與本公開(kāi)相關(guān),當(dāng)已接收到收集請(qǐng)求時(shí),過(guò)程轉(zhuǎn)到方框426 ;此時(shí),活動(dòng)流程根據(jù)收集請(qǐng)求的類型進(jìn)行分支。具體地說(shuō),當(dāng)收集請(qǐng)求是本地請(qǐng)求時(shí),因?yàn)樯婕氨O(jiān)視代理本身的日志數(shù)據(jù)(如在方框422從監(jiān)視服務(wù)器中接收),所以在方框428檢索需要的日志數(shù)據(jù)。在方框430將該日志數(shù)據(jù)返回到監(jiān)視服務(wù)器(其中返回到方框424的監(jiān)視代理的通道中的活動(dòng)流程重復(fù)上述相同操作,為了簡(jiǎn)單起見(jiàn)在圖中未示出)。
    [0048]再次參考監(jiān)視服務(wù)器的通道,在方框422監(jiān)聽(tīng)已向監(jiān)視代理請(qǐng)求的日志數(shù)據(jù)。為此,通過(guò)在方框432驗(yàn)證是否已接收該日志數(shù)據(jù),連續(xù)執(zhí)行循環(huán)。如果是,則監(jiān)視服務(wù)器在方框434將日志數(shù)據(jù)保存到其日志數(shù)據(jù)儲(chǔ)存庫(kù)中(例如,以便由相應(yīng)地被警告的系統(tǒng)管理員對(duì)其進(jìn)行分析)。過(guò)程然后返回到方框416以便重復(fù)上述相同操作。相反,如果尚未接收到日志數(shù)據(jù),則在方框436進(jìn)行進(jìn)一步測(cè)試以便驗(yàn)證對(duì)應(yīng)的(診斷)超時(shí)(例如,等于l-2s)是否已到期。如果未到期,則過(guò)程返回到方框432,再次等待日志數(shù)據(jù)。相反,當(dāng)超時(shí)已到期而未接收到日志數(shù)據(jù)時(shí),活動(dòng)流程下行到方框438。在這種情況下,可能已發(fā)生監(jiān)視代理的故障(例如,它已崩潰);因此,針對(duì)該(故障)監(jiān)視代理選擇不同的(服務(wù))監(jiān)視代理。例如,根據(jù)一個(gè)或多個(gè)對(duì)應(yīng)的度量(例如根據(jù)其端點(diǎn)之間的網(wǎng)絡(luò)連接質(zhì)量所定義的),服務(wù)監(jiān)視代理是最靠近故障監(jiān)視代理的監(jiān)視代理(所有其它監(jiān)視代理未發(fā)生故障)。然后在方框440向服務(wù)監(jiān)視代理提交對(duì)故障監(jiān)視代理的日志數(shù)據(jù)的收集請(qǐng)求。
    [0049]通用端點(diǎn)的監(jiān)視代理在方框424如上所述接收該收集請(qǐng)求,然后轉(zhuǎn)到方框426。在這種情況下,收集請(qǐng)求是遠(yuǎn)程請(qǐng)求,因?yàn)椴簧婕?服務(wù))監(jiān)視代理本身的日志數(shù)據(jù);因此,活動(dòng)流程下行到方框442,其中將收集請(qǐng)求轉(zhuǎn)發(fā)到對(duì)應(yīng)的(服務(wù))診斷代理,并且返回到方框424的服務(wù)監(jiān)視代理的通道中的活動(dòng)流程等待來(lái)自監(jiān)視服務(wù)器的下一個(gè)通信,為了簡(jiǎn)單起見(jiàn)在圖中未示出。
    [0050]移到通用端點(diǎn)的診斷代理的通道,在方框444監(jiān)聽(tīng)來(lái)自其監(jiān)視代理或者來(lái)自其它診斷代理的任何請(qǐng)求。在已接收請(qǐng)求之后,過(guò)程立即轉(zhuǎn)到方框446;此時(shí),活動(dòng)流程根據(jù)請(qǐng)求的類型進(jìn)行分支。具體地說(shuō),當(dāng)(服務(wù))診斷代理(在方框442從其服務(wù)監(jiān)視代理)已接收針對(duì)故障監(jiān)視代理的日志數(shù)據(jù)的收集請(qǐng)求時(shí),在方框448向?qū)?yīng)的(目標(biāo))診斷代理提交針對(duì)故障監(jiān)視代理的日志數(shù)據(jù)的對(duì)應(yīng)檢索請(qǐng)求。
    [0051]服務(wù)診斷代理然后開(kāi)始監(jiān)聽(tīng)故障監(jiān)視代理的日志數(shù)據(jù)。為此,通過(guò)在方框450驗(yàn)證是否已接收該日志數(shù)據(jù),連續(xù)執(zhí)行循環(huán)。如果是,則服務(wù)診斷代理在方框452將日志數(shù)據(jù)返回到其服務(wù)監(jiān)視代理。相反,如果尚未接收日志數(shù)據(jù),則在方框454進(jìn)行進(jìn)一步測(cè)試以便驗(yàn)證對(duì)應(yīng)的(檢索)超時(shí)(例如,等于l-2s)是否已到期。如果未到期,則過(guò)程返回到方框450,再次等待日志數(shù)據(jù)。相反,當(dāng)超時(shí)已到期而未接收到日志數(shù)據(jù)時(shí),活動(dòng)流程下行到方框456。在這種情況下,將故障監(jiān)視代理的日志數(shù)據(jù)設(shè)置為來(lái)自其目標(biāo)診斷代理的缺失響應(yīng)的指示,意味著可能已發(fā)生對(duì)應(yīng)(目標(biāo))端點(diǎn)的故障(例如,全局故障或完全停止);服務(wù)診斷代理然后如上所述將該日志數(shù)據(jù)返回到其服務(wù)監(jiān)視代理。返回到方框446,當(dāng)(目標(biāo))診斷代理已從另一個(gè)(服務(wù))診斷代理接收其(故障)監(jiān)視代理的檢索請(qǐng)求(如上所述在方框448)時(shí),過(guò)程下行到方框458;此時(shí),目標(biāo)診斷代理檢索其故障監(jiān)視代理的日志數(shù)據(jù)。繼續(xù)到方框460,目標(biāo)診斷代理將該日志數(shù)據(jù)返回到服務(wù)診斷代理(以便如上所述在方框450對(duì)其進(jìn)行接收)。在任何情況下,診斷代理的通道中的活動(dòng)流程都從方框452、方框456或方框460返回到方框444以便重復(fù)上述相同操作,為了簡(jiǎn)單起見(jiàn)在圖中未示出。
    [0052]再次參考(服務(wù))監(jiān)視代理的通道,在方框462監(jiān)聽(tīng)已在方框442請(qǐng)求的故障監(jiān)視代理的日志數(shù)據(jù)。在已接收該日志數(shù)據(jù)之后,在方框464立即將其返回到監(jiān)視服務(wù)器(其中返回到方框424的服務(wù)監(jiān)視代理的通道中的活動(dòng)流程重復(fù)上述相同操作,為了簡(jiǎn)單起見(jiàn)在圖中未示出)。
    [0053]返回到監(jiān)視服務(wù)器的通道,在方框466監(jiān)聽(tīng)已在方框440向服務(wù)監(jiān)視代理請(qǐng)求的故障監(jiān)視代理的日志數(shù)據(jù)。在已接收該日志數(shù)據(jù)之后,監(jiān)視服務(wù)器在方框468立即將其保存到其日志數(shù)據(jù)儲(chǔ)存庫(kù)中。過(guò)程然后返回到方框416以便重復(fù)上述相同操作。
    [0054]
    [0055]―地,為了滿足本地和特定要求,所屬技術(shù)領(lǐng)域的技術(shù)人員可以將許多邏輯和/或物理修改和變化應(yīng)用于本公開(kāi)。更具體地說(shuō),盡管參考其一個(gè)或多個(gè)實(shí)施例通過(guò)某種程度的特殊性描述了本公開(kāi),但應(yīng)該理解,在形式和細(xì)節(jié)上進(jìn)行各種省略、替換和更改以及其它實(shí)施例是可能的。具體地說(shuō),甚至可以在未在上面描述中給出特定細(xì)節(jié)(例如數(shù)值)的情況下實(shí)現(xiàn)本公開(kāi)的不同實(shí)施例,以便提供對(duì)本公開(kāi)的更徹底理解;相反,可能已省略或簡(jiǎn)化公知的特性,以便不會(huì)由于不必要的細(xì)節(jié)而使描述變得模糊不清。此外,明確旨在可以將結(jié)合本公開(kāi)的任何實(shí)施例描述的特定元素和/或方法步驟作為總體設(shè)計(jì)選擇問(wèn)題而結(jié)合在任何其它實(shí)施例中。在任何情況下,序數(shù)或其它限定符僅用作標(biāo)記以便區(qū)分具有相同名稱的元素,而它們本身并不意味著任何優(yōu)先級(jí)、優(yōu)先順序或次序。此外,術(shù)語(yǔ)包括、包含、具有、含有和涉及(及其任何形式)應(yīng)該旨在具有公開(kāi)、非窮舉的含義(即,不限于所述項(xiàng)目),術(shù)語(yǔ)基于、依賴于、根據(jù)、取決于(及其任何形式)應(yīng)該旨在為非排他關(guān)系(即,涉及可能的其他變量),術(shù)語(yǔ)一/一個(gè)應(yīng)該旨在作為一個(gè)或多個(gè)項(xiàng)目(除非另外明確指示),并且術(shù)語(yǔ)裝置(或任何裝置加功能構(gòu)成)應(yīng)該旨在作為適于或被配置用于執(zhí)行相關(guān)功能的任何結(jié)構(gòu)。
    [0056]例如,一個(gè)實(shí)施例提供一種用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的方法。所述方法包括與在一個(gè)或多個(gè)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的多個(gè)軟件程序交互。所述方法還包括以下步驟以響應(yīng)與在所述端點(diǎn)計(jì)算機(jī)器的目標(biāo)計(jì)算機(jī)上運(yùn)行的軟件程序的故障軟件程序交互的故障。向不同于所述故障軟件程序的軟件程序的服務(wù)軟件程序提交針對(duì)所述故障軟件程序的診斷數(shù)據(jù)的收集請(qǐng)求,以便使得所述服務(wù)軟件程序從在所述目標(biāo)計(jì)算機(jī)上運(yùn)行的目標(biāo)診斷代理檢索所述故障軟件程序的診斷數(shù)據(jù)。從所述服務(wù)軟件程序接收所述故障軟件程序的診斷數(shù)據(jù)。
    [0057]但是,要執(zhí)行的診斷活動(dòng)可以是任何類型(例如,用于在軟件程序的開(kāi)發(fā)期間調(diào)試它們、用于在生產(chǎn)環(huán)境中實(shí)時(shí)或批量恢復(fù)軟件程序的正確操作),并且可以將它們應(yīng)用于任何計(jì)算環(huán)境(參見(jiàn)下面)。所述端點(diǎn)計(jì)算機(jī)器可以采用任何數(shù)量并且可以為任何類型,每一個(gè)運(yùn)行任何數(shù)量和類型的軟件程序(參見(jiàn)下面);與所述軟件程序的交互可以是任何類型(例如,基于請(qǐng)求和對(duì)應(yīng)的響應(yīng))。所述故障可以是任何類型(參見(jiàn)下面),可以以任何方式提交所述收集請(qǐng)求(例如,甚至直接提交,而先前不進(jìn)行任何從軟件程序本身收集診斷數(shù)據(jù)的嘗試);此外,可以以任何方式接收所述診斷數(shù)據(jù)(參見(jiàn)下面),并且診斷數(shù)據(jù)可以是任何類型(例如,系統(tǒng)轉(zhuǎn)儲(chǔ))。
    [0058]在一個(gè)實(shí)施例中,所述提交收集請(qǐng)求的步驟包括向在不同于所述目標(biāo)計(jì)算機(jī)的端點(diǎn)計(jì)算機(jī)器的服務(wù)計(jì)算機(jī)上運(yùn)行的服務(wù)軟件程序提交所述收集請(qǐng)求。
    [0059]但是,不排除向在故障軟件程序的同一目標(biāo)計(jì)算機(jī)上運(yùn)行的服務(wù)軟件程序提交所述收集請(qǐng)求的可能性。
    [0060]在一個(gè)實(shí)施例中,診斷代理在每個(gè)端點(diǎn)計(jì)算機(jī)器上運(yùn)行。所述提交收集請(qǐng)求的步驟包括向服務(wù)軟件程序提交收集請(qǐng)求,以便使得服務(wù)軟件程序通過(guò)服務(wù)計(jì)算機(jī)的診斷代理(作為服務(wù)診斷代理運(yùn)行),從目標(biāo)計(jì)算機(jī)的診斷代理(作為目標(biāo)診斷代理運(yùn)行)檢索故障軟件程序的診斷數(shù)據(jù)。
    [0061]但是,診斷代理可以是任何類型(例如,在專用線程中運(yùn)行)。在任何情況下,不排除服務(wù)軟件程序直接向目標(biāo)診斷代理提交收集請(qǐng)求的可能性。
    [0062]在一個(gè)實(shí)施例中,所述方法包括服務(wù)計(jì)算機(jī)上的以下步驟。服務(wù)軟件程序從遠(yuǎn)程應(yīng)用接收收集請(qǐng)求。服務(wù)軟件程序?qū)⑹占?qǐng)求轉(zhuǎn)發(fā)到服務(wù)診斷代理。服務(wù)診斷代理向目標(biāo)診斷代理提交針對(duì)故障軟件程序的診斷數(shù)據(jù)的檢索請(qǐng)求。服務(wù)診斷代理從目標(biāo)診斷代理接收故障軟件程序的診斷數(shù)據(jù)。服務(wù)診斷代理將故障軟件程序的診斷數(shù)據(jù)返回到服務(wù)軟件程序。服務(wù)軟件程序?qū)⒐收宪浖绦虻脑\斷數(shù)據(jù)返回到遠(yuǎn)程應(yīng)用。
    [0063]但是,可以從任何遠(yuǎn)程應(yīng)用接收收集請(qǐng)求(參見(jiàn)下面),并且可以以任何方式將收集請(qǐng)求提供給服務(wù)診斷代理,例如,使用直接攔截收集請(qǐng)求(例如通過(guò)鉤取技術(shù)或者通過(guò)對(duì)服務(wù)軟件程序進(jìn)行打包)的服務(wù)診斷代理;此外,檢索請(qǐng)求可以是任何類型(例如,收集請(qǐng)求的簡(jiǎn)單轉(zhuǎn)發(fā))。
    [0064]在一個(gè)實(shí)施例中,所述方法包括在目標(biāo)計(jì)算機(jī)上的以下步驟。目標(biāo)診斷代理從服務(wù)診斷代理接收檢索請(qǐng)求。目標(biāo)診斷代理檢索故障軟件程序的診斷數(shù)據(jù)。目標(biāo)診斷代理將故障軟件程序的診斷數(shù)據(jù)返回到服務(wù)診斷代理。
    [0065]但是,可以以任何方式將診斷數(shù)據(jù)提供給服務(wù)軟件程序(例如,通過(guò)僅遠(yuǎn)程啟用其訪問(wèn))。
    [0066]在一個(gè)實(shí)施例中,所述方法進(jìn)一步包括每個(gè)端點(diǎn)計(jì)算機(jī)器上的以下步驟。將軟件程序中的新軟件程序部署到端點(diǎn)計(jì)算機(jī)器上。響應(yīng)于沒(méi)有軟件程序已經(jīng)在端點(diǎn)計(jì)算機(jī)器上可用,將診斷代理中的新診斷代理部署到與新軟件程序的部署關(guān)聯(lián)的端點(diǎn)計(jì)算機(jī)器上。
    [0067]但是,可以以任何方式部署診斷代理,甚至獨(dú)立于軟件程序的部署(例如,通過(guò)當(dāng)運(yùn)送端點(diǎn)計(jì)算機(jī)器時(shí),直接安裝診斷代理)。
    [0068]在一個(gè)實(shí)施例中,所述方法還包括每個(gè)端點(diǎn)計(jì)算機(jī)器上的以下步驟。根據(jù)對(duì)應(yīng)的配置信息,端點(diǎn)計(jì)算機(jī)器的診斷代理與每個(gè)其它端點(diǎn)計(jì)算機(jī)器的診斷代理共享一個(gè)或多個(gè)存儲(chǔ)結(jié)構(gòu)(存儲(chǔ)在端點(diǎn)計(jì)算機(jī)器上運(yùn)行的每個(gè)軟件程序的診斷數(shù)據(jù))。
    [0069]但是,存儲(chǔ)結(jié)構(gòu)可以采用任何數(shù)量(例如,專用于每個(gè)軟件程序或者通用于它們的全部/部分)并且可以是任何類型(例如,以通用日志格式);此外,配置信息可以是任何類型(例如,以JASON格式)。在任何情況下,不排除以下基本實(shí)現(xiàn):其中在診斷代理中對(duì)要共享的診斷數(shù)據(jù)的指示進(jìn)行硬編碼。
    [0070]在一個(gè)實(shí)施例中,所述方法還包括在每個(gè)端點(diǎn)計(jì)算機(jī)器上的以下步驟。端點(diǎn)計(jì)算機(jī)器的診斷代理發(fā)現(xiàn)每個(gè)其它端點(diǎn)計(jì)算機(jī)器的診斷代理。
    [0071]但是,可以以任何方式并且在任何時(shí)間發(fā)現(xiàn)其它端點(diǎn)計(jì)算機(jī)器的診斷代理(例如,由蜘蛛程序定期發(fā)現(xiàn));在任何情況下,整個(gè)計(jì)算環(huán)境及其所有診斷代理的定義可以進(jìn)行集中維護(hù)并且下載到端點(diǎn)計(jì)算機(jī)器上,而不需要在本地執(zhí)行任何發(fā)現(xiàn)活動(dòng)。
    [0072]在一個(gè)實(shí)施例中,所述提交收集請(qǐng)求的步驟包括根據(jù)一個(gè)或多個(gè)選擇準(zhǔn)則,在不同于故障軟件程序的軟件程序中選擇服務(wù)軟件程序。
    [0073]但是,選擇準(zhǔn)則可以采用任何數(shù)量并且可以是任何類型(例如,基于端點(diǎn)計(jì)算機(jī)器的工作負(fù)載);在任何情況下,不排除服務(wù)軟件程序的簡(jiǎn)單隨機(jī)選擇。
    [0074]在一個(gè)實(shí)施例中,所述與多個(gè)軟件程序交互的步驟包括從每個(gè)軟件程序連續(xù)接收操作數(shù)據(jù);所述方法還包括以下步驟:響應(yīng)于未從故障軟件程序接收到操作數(shù)據(jù),檢測(cè)與故障軟件程序交互的故障。
    [0075]但是,操作數(shù)據(jù)可以是任何類型(乃至簡(jiǎn)單心跳信號(hào)),并且它可以具備任何時(shí)序(例如,通過(guò)在它發(fā)生之后,立即用信號(hào)通知每個(gè)臨界條件);此外,可以以任何方式檢測(cè)缺失操作數(shù)據(jù)的接收(例如,僅在其連續(xù)兩次或多次丟失之后)。在任何情況下,可以使用不同、附加或備選技術(shù)確定任何類型的軟件程序故障(例如,當(dāng)請(qǐng)求在最大時(shí)間內(nèi)未接收到對(duì)應(yīng)的響應(yīng)時(shí))。
    [0076]在一個(gè)實(shí)施例中,每個(gè)軟件程序是監(jiān)視應(yīng)用的監(jiān)視代理;所述接收操作數(shù)據(jù)的步驟包括由監(jiān)視應(yīng)用的監(jiān)視服務(wù)器從每個(gè)監(jiān)視代理接收對(duì)應(yīng)端點(diǎn)計(jì)算機(jī)器的監(jiān)視數(shù)據(jù)。
    [0077]但是,軟件程序可以為不同、附加或備選類型(例如,負(fù)載平衡代理、部署代理),具有適用于對(duì)應(yīng)操作數(shù)據(jù)的類似考慮事項(xiàng)(例如,工作負(fù)載數(shù)據(jù)、部署結(jié)果)。
    [0078]在一個(gè)實(shí)施例中,由遠(yuǎn)程實(shí)體執(zhí)行所述提交收集請(qǐng)求的步驟和所述接收診斷數(shù)據(jù)的步驟,該遠(yuǎn)程實(shí)體除了與對(duì)應(yīng)的軟件程序交互之外,無(wú)權(quán)訪問(wèn)端點(diǎn)計(jì)算機(jī)器。
    [0079]但是,可以由任何遠(yuǎn)程實(shí)體(例如,診斷管理器)執(zhí)行相同步驟。在任何情況下,任何事物都不會(huì)禁止在任何其它情形下使用上述相同技術(shù)(即使當(dāng)對(duì)端點(diǎn)計(jì)算機(jī)器的某種訪問(wèn)可用時(shí),例如以便跟蹤其資源使用)。
    [0080]在一個(gè)實(shí)施例中,所述與多個(gè)軟件程序交互的步驟包括由在云計(jì)算環(huán)境中作為服務(wù)提供的軟件應(yīng)用與軟件程序交互。
    [0081]但是,云計(jì)算環(huán)境可以是任何類型(例如,混合型),并且可以以任何方式提供軟件應(yīng)用(例如,根據(jù)PaaS模型)。在任何情況下,還可以將相同技術(shù)應(yīng)用于任何其它計(jì)算環(huán)境(例如,客戶機(jī)-服務(wù)器型)。
    [0082]通常,如果使用等效方法(通過(guò)使用具有更多步驟或其部分的相同功能的類似步驟、刪除不重要的某些步驟,或者添加其它額外步驟)實(shí)現(xiàn)相同解決方案,則類似考慮事項(xiàng)適用;此外,可以以不同順序、同時(shí)或者以交錯(cuò)方式(至少部分)執(zhí)行這些步驟。
    [0083]可以在云計(jì)算環(huán)境中實(shí)現(xiàn)本發(fā)明的一個(gè)或多個(gè)實(shí)施例的部分。首先應(yīng)當(dāng)理解,盡管本公開(kāi)包括關(guān)于云計(jì)算的詳細(xì)描述,但其中記載的技術(shù)方案的實(shí)現(xiàn)卻不限于云計(jì)算環(huán)境,而是能夠結(jié)合現(xiàn)在已知或以后開(kāi)發(fā)的任何其它類型的計(jì)算環(huán)境而實(shí)現(xiàn)。
    [0084]云計(jì)算是一種服務(wù)交付模式,用于對(duì)共享的可配置計(jì)算資源池進(jìn)行方便、按需的網(wǎng)絡(luò)訪問(wèn)??膳渲糜?jì)算資源是能夠以最小的管理成本或與服務(wù)提供者進(jìn)行最少的交互就能快速部署和釋放的資源,例如可以是網(wǎng)絡(luò)、網(wǎng)絡(luò)帶寬、服務(wù)器、處理、內(nèi)存、存儲(chǔ)、應(yīng)用、虛擬機(jī)和服務(wù)。這種云模式可以包括至少五個(gè)特征、至少三個(gè)服務(wù)模型和至少四個(gè)部署模型。
    [0085]特征包括:
    [0086]按需自助式服務(wù):云的消費(fèi)者在無(wú)需與服務(wù)提供者進(jìn)行人為交互的情況下能夠單方面自動(dòng)地按需部署諸如服務(wù)器時(shí)間和網(wǎng)絡(luò)存儲(chǔ)等的計(jì)算能力。
    [0087]廣泛的網(wǎng)絡(luò)接入:計(jì)算能力可以通過(guò)標(biāo)準(zhǔn)機(jī)制在網(wǎng)絡(luò)上獲取,這種標(biāo)準(zhǔn)機(jī)制促進(jìn)了通過(guò)不同種類的瘦客戶機(jī)平臺(tái)或厚客戶機(jī)平臺(tái)(例如移動(dòng)電話、膝上型電腦、個(gè)人數(shù)字助理PDA)對(duì)云的使用。
    [0088]資源池:提供者的計(jì)算資源被歸入資源池并通過(guò)多租戶(mult1-tenant)模式服務(wù)于多重消費(fèi)者,其中按需將不同的實(shí)體資源和虛擬資源動(dòng)態(tài)地分配和再分配。一般情況下,消費(fèi)者不能控制或甚至并不知曉所提供的資源的確切位置,但可以在較高抽象程度上指定位置(例如國(guó)家、州或數(shù)據(jù)中心),因此具有位置無(wú)關(guān)性。
    [0089]迅速?gòu)椥?能夠迅速、有彈性地(有時(shí)是自動(dòng)地)部署計(jì)算能力,以實(shí)現(xiàn)快速擴(kuò)展,并且能迅速釋放來(lái)快速縮小。在消費(fèi)者看來(lái),用于部署的可用計(jì)算能力往往顯得是無(wú)限的,并能在任意時(shí)候都能獲取任意數(shù)量的計(jì)算能力。
    [0090]可測(cè)量的服務(wù):云系統(tǒng)通過(guò)利用適于服務(wù)類型(例如存儲(chǔ)、處理、帶寬和活躍用戶帳號(hào))的某種抽象程度的計(jì)量能力,自動(dòng)地控制和優(yōu)化資源效用??梢员O(jiān)測(cè)、控制和報(bào)告資源使用情況,為服務(wù)提供者和消費(fèi)者雙方提供透明度。
    [0091]服務(wù)模型如下:
    [0092]軟件即服務(wù)(SaaS):向消費(fèi)者提供的能力是使用提供者在云基礎(chǔ)架構(gòu)上運(yùn)行的應(yīng)用。可以通過(guò)諸如網(wǎng)絡(luò)瀏覽器的瘦客戶機(jī)接口(例如基于網(wǎng)絡(luò)的電子郵件)從各種客戶機(jī)設(shè)備訪問(wèn)應(yīng)用。除了有限的特定于用戶的應(yīng)用配置設(shè)置外,消費(fèi)者既不管理也不控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)、存儲(chǔ)、乃至單個(gè)應(yīng)用能力等的底層云基礎(chǔ)架構(gòu)。
    [0093]平臺(tái)即服務(wù)(PaaS):向消費(fèi)者提供的能力是在云基礎(chǔ)架構(gòu)上部署消費(fèi)者創(chuàng)建或獲得的應(yīng)用,這些應(yīng)用利用提供者支持的程序設(shè)計(jì)語(yǔ)言和工具創(chuàng)建。消費(fèi)者既不管理也不控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)或存儲(chǔ)的底層云基礎(chǔ)架構(gòu),但對(duì)其部署的應(yīng)用具有控制權(quán),對(duì)應(yīng)用托管環(huán)境配置可能也具有控制權(quán)。
    [0094]基礎(chǔ)架構(gòu)即服務(wù)(IaaS):向消費(fèi)者提供的能力是消費(fèi)者能夠在其中部署并運(yùn)行包括操作系統(tǒng)和應(yīng)用的任意軟件的處理、存儲(chǔ)、網(wǎng)絡(luò)和其它基礎(chǔ)計(jì)算資源。消費(fèi)者既不管理也不控制底層的云基礎(chǔ)架構(gòu),但是對(duì)操作系統(tǒng)、存儲(chǔ)和其部署的應(yīng)用具有控制權(quán),對(duì)選擇的網(wǎng)絡(luò)組件(例如主機(jī)防火墻)可能具有有限的控制權(quán)。
    [0095]部署模型如下:
    [0096]私有云:云基礎(chǔ)架構(gòu)單獨(dú)為某個(gè)組織運(yùn)行。云基礎(chǔ)架構(gòu)可以由該組織或第三方管理并且可以存在于該組織內(nèi)部或外部。
    [0097]共同體云:云基礎(chǔ)架構(gòu)被若干組織共享并支持有共同利害關(guān)系(例如任務(wù)使命、安全要求、政策和合規(guī)考慮)的特定共同體。共同體云可以由共同體內(nèi)的多個(gè)組織或第三方管理并且可以存在于該共同體內(nèi)部或外部。
    [0098]公共云:云基礎(chǔ)架構(gòu)向公眾或大型產(chǎn)業(yè)群提供并由出售云服務(wù)的組織擁有。
    [0099]混合云:云基礎(chǔ)架構(gòu)由兩個(gè)或更多部署模型的云(私有云、共同體云或公共云)組成,這些云依然是獨(dú)特的實(shí)體,但是通過(guò)使數(shù)據(jù)和應(yīng)用能夠移植的標(biāo)準(zhǔn)化技術(shù)或私有技術(shù)(例如用于云之間的負(fù)載平衡的云突發(fā)流量分擔(dān)技術(shù))綁定在一起。
    [0100]云計(jì)算環(huán)境是面向服務(wù)的,特點(diǎn)集中在無(wú)狀態(tài)性、低耦合性、模塊性和語(yǔ)意的互操作性。云計(jì)算的核心是包含互連節(jié)點(diǎn)網(wǎng)絡(luò)的基礎(chǔ)架構(gòu)。
    [0101]本發(fā)明可以是系統(tǒng)、方法和/或計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)程序產(chǎn)品可以包括計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上載有用于使處理器實(shí)現(xiàn)本發(fā)明的各個(gè)方面的計(jì)算機(jī)可讀程序指令。
    [0102]計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是可以保持和存儲(chǔ)由指令執(zhí)行設(shè)備使用的指令的有形設(shè)備。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)例如可以是一但不限于一電存儲(chǔ)設(shè)備、磁存儲(chǔ)設(shè)備、光存儲(chǔ)設(shè)備、電磁存儲(chǔ)設(shè)備、半導(dǎo)體存儲(chǔ)設(shè)備或者上述的任意合適的組合。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的更具體的例子(非窮舉的列表)包括:便攜式計(jì)算機(jī)盤(pán)、硬盤(pán)、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、可擦式可編程只讀存儲(chǔ)器(EPROMS閃存)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、便攜式壓縮盤(pán)只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能盤(pán)(DVD)、記憶棒、軟盤(pán)、機(jī)械編碼設(shè)備、例如其上存儲(chǔ)有指令的打孔卡或凹槽內(nèi)凸起結(jié)構(gòu)、以及上述的任意合適的組合。這里所使用的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)不被解釋為瞬時(shí)信號(hào)本身,諸如無(wú)線電波或者其它自由傳播的電磁波、通過(guò)波導(dǎo)或其它傳輸介質(zhì)傳播的電磁波(例如,通過(guò)光纖電纜的光脈沖)、或者通過(guò)電線傳輸?shù)碾娦盘?hào)。
    [0103]這里所描述的計(jì)算機(jī)可讀程序指令可以從計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)下載到各個(gè)計(jì)算/處理設(shè)備,或者通過(guò)網(wǎng)絡(luò)、例如因特網(wǎng)、局域網(wǎng)、廣域網(wǎng)和/或無(wú)線網(wǎng)下載到外部計(jì)算機(jī)或外部存儲(chǔ)設(shè)備。網(wǎng)絡(luò)可以包括銅傳輸電纜、光纖傳輸、無(wú)線傳輸、路由器、防火墻、交換機(jī)、網(wǎng)關(guān)計(jì)算機(jī)和/或邊緣服務(wù)器。每個(gè)計(jì)算/處理設(shè)備中的網(wǎng)絡(luò)適配卡或者網(wǎng)絡(luò)接口從網(wǎng)絡(luò)接收計(jì)算機(jī)可讀程序指令,并轉(zhuǎn)發(fā)該計(jì)算機(jī)可讀程序指令,以供存儲(chǔ)在各個(gè)計(jì)算/處理設(shè)備中的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中。
    [0104]用于執(zhí)行本發(fā)明操作的計(jì)算機(jī)可讀程序指令可以是匯編指令、指令集架構(gòu)(ISA)指令、機(jī)器指令、機(jī)器相關(guān)指令、微代碼、固件指令、狀態(tài)設(shè)置數(shù)據(jù)、或者以一種或多種編程語(yǔ)言的任意組合編寫(xiě)的源代碼或目標(biāo)代碼,所述編程語(yǔ)言包括面向?qū)ο蟮木幊陶Z(yǔ)言一諸如Smalltalk、C++等,以及常規(guī)的過(guò)程式編程語(yǔ)言一諸如“C”語(yǔ)言或類似的編程語(yǔ)言。計(jì)算機(jī)可讀程序指令可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過(guò)任意種類的網(wǎng)絡(luò)一包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)—連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來(lái)通過(guò)因特網(wǎng)連接)。在一些實(shí)施例中,通過(guò)利用計(jì)算機(jī)可讀程序指令的狀態(tài)信息來(lái)個(gè)性化電子電路,例如可編程邏輯電路、現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)或可編程邏輯陣列(PLA),該電子電路可以執(zhí)行計(jì)算機(jī)可讀程序指令,從而實(shí)現(xiàn)本發(fā)明的各個(gè)方面。
    [0105]這里參照根據(jù)本發(fā)明實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或框圖描述了本發(fā)明的各個(gè)方面。應(yīng)當(dāng)理解,流程圖和/或框圖的每個(gè)方框以及流程圖和/或框圖中各方框的組合,都可以由計(jì)算機(jī)可讀程序指令實(shí)現(xiàn)。
    [0106]這些計(jì)算機(jī)可讀程序指令可以提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器,從而生產(chǎn)出一種機(jī)器,使得這些指令在通過(guò)計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行時(shí),產(chǎn)生了實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的裝置。也可以把這些計(jì)算機(jī)可讀程序指令存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,這些指令使得計(jì)算機(jī)、可編程數(shù)據(jù)處理裝置和/或其它設(shè)備以特定方式工作,從而,存儲(chǔ)有指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)則包括一個(gè)制造品,其包括實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作的各個(gè)方面的指令。
    [0107]也可以把計(jì)算機(jī)可讀程序指令加載到計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置、或其它設(shè)備上,使得在計(jì)算機(jī)、其它可編程裝置或其它設(shè)備上執(zhí)行一系列操作步驟,以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過(guò)程,從而使得在計(jì)算機(jī)、其它可編程裝置、或其它設(shè)備上執(zhí)行的指令實(shí)現(xiàn)流程圖和/或框圖中的一個(gè)或多個(gè)方框中規(guī)定的功能/動(dòng)作。
    [0108]附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的不同實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)現(xiàn)的體系架構(gòu)、功能和操作。在這點(diǎn)上,流程圖或框圖中的每個(gè)方框可以代表一個(gè)模塊、程序段或指令的一部分,所述模塊、程序段或指令的一部分包含一個(gè)或多個(gè)用于實(shí)現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。在有些作為替換的實(shí)現(xiàn)中,方框中所標(biāo)注的功能可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個(gè)連續(xù)的方框?qū)嶋H上可以基本并行地執(zhí)行,它們有時(shí)也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個(gè)方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動(dòng)作的專用的基于硬件的系統(tǒng)來(lái)實(shí)現(xiàn),或者可以用專用硬件與計(jì)算機(jī)指令的組合來(lái)實(shí)現(xiàn)。
    [0109]出于示例目的給出了對(duì)本發(fā)明的不同實(shí)施例的描述,但所述描述并非旨在是窮舉的或是限于所公開(kāi)的實(shí)施例。在不偏離所述實(shí)施例的范圍和精神的情況下,對(duì)于所屬技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō)許多修改和變化都將是顯而易見(jiàn)的。在此使用的術(shù)語(yǔ)的選擇,旨在解釋實(shí)施例的原理、實(shí)際應(yīng)用或?qū)κ袌?chǎng)中的技術(shù)的技術(shù)改進(jìn),或者使所屬技術(shù)領(lǐng)域的其它普通技術(shù)人員能理解在此所公開(kāi)的實(shí)施例。
    [0110]其他實(shí)施例提供一種系統(tǒng),所述系統(tǒng)包括被配置為執(zhí)行相同方法的步驟的裝置。但是,可以在任何系統(tǒng)上執(zhí)行所述方法。所述系統(tǒng)可以基于不同架構(gòu)(例如,局域網(wǎng)、廣域網(wǎng)、全球網(wǎng)、蜂窩網(wǎng)或衛(wèi)星網(wǎng)),并且它可以利用任何類型的(有線和/或無(wú)線)連接。但是,不排除所述方法在獨(dú)立計(jì)算機(jī)上的實(shí)現(xiàn)(例如,以便針對(duì)在該計(jì)算機(jī)上托管的虛擬機(jī)執(zhí)行診斷活動(dòng))。在任何情況下,用于實(shí)現(xiàn)所述方法的每個(gè)計(jì)算機(jī)可以具有另一種結(jié)構(gòu)或者可以包括類似的元件;此外,可基于物理機(jī)或虛擬機(jī)或它們的任意組合,使用任何代碼執(zhí)行實(shí)體替換計(jì)算機(jī)器。
    [0111]通常,如果系統(tǒng)具有不同結(jié)構(gòu)或者包括等效組件,或者它具有其它操作特征,則類似考慮事項(xiàng)適用。在任何情況下,可以將其每個(gè)組件分成多個(gè)元件,或者可以將兩個(gè)或更多組件組合在一起成為單個(gè)元件;此外,可以復(fù)制每個(gè)元件以便支持并行執(zhí)行對(duì)應(yīng)的操作。此夕卜,除非另外指定,否則不同組件之間的任何交互通常不需要持續(xù),并且可以直接或通過(guò)一個(gè)或多個(gè)中介間接進(jìn)行交互。
    【主權(quán)項(xiàng)】
    1.一種用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的方法,所述計(jì)算環(huán)境包括在多個(gè)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的多個(gè)軟件程序,所述方法包括: 與所述多個(gè)軟件程序交互,所述多個(gè)軟件程序中的每一個(gè)與診斷數(shù)據(jù)關(guān)聯(lián),所述多個(gè)端點(diǎn)計(jì)算機(jī)器中的每一個(gè)運(yùn)行多個(gè)診斷代理中的一個(gè)診斷代理,所述多個(gè)診斷代理彼此通?目; 檢測(cè)與所述多個(gè)軟件程序中的故障軟件程序交互的故障,所述故障軟件程序在所述多個(gè)端點(diǎn)計(jì)算機(jī)器中的目標(biāo)端點(diǎn)計(jì)算機(jī)器上運(yùn)行; 響應(yīng)于檢測(cè)所述故障,向所述多個(gè)軟件程序中的服務(wù)軟件程序提交對(duì)所述故障軟件程序的所述診斷數(shù)據(jù)的收集請(qǐng)求,所述服務(wù)軟件程序不同于所述故障軟件程序;以及 從所述服務(wù)軟件程序接收所述故障軟件程序的所述診斷數(shù)據(jù),由所述服務(wù)軟件程序從在所述目標(biāo)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的所述多個(gè)診斷代理中的目標(biāo)診斷代理來(lái)檢索所述診斷數(shù)據(jù)。2.如權(quán)利要求1所述的方法,其中所述服務(wù)軟件程序在所述多個(gè)端點(diǎn)計(jì)算機(jī)器中的服務(wù)端點(diǎn)計(jì)算機(jī)器上運(yùn)行,所述服務(wù)端點(diǎn)計(jì)算機(jī)器不同于所述目標(biāo)端點(diǎn)計(jì)算機(jī)器。3.如權(quán)利要求2所述的方法,其中由所述服務(wù)軟件程序通過(guò)所述多個(gè)診斷代理中的服務(wù)診斷代理檢索所述診斷數(shù)據(jù),所述服務(wù)診斷代理在所述服務(wù)端點(diǎn)計(jì)算機(jī)器上運(yùn)行。4.如權(quán)利要求3所述的方法,還包括: 由所述服務(wù)軟件程序?qū)⑺鍪占?qǐng)求轉(zhuǎn)發(fā)到所述服務(wù)診斷代理; 由所述服務(wù)診斷代理向所述目標(biāo)診斷代理提交對(duì)所述診斷數(shù)據(jù)的檢索請(qǐng)求; 由所述服務(wù)診斷代理從所述目標(biāo)診斷代理接收所述診斷數(shù)據(jù);以及 由所述服務(wù)診斷代理將所述診斷數(shù)據(jù)返回到所述服務(wù)軟件程序。5.如權(quán)利要求3所述的方法,還包括: 由所述目標(biāo)診斷代理檢索所述診斷數(shù)據(jù);以及 由所述目標(biāo)診斷代理將所述診斷數(shù)據(jù)返回到所述服務(wù)診斷代理。6.如權(quán)利要求1所述的方法,還包括: 將新軟件程序部署到新端點(diǎn)計(jì)算機(jī)器上; 確定未在所述新端點(diǎn)計(jì)算機(jī)器上部署所述多個(gè)軟件程序中的任何一個(gè); 將新診斷代理部署到所述新端點(diǎn)計(jì)算機(jī)器上;以及 由所述新診斷代理建立與所述多個(gè)診斷代理的通信。7.如權(quán)利要求6所述的方法,還包括: 由所述新診斷代理與所述多個(gè)診斷代理共享存儲(chǔ)所述新軟件程序的所述診斷數(shù)據(jù)的一個(gè)或多個(gè)存儲(chǔ)結(jié)構(gòu),根據(jù)與所述新軟件程序關(guān)聯(lián)的配置信息進(jìn)行所述共享。8.如權(quán)利要求6所述的方法,其中建立與所述多個(gè)診斷代理的通信包括發(fā)現(xiàn)所述多個(gè)診斷代理中的每一個(gè)的所述診斷代理。9.如權(quán)利要求1所述的方法,還包括: 在提交所述收集請(qǐng)求之前,根據(jù)一個(gè)或多個(gè)選擇準(zhǔn)則來(lái)選擇所述服務(wù)軟件程序。10.如權(quán)利要求1所述的方法,其中與所述多個(gè)軟件程序交互包括定期從每個(gè)軟件程序接收操作數(shù)據(jù),所述方法還包括: 缺失所述操作數(shù)據(jù)的接收,響應(yīng)于缺失所述操作數(shù)據(jù)的接收而檢測(cè)與所述故障軟件程序交互的故障。11.如權(quán)利要求10所述的方法,其中所述多個(gè)軟件程序中的每一個(gè)是監(jiān)視應(yīng)用的監(jiān)視代理,并且其中接收所述操作數(shù)據(jù)包括由所述監(jiān)視應(yīng)用的監(jiān)視服務(wù)器從每個(gè)監(jiān)視代理接收對(duì)應(yīng)端點(diǎn)計(jì)算機(jī)器的監(jiān)視數(shù)據(jù)。12.如權(quán)利要求1所述的方法,其中由除了與所述多個(gè)軟件程序交互之外無(wú)權(quán)訪問(wèn)所述多個(gè)端點(diǎn)計(jì)算機(jī)器的遠(yuǎn)程實(shí)體來(lái)執(zhí)行提交所述收集請(qǐng)求和接收所述診斷數(shù)據(jù)。13.如權(quán)利要求1所述的方法,其中與所述多個(gè)軟件程序交互包括訪問(wèn)在云計(jì)算環(huán)境中作為服務(wù)提供的軟件應(yīng)用。14.一種用于在計(jì)算環(huán)境中執(zhí)行診斷活動(dòng)的計(jì)算機(jī)系統(tǒng),所述計(jì)算環(huán)境包括在多個(gè)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的多個(gè)軟件程序,所述計(jì)算機(jī)系統(tǒng)包括: 存儲(chǔ)器;以及 處理器,其與所述存儲(chǔ)器通信,其中所述計(jì)算機(jī)系統(tǒng)被配置為執(zhí)行一種方法,所述方法包括: 與所述多個(gè)軟件程序交互,所述多個(gè)軟件程序中的每一個(gè)與診斷數(shù)據(jù)關(guān)聯(lián),所述多個(gè)端點(diǎn)計(jì)算機(jī)器中的每一個(gè)運(yùn)行多個(gè)診斷代理中的一個(gè)診斷代理,所述多個(gè)診斷代理彼此通?目; 檢測(cè)與所述多個(gè)軟件程序中的故障軟件程序交互的故障,所述故障軟件程序在所述多個(gè)端點(diǎn)計(jì)算機(jī)器中的目標(biāo)端點(diǎn)計(jì)算機(jī)器上運(yùn)行; 響應(yīng)于檢測(cè)所述故障,向所述多個(gè)軟件程序中的服務(wù)軟件程序提交對(duì)所述故障軟件程序的所述診斷數(shù)據(jù)的收集請(qǐng)求,所述服務(wù)軟件程序不同于所述故障軟件程序;以及 從所述服務(wù)軟件程序接收所述診斷數(shù)據(jù),由所述服務(wù)軟件程序從在所述目標(biāo)端點(diǎn)計(jì)算機(jī)器上運(yùn)行的所述多個(gè)診斷代理中的目標(biāo)診斷代理來(lái)檢索所述診斷數(shù)據(jù)。15.如權(quán)利要求14所述的計(jì)算機(jī)系統(tǒng),其中所述服務(wù)軟件程序在所述多個(gè)端點(diǎn)計(jì)算機(jī)器中的服務(wù)端點(diǎn)計(jì)算機(jī)器上運(yùn)行,所述服務(wù)端點(diǎn)計(jì)算機(jī)器不同于所述目標(biāo)端點(diǎn)計(jì)算機(jī)器。16.如權(quán)利要求15所述的計(jì)算機(jī)系統(tǒng),其中由所述服務(wù)軟件程序通過(guò)所述多個(gè)診斷代理中的服務(wù)診斷代理檢索所述診斷數(shù)據(jù),所述服務(wù)診斷代理在所述服務(wù)端點(diǎn)計(jì)算機(jī)器上運(yùn)行。17.如權(quán)利要求16所述的計(jì)算機(jī)系統(tǒng),其中所述方法還包括: 由所述服務(wù)軟件程序?qū)⑺鍪占?qǐng)求轉(zhuǎn)發(fā)到所述服務(wù)診斷代理; 由所述服務(wù)診斷代理向所述目標(biāo)診斷代理提交對(duì)所述診斷數(shù)據(jù)的檢索請(qǐng)求; 由所述服務(wù)診斷代理從所述目標(biāo)診斷代理接收所述診斷數(shù)據(jù);以及 由所述服務(wù)診斷代理將所述診斷數(shù)據(jù)返回到所述服務(wù)軟件程序。18.如權(quán)利要求16所述的計(jì)算機(jī)系統(tǒng),其中所述方法還包括: 由所述目標(biāo)診斷代理檢索所述診斷數(shù)據(jù);以及 由所述目標(biāo)診斷代理將所述診斷數(shù)據(jù)返回到所述服務(wù)診斷代理。19.如權(quán)利要求14所述的計(jì)算機(jī)系統(tǒng),其中所述方法還包括: 將新軟件程序部署到新端點(diǎn)計(jì)算機(jī)器上; 確定未在所述新端點(diǎn)計(jì)算機(jī)器上部署所述多個(gè)軟件程序中的任何一個(gè); 將新診斷代理部署到所述新端點(diǎn)計(jì)算機(jī)器上;以及 由所述新診斷代理建立與所述多個(gè)診斷代理的通信。20.如權(quán)利要求19所述的計(jì)算機(jī)系統(tǒng),其中所述方法還包括: 由所述新診斷代理與所述多個(gè)診斷代理共享存儲(chǔ)所述新軟件程序的所述診斷數(shù)據(jù)的一個(gè)或多個(gè)存儲(chǔ)結(jié)構(gòu),根據(jù)與所述新軟件程序關(guān)聯(lián)的配置信息進(jìn)行所述共享。
    【文檔編號(hào)】G06F11/30GK105938443SQ201610116037
    【公開(kāi)日】2016年9月14日
    【申請(qǐng)日】2016年3月1日
    【發(fā)明人】科特 G·德拉, 切塞 G·德拉, A·M·司格羅, P·托羅, I·F·特羅瓦托
    【申請(qǐng)人】國(guó)際商業(yè)機(jī)器公司
    網(wǎng)友詢問(wèn)留言 已有0條留言
    • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
    1
    宣恩县| 定远县| 故城县| 阜新市| 察隅县| 墨竹工卡县| 泰和县| 乌鲁木齐市| 晋江市| 营山县| 肥东县| 喜德县| 五寨县| 绥棱县| 苏尼特右旗| 宜城市| 社会| 黔西| 永顺县| 闻喜县| 乌审旗| 英吉沙县| 谢通门县| 宝丰县| 安平县| 宜君县| 万全县| 准格尔旗| 万山特区| 绥德县| 普定县| 璧山县| 九江县| 宝山区| 阿荣旗| 彰化市| 开鲁县| 北碚区| 河池市| 台前县| 长岭县|