一種中間件監(jiān)控系統(tǒng)的制作方法
【專利摘要】本發(fā)明一種中間件監(jiān)控系統(tǒng),包括試驗應(yīng)用狀態(tài)監(jiān)控模塊、試驗對象監(jiān)控模塊、監(jiān)控界面模塊;試驗應(yīng)用狀態(tài)監(jiān)控模塊通過中間件系統(tǒng)的交互管理對試驗域中各試驗對象的運行狀態(tài)進行監(jiān)測,獲得狀態(tài)信息;試驗對象監(jiān)控模塊包括試驗對象靜態(tài)信息監(jiān)控模塊和試驗對象動態(tài)信息監(jiān)控模塊,試驗對象靜態(tài)信息監(jiān)控模塊通過解析預(yù)先配置的XML配置文件獲取各試驗對象的靜態(tài)信息;試驗對象動態(tài)信息監(jiān)控模塊通過中間件接口獲取各試驗對象動態(tài)信息;監(jiān)控界面模塊將發(fā)送來的各試驗對象的狀態(tài)信息、靜態(tài)信息、動態(tài)信息顯示出來。本發(fā)明實現(xiàn)了對試驗對象靜態(tài)信息和動態(tài)信息的實時監(jiān)控,可實時獲取試驗域內(nèi)的各試驗對象的屬性和狀態(tài)信息,提高了中間件系統(tǒng)的運行效率。
【專利說明】一種中間件監(jiān)控系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種對中間件運行系統(tǒng)進行實時監(jiān)控的系統(tǒng),屬于虛擬試驗【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]虛擬試驗是使用硬件構(gòu)造試驗環(huán)境,替代實物試驗完成試驗驗證的技術(shù)。中間件可解決虛擬試驗驗證中大系統(tǒng)及復(fù)雜異構(gòu)系統(tǒng)之間的互聯(lián)、互通、互操作,具有跨地域、跨系統(tǒng)、跨平臺的特性。但是,中間件在完成分布式系統(tǒng)通信時,不能準確評估系統(tǒng)的運行狀態(tài),導(dǎo)致通信不準確,若要保證虛擬試驗驗證能正確、高效、穩(wěn)定,需要有相應(yīng)的監(jiān)控工具對中間件系統(tǒng)進行監(jiān)控。
[0003]目前,國內(nèi)外對中間件監(jiān)控技術(shù)展開了一些研究,如《計算機工程與應(yīng)用》中第22期發(fā)表的“基于機群中間件監(jiān)控系統(tǒng)的設(shè)計和實現(xiàn)”提出了一種基于機群中間件的機群監(jiān)控系統(tǒng)ClusterView,能夠及時準確地為系統(tǒng)管理員報告節(jié)點的狀態(tài)信息和機群中網(wǎng)絡(luò)的狀態(tài),它能夠自動發(fā)現(xiàn)機群中節(jié)點的增加和減少,但其并不能完全實時監(jiān)控整個試驗的運行情況。上海交通大學提出的中間件監(jiān)控系統(tǒng)通過對RFID設(shè)備運行狀態(tài)的監(jiān)控來實現(xiàn)系統(tǒng)監(jiān)控,但并不涉及對試驗應(yīng)用狀態(tài)和試驗對象的監(jiān)控。
【發(fā)明內(nèi)容】
[0004]本發(fā)明解決的技術(shù)問題是:克服現(xiàn)有技術(shù)的不足,提供一種中間件監(jiān)控系統(tǒng),解決了虛擬試驗驗證領(lǐng)域的中間件系統(tǒng)執(zhí)行期間不能對試驗應(yīng)用狀態(tài)及試驗對象的靜態(tài)信息和動態(tài)信息進行監(jiān)控的技術(shù)問題,實現(xiàn)對虛擬試驗運行場景的實時監(jiān)控,使試驗執(zhí)行人員能及時清楚試驗的運行信息,為中間件的實時通信提供可靠支撐。
[0005]本發(fā)明的技術(shù)解決方案是:一種中間件監(jiān)控系統(tǒng),包括試驗應(yīng)用狀態(tài)監(jiān)控模塊、試驗對象監(jiān)控模塊、監(jiān)控界面模塊;試驗應(yīng)用狀態(tài)監(jiān)控模塊通過中間件系統(tǒng)的交互管理對試驗域中各試驗對象的運行狀態(tài)進行監(jiān)測,獲得狀態(tài)信息發(fā)送給監(jiān)控界面模塊;試驗對象監(jiān)控模塊包括試驗對象靜態(tài)信息監(jiān)控模塊和試驗對象動態(tài)信息監(jiān)控模塊,試驗對象靜態(tài)信息監(jiān)控模塊通過解析預(yù)先配置的XML配置文件獲取各試驗對象的靜態(tài)信息,并發(fā)送給監(jiān)控界面模塊;試驗對象動態(tài)信息監(jiān)控模塊通過中間件接口獲取各試驗對象動態(tài)信息,并發(fā)送給監(jiān)控界面模塊;監(jiān)控界面模塊將發(fā)送來的各試驗對象的狀態(tài)信息、靜態(tài)信息、動態(tài)信息顯示出來;所述的試驗域包括參與一次虛擬試驗驗證的所有試驗對象,該試驗域中的試驗對象之間存在交互關(guān)系;所述各試驗對象的狀態(tài)信息包括未啟動、已啟動、正常運行、退出;所述預(yù)先配置的XML配置文件包括VIO的基本信息、VIO的發(fā)布訂閱關(guān)系、所屬類型、更新次數(shù),以及Message的基本信息、Message的發(fā)布訂閱關(guān)系、所屬類型、更新次數(shù)。
[0006]所述的試驗應(yīng)用狀態(tài)監(jiān)控模塊通過心跳檢測機制完成對試驗域中各試驗對象的運行狀態(tài)進行監(jiān)測。
[0007]所述的試驗對象靜態(tài)信息監(jiān)控模塊根據(jù)預(yù)先配置的XML配置文件中描述的信息,解析XML配置文件,獲取各試驗對象的靜態(tài)信息;所述的試驗對象的靜態(tài)信息包括VIO信息、Message信息、試驗域的類層次關(guān)系和試驗域內(nèi)試驗應(yīng)用的信息;其中VIO信息包括VIO名、VIO實例名、所屬試驗對象名、VIO包括的屬性個數(shù)和名稱Message信息包括Message名、Message實例名、所屬試驗對象名、Message包括的屬性個數(shù)和名稱;試驗域內(nèi)試驗應(yīng)用的信息包括試驗對象名、試驗對象模型名,初始化文件、試驗對象狀態(tài)、發(fā)布訂閱的VIO信息,發(fā)布訂閱的Message信息。
[0008]所述試驗對象動態(tài)信息監(jiān)控模塊通過過濾機制監(jiān)控試驗域中各試驗對象的VIO實例和Message實例在試驗過程中的收發(fā)次數(shù),獲取各試驗對象的動態(tài)信息;所述的試驗對象的動態(tài)信息包括試驗對象實例名、發(fā)布的VIO個數(shù)、VIO的類型名、V10名、V10更新接收更新次數(shù)、更新總數(shù)據(jù)大小、發(fā)布的Message個數(shù)、Message的類型名、Message名、Message發(fā)送接收次數(shù)。
[0009]所述監(jiān)控界面模塊讀取并顯示各試驗對象的狀態(tài)信息、靜態(tài)信息和動態(tài)信息,試驗對象的發(fā)布訂閱信息會在監(jiān)控界面以統(tǒng)計圖的形式呈現(xiàn);其中所述試驗對象靜態(tài)信息包括試驗域基本信息、試驗域所包含的試驗對象、試驗域所包含的VIO信息和Message信息、試驗域的類層次關(guān)系;所述試驗對象動態(tài)信息包括各試驗對象包含的VIO更新接收更新次數(shù)和Message發(fā)送接收次數(shù)、刷新間隔內(nèi)VIO的更新次數(shù)和Message的更新次數(shù)。
[0010]本發(fā)明與現(xiàn)有技術(shù)相比具有如下優(yōu)點:
[0011](I)創(chuàng)新的采用了心跳檢測機制完成對各試驗對象運行狀態(tài)的實時監(jiān)控,可實時監(jiān)控試驗對象的未啟動、已啟動、正常運行、退出等運行狀態(tài),提高了中間件系統(tǒng)的運行效率。
[0012](2)實現(xiàn)了對試驗對象靜態(tài)信息和動態(tài)信息的實時監(jiān)控,可實時獲取試驗域內(nèi)的各試驗對象屬性、狀態(tài)信息,便于實時掌握各試驗應(yīng)用的運行情況。
[0013](3)完善了虛擬試驗中間件系統(tǒng)的功能,使中間件的應(yīng)用更為靈活,具有很強的應(yīng)用推廣價值。
【專利附圖】
【附圖說明】
[0014]圖1為本發(fā)明的監(jiān)控服務(wù)結(jié)構(gòu)圖;
[0015]圖2為本發(fā)明的試驗應(yīng)用狀態(tài)監(jiān)控模塊流程圖;
[0016]圖3為本發(fā)明的XML配置文件結(jié)構(gòu)圖;
[0017]圖4為本發(fā)明的監(jiān)控管理交互流程圖;
[0018]圖5為本發(fā)明監(jiān)控主界面實現(xiàn)流程圖;
[0019]圖6為本發(fā)明試驗對象動態(tài)信息監(jiān)控實現(xiàn)流程圖。
【具體實施方式】
[0020]在敘述本發(fā)明【具體實施方式】之前,對本發(fā)明用到的心跳檢測機制原理進行說明。
[0021]心跳檢測機制,是一種常用的連接狀態(tài)檢測方案,被廣泛應(yīng)用于遠程終端監(jiān)控、月艮務(wù)器診斷等方面。該檢測機制是在一個比較小的時間刻度內(nèi),服務(wù)端試驗對象能夠準確判斷客戶端試驗對象的運行狀態(tài),系統(tǒng)基于該判斷做出及時的反應(yīng),試驗對象的運行狀態(tài)包括是否正常運行、已經(jīng)退出、異常終止。即,每個客戶端試驗對象每隔一個時間刻度(例如,I秒)向服務(wù)端試驗對象發(fā)送心跳信息,服務(wù)端試驗對象負責接收這些心跳信息。每隔一個時間刻度(例如,3秒),如果服務(wù)端試驗對象一次也沒有收到某個客戶端試驗對象發(fā)送的心跳信息,服務(wù)端試驗對象就判斷這個試驗對象已經(jīng)異常退出。
[0022]如圖1所示,本發(fā)明所述的中間件監(jiān)控系統(tǒng)為整個虛擬試驗場景提供實時監(jiān)控的功能,包括試驗應(yīng)用狀態(tài)監(jiān)控模塊、試驗對象監(jiān)控模塊、監(jiān)控界面模塊。試驗應(yīng)用狀態(tài)監(jiān)控模塊通過中間件系統(tǒng)的交互管理對試驗域中各試驗對象的運行狀態(tài)進行監(jiān)測,包括應(yīng)用的未啟動、已啟動、正常運行、退出狀態(tài)。試驗對象監(jiān)控模塊主要包括試驗對象靜態(tài)信息監(jiān)控模塊和試驗對象動態(tài)信息監(jiān)控模塊,通過解析XML配置文件獲取各試驗對象的靜態(tài)信息,通過中間件接口獲取各試驗對象動態(tài)信息。
[0023]試驗應(yīng)用狀態(tài)監(jiān)控模塊,負責實時監(jiān)控整個虛擬試驗運行過程中試驗對象的執(zhí)行情況,試驗應(yīng)用狀態(tài)監(jiān)控功能是通過心跳檢測機制實現(xiàn)的,即每隔一段時間各試驗對象將自己的狀態(tài)發(fā)布給監(jiān)控服務(wù)端。如圖2所示,首先監(jiān)控程序需要設(shè)置試驗域內(nèi)試驗對象名,然后根據(jù)心跳檢測機制得到的試驗對象狀態(tài)值做出相應(yīng)的反應(yīng)。各試驗對象通過中間件的交互管理向監(jiān)控服務(wù)端發(fā)送其運行狀態(tài)信息,該狀態(tài)信息通過標志位控制,并且隨著時間段的不同隨時更新。其中,標志位為1,表示試驗域內(nèi)試驗對象異常;標志位為2,表示試驗域內(nèi)試驗對象已啟動;標志位為3及以上的遞增數(shù)據(jù)時,表示試驗域內(nèi)試驗對象正常運行,標志位值長時間不更新,表示試驗域內(nèi)試驗對象退出。
[0024]試驗對象監(jiān)控模塊,本發(fā)明中所述的試驗對象監(jiān)控信息包括試驗對象靜態(tài)信息和試驗對象動態(tài)信息。監(jiān)控服務(wù)端調(diào)用Push方法從事件通道中獲取各試驗對象的靜態(tài)信息和各試驗對象的動態(tài)信息,并發(fā)送給監(jiān)控界面模塊。
[0025]試驗對象靜態(tài)信息的獲取是通過解析XML配置文件實現(xiàn),解析XML文件的過程為加載、解析、獲取數(shù)據(jù)和存儲數(shù)據(jù)。通過ParseStaticInfo類實現(xiàn)XML配置文件的加載、試驗域和各試驗對象信息解析、類層次關(guān)系解析、VIO (V10為VITA Object的簡稱,表示狀態(tài)對象)和Message信息解析。如圖3所示,XML配置文件通過父類和子類關(guān)系對描述了繼承關(guān)系樹,以應(yīng)用場景為根目錄,主要包括試驗域Scenario、試驗對象集APPs、對象模型集VOMs三個數(shù)據(jù)結(jié)構(gòu)。試驗域結(jié)構(gòu)Scenario用來存儲試驗域基本信息,包括試驗域名、試驗域中的所有試驗對象、試驗域中的所有對象模型。其中,試驗對象結(jié)構(gòu)APPs用來存儲試驗域中的所有試驗對象信息,包括試驗對象名App_name、試驗對象對應(yīng)的對象模型名Vom_name ;對象模型結(jié)構(gòu)VOMs用來存儲試驗域中的所有對象模型信息,包括對象模型名Vom_name、對象模型實例名 Instance_name、發(fā)布 VIO 信息 VIOOutsdDS] VIO 信息 VIOIns、發(fā)布 Message信息 Messagelns、訂閱 Message 信息 MessageOuts0
[0026]試驗對象動態(tài)信息是通過中間件的交互管理實時獲取,如圖4所示,為監(jiān)控系統(tǒng)與試驗對象、交互管理的交互圖,其中試驗對象節(jié)點承載試驗對象程序,交互管理完成試驗對象間的信息交互,監(jiān)控程序節(jié)點承載試驗域及其各試驗對象的各類信息監(jiān)控。試驗對象動態(tài)信息監(jiān)控主要監(jiān)控試驗對象的VIO實例和Message實例在試驗過程中的收發(fā)次數(shù)。在試驗過程中,試驗對象動態(tài)信息監(jiān)控是一個單純的訂閱方,它負責通過過濾機制收集試驗運行過程中各試驗對象的發(fā)布訂閱信息。整個監(jiān)控流程為,首先各試驗對象更新監(jiān)控信息,并將監(jiān)控信息推送到事件通道;然后監(jiān)控服務(wù)端從事件通道獲取各試驗對象的更新信息并保存在本地;最后監(jiān)控界面模塊獲取各試驗對象的更新信息,并在監(jiān)控界面顯示。[0027]為了實時監(jiān)控各試驗對象的交互情況,采用發(fā)布訂閱的機制,訂閱方不用關(guān)心是否有試驗對象在發(fā)布信息,監(jiān)控服務(wù)端作為一個訂閱方,這樣它與試驗對象的耦合性就降低了,更好的保證了性能方面的要求。交互管理中定義了存儲試驗對象動態(tài)信息的數(shù)據(jù)結(jié)構(gòu)superviselnfo, superviselnfo中存儲了試驗域中各試驗對象實例名、VIO類型名、VIO對象名、VIO的發(fā)布次數(shù)、VIO類型名、VIO對象名、VIO的訂閱次數(shù)、Message類型名、Message對象名、Message的發(fā)布次數(shù)、Message類型名、Message對象名、Message的訂閱次數(shù)。當試驗對象發(fā)布訂閱VIO信息、發(fā)布訂閱Message信息時,交互管理會調(diào)用相應(yīng)的接口對存儲試驗對象動態(tài)信息的結(jié)構(gòu)體superviselnfo進行賦值。試驗對象調(diào)用交互管理的getSuperviselnfo方法獲取superviselnfo結(jié)構(gòu)體的信息,并將獲取的信息傳送給監(jiān)控界面模塊顯示。
[0028]監(jiān)控界面模塊,從監(jiān)控服務(wù)端讀取并顯示各試驗對象的運行狀態(tài)、靜態(tài)信息和動態(tài)信息。試驗對象的靜態(tài)信息通過CAppShow類中的控件顯示,這些控件包括標簽頁控件、屬性頁控件、以及用于標簽頁的相關(guān)屬性變量、圖形列表控件信息。各試驗對象實時更新的發(fā)布訂閱信息通過CAppDyn類實現(xiàn),并通過在該類中設(shè)置控件實現(xiàn)發(fā)布訂閱信息的高亮顯示,同時,各試驗對象的發(fā)布訂閱次數(shù)會在監(jiān)控界面以統(tǒng)計圖的形式呈現(xiàn),統(tǒng)計圖分為上下兩部分,上面部分為VIO或Message的接收次數(shù)統(tǒng)計圖,下面部分為VIO或Message的發(fā)布次數(shù)統(tǒng)計圖。在統(tǒng)計圖中,橫坐標表示時間,縱坐標表示發(fā)布接收次數(shù)。
[0029]本發(fā)明未詳細說明部分屬本領(lǐng)域技術(shù)人員公知常識。
【權(quán)利要求】
1.一種中間件監(jiān)控系統(tǒng),其特征在于:包括試驗應(yīng)用狀態(tài)監(jiān)控模塊、試驗對象監(jiān)控模塊、監(jiān)控界面模塊;試驗應(yīng)用狀態(tài)監(jiān)控模塊通過中間件系統(tǒng)的交互管理對試驗域中各試驗對象的運行狀態(tài)進行監(jiān)測,獲得狀態(tài)信息發(fā)送給監(jiān)控界面模塊;試驗對象監(jiān)控模塊包括試驗對象靜態(tài)信息監(jiān)控模塊和試驗對象動態(tài)信息監(jiān)控模塊,試驗對象靜態(tài)信息監(jiān)控模塊通過解析預(yù)先配置的XML配置文件獲取各試驗對象的靜態(tài)信息,并發(fā)送給監(jiān)控界面模塊;試驗對象動態(tài)信息監(jiān)控模塊通過中間件接口獲取各試驗對象動態(tài)信息,并發(fā)送給監(jiān)控界面模塊;監(jiān)控界面模塊將發(fā)送來的各試驗對象的狀態(tài)信息、靜態(tài)信息、動態(tài)信息顯示出來;所述的試驗域包括參與一次虛擬試驗驗證的所有試驗對象,該試驗域中的試驗對象之間存在交互關(guān)系;所述各試驗對象的狀態(tài)信息包括未啟動、已啟動、正常運行、退出;所述預(yù)先配置的XML配置文件包括VIO的基本信息、VIO的發(fā)布訂閱關(guān)系、所屬類型、更新次數(shù),以及Message的基本信息、Message的發(fā)布訂閱關(guān)系、所屬類型、更新次數(shù)。
2.根據(jù)權(quán)利要求1所述的一種中間件監(jiān)控系統(tǒng),其特征在于:所述的試驗應(yīng)用狀態(tài)監(jiān)控模塊通過心跳檢測機制完成對試驗域中各試驗對象的運行狀態(tài)進行監(jiān)測。
3.根據(jù)權(quán)利要求1所述的一種中間件監(jiān)控系統(tǒng),其特征在于:所述的試驗對象靜態(tài)信息監(jiān)控模塊根據(jù)預(yù)先配置的XML配置文件中描述的信息,解析XML配置文件,獲取各試驗對象的靜態(tài)信息;所述的試驗對象的靜態(tài)信息包括VIO信息、Message信息、試驗域的類層次關(guān)系和試驗域內(nèi)試驗應(yīng)用的信息;其中VIO信息包括VIO名、VIO實例名、所屬試驗對象名、VIO包括的屬性個數(shù)和名稱;Message信息包括Message名、Message實例名、所屬試驗對象名、Message包括的屬性個數(shù)和名稱;試驗域內(nèi)試驗應(yīng)用的信息包括試驗對象名、試驗對象模型名,初始化文件、試驗對象狀態(tài)、發(fā)布訂閱的VIO信息,發(fā)布訂閱的Message信息。
4.根據(jù)權(quán)利要求1所述的一種中間件監(jiān)控系統(tǒng),其特征在于:所述試驗對象動態(tài)信息監(jiān)控模塊通過過濾機制監(jiān)控試驗域中各試驗對象的VIO實例和Message實例在試驗過程中的收發(fā)次數(shù),獲取各試驗對象的動態(tài)信息;所述的試驗對象的動態(tài)信息包括試驗對象實例名、發(fā)布的VIO個數(shù)、VIO的類型名、VIO名、VIO更新接收更新次數(shù)、更新總數(shù)據(jù)大小、發(fā)布的Message個數(shù)、Message的類型名、Message名、Message發(fā)送接收次數(shù)。
5.根據(jù)權(quán)利要求1所述的一種中間件監(jiān)控系統(tǒng),其特征在于:所述監(jiān)控界面模塊讀取并顯示各試驗對象的狀態(tài)信息、靜態(tài)信息和動態(tài)信息,試驗對象的發(fā)布訂閱信息會在監(jiān)控界面以統(tǒng)計圖的形式呈現(xiàn);其中所述試驗對象靜態(tài)信息包括試驗域基本信息、試驗域所包含的試驗對象、試驗域所包含的VIO信息和Message信息、試驗域的類層次關(guān)系;所述試驗對象動態(tài)信息包括各試驗對象包含的VIO更新接收更新次數(shù)和Message發(fā)送接收次數(shù)、刷新間隔內(nèi)VIO的更新次數(shù)和Message的更新次數(shù)。
【文檔編號】G05B19/418GK103592909SQ201310505424
【公開日】2014年2月19日 申請日期:2013年10月23日 優(yōu)先權(quán)日:2013年10月23日
【發(fā)明者】賈長偉, 廖建, 蔡斐華, 李鑫, 王國慶, 鄭小鵬, 王曉路, 趙雯 申請人:中國運載火箭技術(shù)研究院