專利名稱:基于Socket協(xié)議的Web告警監(jiān)控系統(tǒng)及方法
技術領域:
本發(fā)明涉及OSS告警監(jiān)控技術領域,尤其涉及一種OSS基于Socket協(xié)議的Web告 警監(jiān)控系統(tǒng)及方法。
背景技術:
0SS(0peration Su卯ort System,運營支撐系統(tǒng))的告警監(jiān)控系統(tǒng)是用于實時地 采集電信運營商公司一定范圍內所有網(wǎng)元(NE)生成的各種設備故障告警報告、網(wǎng)絡事件 報告以及與網(wǎng)絡、業(yè)務相關的故障告警報告數(shù)據(jù),由系統(tǒng)按照監(jiān)控業(yè)務的需求,將其整理成 統(tǒng)一的格式呈現(xiàn)到計算機終端,由監(jiān)控人員查看,然后對相關的告警做進一步的處理。以往 的類似系統(tǒng)都是采用C/S (Client/Server,客戶機/服務器)架構,通過客戶端連接服務器 的消息隊列(MQ)獲取告警信息,這種告警過濾的實現(xiàn)方式會引發(fā)如下問題
1、每個告警監(jiān)控客戶端都需要安裝第三方的MQ客戶端軟件,增加了系統(tǒng)的實施 費用; 2、客戶端部署復雜,除了要安裝告警監(jiān)控軟件系統(tǒng)外,還要安裝配置MQ客戶端, 為軟件實施部署及軟件后期的升級,維護增加了成本; 3、 C/S架構的應用程序只能以單個應用系統(tǒng)的方式存在,無法與其它的應用程序 進行集成,而Web應用程序很好的解決了這個問題。
發(fā)明內容
本發(fā)明的目的是提供一種基于Socket協(xié)議的Web告警監(jiān)控系統(tǒng)及方法,該系統(tǒng)及 方法通過標準的Socket協(xié)議,使客戶端與服務器建立連接,無需在客戶端安裝任何第三方 軟件,降低了系統(tǒng)的實施費用和安裝部署以及后期軟件升級維護的成本,可克服現(xiàn)有技術 的缺陷。 為實現(xiàn)上述目的,本發(fā)明采用如下技術方案。 本發(fā)明提供的一種基于Socket協(xié)議的Web告警監(jiān)控系統(tǒng),該系統(tǒng)包括告警監(jiān)控 客戶端,用于向告警監(jiān)控服務器發(fā)送建立Socket連接請求以及告警監(jiān)控客戶端唯一標識; 告警監(jiān)控服務器,用于接收告警監(jiān)控客戶端發(fā)送的建立Socket連接請求以及告警監(jiān)控客 戶端唯一標識,建立與告警監(jiān)控客戶端的Socket連接,并將告警信息發(fā)送至所述告警監(jiān)控 客戶端唯一標識對應的告警監(jiān)控客戶端。 其中,該系統(tǒng)還包括告警采集服務器,用于采集設定范圍內所有網(wǎng)元生成的告警
信息,并對采集到的告警信息進行持久化處理,存儲到告警數(shù)據(jù)庫及消息隊列中;告警數(shù)據(jù)
庫,用于存儲告警信息及告警過濾器,所述告警過濾器配置有過濾條件,且每個告警過濾器
對應一個唯一標識,即告警過濾器ID ;Web應用服務器,用于接收告警監(jiān)控客戶端瀏覽器
發(fā)送的請求,并將請求結果返回到所述告警監(jiān)控客戶端瀏覽器,以及提供告警同步的Web
Service方法,用于告警監(jiān)控客戶端同步告警數(shù)據(jù)庫中的告警信息。 本發(fā)明還提供了一種基于上述系統(tǒng)的告警監(jiān)控方法,該方法包括步驟
SI.告警監(jiān)控客戶端通過瀏覽器向Web應用服務器發(fā)送請求,并接收所述Web應用 服務器返回的告警監(jiān)控應用程序界面; S2.告警監(jiān)控客戶端向告警監(jiān)控服務器發(fā)送建立Socket連接請求以及告警監(jiān)控 客戶端唯一標識; S3.告警監(jiān)控服務器接收告警監(jiān)控客戶端發(fā)送的建立Socket連接請求以及告警 監(jiān)控客戶端唯一標識,與其建立socket連接,并將告警信息發(fā)送至所述告警監(jiān)控客戶端唯 一標識對應的告警監(jiān)控客戶端。 其中,所述告警信息由告警監(jiān)控服務器從告警采集服務器的消息隊列中讀取。 其中,所述告警監(jiān)控客戶端還向告警監(jiān)控服務器發(fā)送告警過濾器ID。 其中,所述告警監(jiān)控服務器接收所述告警過濾器ID,通過所述Web應用服務器從
告警數(shù)據(jù)庫獲取對應的告警過濾器信息,并根據(jù)所述告警過濾器的告警過濾條件對告警信
息進行過濾,將過濾后的告警信息發(fā)送至所述告警監(jiān)控客戶端唯一標識對應的告警監(jiān)控客戶端。 其中,所述告警監(jiān)控客戶端與所述告警監(jiān)控服務器建立連接以后,通過心跳機制 實時判斷網(wǎng)絡連接情況,在網(wǎng)絡連接出現(xiàn)異?;謴秃?,自動通過所述Web應用服務器從所 述告警數(shù)據(jù)庫中同步網(wǎng)絡異常時間段內的告警信息。 本發(fā)明的系統(tǒng)及方法將傳統(tǒng)的C/S結構告警監(jiān)控系統(tǒng)通過純Web應用程序來實 現(xiàn),無需安裝第三方客戶端軟件,只需打開瀏覽器,輸入系統(tǒng)的URL地址即可運行告警監(jiān)控 程序,節(jié)省了 OSS告警監(jiān)控系統(tǒng)的總擁有成本;告警監(jiān)控服務器通過Socket協(xié)議與瀏覽器 中的客戶端程序進行連接,最大化的將客戶端和服務器的處理邏輯進行解耦,極大的方便 了服務器的部署,如果當前的服務器處理能力不夠時,只需要在一臺新的服務器上部署,運 行告警監(jiān)控服務端應用程序,同時客戶端程序是通過瀏覽器進行訪問的,也無需做任何安 裝處理,極大的方便了軟件系統(tǒng)的部署和更新;由于是Web應用系統(tǒng),所以應用本發(fā)明的系 統(tǒng)及方法實現(xiàn)的OSS能夠很方便的集成到其它Web應用中去,目前已經實現(xiàn)了與MS Share Point Portal Server2007門戶系統(tǒng)的集成。
圖1為依照本發(fā)明一種實施方式的基于Socket協(xié)議的Web告警監(jiān)控系統(tǒng)工作原 理圖; 圖2為基于本發(fā)明一種實施方式的基于Socket協(xié)議的Web告警監(jiān)控系統(tǒng)的告警 監(jiān)控方法流程圖; 圖3為告警監(jiān)控客戶端與告警監(jiān)控服務器建立Socket連接接收告警信息的應用 接口庫流程圖。
具體實施例方式
本發(fā)明提出的基于Socket協(xié)議的Web告警監(jiān)控系統(tǒng)及方法,結合附圖和實施例說 明如下。 如圖1所示,為依照本發(fā)明一種實施方式的基于Socket協(xié)議的Web告警監(jiān)控系統(tǒng) 工作原理圖,該系統(tǒng)包括告警監(jiān)控客戶端,用于向告警監(jiān)控服務器發(fā)送建立Socket連接
4的請求以及告警監(jiān)控客戶端唯一標識;告警監(jiān)控服務器,部屬Socket監(jiān)聽服務程序,監(jiān)聽 告警監(jiān)控客戶端的建立Socket連接請求以及告警監(jiān)控客戶端唯一標識,建立與告警監(jiān)控 客戶端的Socket連接,并將告警信息發(fā)送至告警監(jiān)控客戶端唯一標識對應的告警監(jiān)控客 戶端。 該系統(tǒng)還包括告警采集服務器,用于采集設定范圍內所有網(wǎng)元生成的告警信息, 并對采集到的告警信息進行持久化處理,存儲到告警數(shù)據(jù)庫及消息隊列MQ中;告警數(shù)據(jù) 庫,用于存儲告警信息及告警過濾器,可為一臺獨立的物理服務器,其上安裝有數(shù)據(jù)庫軟 件,告警過濾器配置有過濾條件,且每個告警過濾器對應一個唯一標識,即告警過濾器ID ; Web應用服務器,部署告警監(jiān)控Web服務程序,接收告警監(jiān)控客戶端瀏覽器通過HTTP協(xié)議發(fā) 送的請求,并將請求結果返回到告警監(jiān)控客戶端瀏覽器,以及提供告警同步的Web Service 方法,用于告警監(jiān)控客戶端瀏覽器中的告警監(jiān)控程序界面同步數(shù)據(jù)庫中的告警信息。
在本系統(tǒng)工作過程中,告警監(jiān)控服務器通過HTTP協(xié)議向Web應用服務器發(fā)送應用 請求,接收Web應用服務器返回的應用程序頁面,再與告警監(jiān)控客戶端通過Socket協(xié)議進 行連接,在連接建立后,通過內存緩存數(shù)據(jù)、異步處理、多線程處理并將處理后的計算結果 發(fā)送給告警監(jiān)控客戶端呈現(xiàn)。當需要在告警監(jiān)控服務器處理告警信息的過濾時,告警監(jiān)控 客戶端向告警監(jiān)控服務器發(fā)送告警過濾器ID,告警監(jiān)控服務器中的Socket監(jiān)聽服務獲取 到該告警過濾器ID后,需要通過Web應用服務器的Web Service從告警數(shù)據(jù)庫獲取告警過 濾器具體的信息。本發(fā)明中,在告警監(jiān)控客戶端瀏覽器中使用了 RichClient技術,用到了 Microsoft Silverlight插件,由其實現(xiàn)與Socket服務器建立連接,發(fā)送告警過濾器ID,獲 取告警信息的功能。 如圖2所示,基于本發(fā)明的上述系統(tǒng)的告警監(jiān)控方法包括步驟 SI.告警監(jiān)控客戶端通過瀏覽器向Web應用服務器發(fā)送請求,并接收所述Web應用
服務器返回的告警監(jiān)控應用程序界面; S2.告警監(jiān)控客戶端向告警監(jiān)控服務器發(fā)送建立Socket連接請求以及告警監(jiān)控 客戶端唯一標識; S3.告警監(jiān)控服務器接收告警監(jiān)控客戶端發(fā)送的建立Socket連接請求,與其建立
socket連接,并將告警信息發(fā)送給告警監(jiān)控客戶端唯一標識對應的告警監(jiān)控客戶端。 其中,告警信息由告警監(jiān)控服務器從告警采集服務器的MQ中讀取。 7、如權利要求3-6所述的告警監(jiān)控方法,其特征在于,所述告警監(jiān)控客戶端與所
述告警監(jiān)控服務器建立連接以后,通過心跳機制實時判斷網(wǎng)絡連接情況,在網(wǎng)絡連接出現(xiàn)
異?;謴秃螅詣油ㄟ^所述Web應用服務器從所述告警數(shù)據(jù)庫中同步網(wǎng)絡異常時間段內的
告警信息。 其中,在步驟S1中,告警客戶端還可以向告警監(jiān)控服務器發(fā)送告警過濾器ID,此 時,在步驟S3中,告警監(jiān)控服務器接收該告警過濾器ID后,通過Web應用服務器的Web Service從告警數(shù)據(jù)庫獲取對應的告警過濾器信息,并根據(jù)告警過濾器的告警過濾條件對 告警信息進行過濾,將過濾后的告警信息發(fā)送至告警監(jiān)控客戶端唯一標識對應的告警監(jiān)控 客戶端。告警過濾器最終體現(xiàn)是一段程序邏輯代碼,通過告警系統(tǒng)的配置界面,系統(tǒng)用戶可 以通過相關選項,選擇配置過濾條件,配置完成后,每個告警過濾器對應一個唯一標識,即 告警過濾器ID,告警系統(tǒng)內部通過它來傳遞系統(tǒng)用戶最終選擇了哪個告警過濾器。告警過
5濾器需要做持久化操作,將其信息保存到告警數(shù)據(jù)庫中。在本發(fā)明中,告警監(jiān)控客戶端可將 告警過濾器ID傳遞到告警監(jiān)控服務器,由告警監(jiān)控服務器對告警信息進行過濾,再將過濾 后的告警信息發(fā)送至告警監(jiān)控客戶端。 雖然Socket協(xié)議是全雙工、長連接的網(wǎng)絡協(xié)議,在網(wǎng)絡連接正常的情況下,完全 能夠保證告警數(shù)據(jù)的完整性,但是在網(wǎng)絡連接異常的情況下無法保證,為解決這個問題,告 警監(jiān)控客戶端與告警監(jiān)控服務器建立連接以后,通過心跳機制實時判斷網(wǎng)絡連接情況,在 網(wǎng)絡連接出現(xiàn)異常恢復后,自動從數(shù)據(jù)庫中同步網(wǎng)絡異常時間段內的告警信息。例如,假設 心跳周期為5秒,那么,告警監(jiān)控客戶端每隔5秒判斷網(wǎng)絡連接是否正常,如果網(wǎng)絡連接異 常,告警監(jiān)控客戶端會記錄網(wǎng)絡連接異常出現(xiàn)的時間,同時對當前時間減去5秒,當網(wǎng)絡連 接異?;謴秃螅婢O(jiān)控客戶端會自動連接告警監(jiān)控服務器,并通過Web應用服務器中的 告警信息完整性Web Service從告警數(shù)據(jù)庫中同步網(wǎng)絡異常這段時間內的告警信息,通過 這種方式避免告警信息的丟失,從而保證告警信息的完整性。 告警監(jiān)控客戶端與告警監(jiān)控服務器建立Socket連接,接收告警信息的應用接 口庫中提供的四個主要函數(shù)為Co皿SocketServer () 、 StratAlarmMsgCo皿Listen ()、 SendFilter ()和SyncAlarmlnfo (),如圖3所示,為本發(fā)明提供的告警監(jiān)控客戶端與告警監(jiān) 控服務器建立Socket連接接收告警信息的應用接口庫的流程,詳述如下
在步驟D1中,應用程序調用ConnSocketServer()函數(shù),創(chuàng)建當前告警監(jiān)控客戶端 與告警監(jiān)控服務器的Socket連接,調用此函數(shù)成功后,告警監(jiān)控客戶端與告警監(jiān)控服務器 將建立起Socket連接。 在步驟D2中,應用程序調用StratAlarmMsgConnListen()函數(shù),執(zhí)行告警監(jiān)控客 戶端與告警監(jiān)控服務器Socket連接的心跳連接,每5秒鐘判斷一次網(wǎng)絡是否出現(xiàn)異常, 如果網(wǎng)絡出現(xiàn)異常,記錄出現(xiàn)異常的時間,當監(jiān)聽到網(wǎng)絡恢復正常后,調用步驟D4中的 SyncAlarmlnfo函數(shù),并將網(wǎng)絡異常起始時間和網(wǎng)絡異常結束時間作為輸入?yún)?shù)同步告警 數(shù)據(jù)庫中的告警數(shù)據(jù)。 在步驟D3中,應用程序調用SendFilter ()函數(shù),將系統(tǒng)用戶所選的告警過濾器ID 作為輸入?yún)?shù),函數(shù)調用完成后將告警過濾器ID和發(fā)送當前告警過濾器的告警監(jiān)控客戶 端唯一標識發(fā)送到告警監(jiān)控服務器。 以上實施方式僅用于說明本發(fā)明,而并非對本發(fā)明的限制,有關技術領域的普通 技術人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有 等同的技術方案也屬于本發(fā)明的范疇,本發(fā)明的專利保護范圍應由權利要求限定。
權利要求
一種基于Socket協(xié)議的Web告警監(jiān)控系統(tǒng),該系統(tǒng)包括告警監(jiān)控客戶端,用于向告警監(jiān)控服務器發(fā)送建立Socket連接請求以及告警監(jiān)控客戶端唯一標識;告警監(jiān)控服務器,用于接收告警監(jiān)控客戶端發(fā)送的建立Socket連接請求以及告警監(jiān)控客戶端唯一標識,建立與告警監(jiān)控客戶端的Socket連接,并將告警信息發(fā)送至所述告警監(jiān)控客戶端唯一標識對應的告警監(jiān)控客戶端。
2. 如權利要求1所述的告警監(jiān)控系統(tǒng),其特征在于,該系統(tǒng)還包括 告警采集服務器,用于采集設定范圍內所有網(wǎng)元生成的告警信息,并對采集到的告警信息進行持久化處理,存儲到告警數(shù)據(jù)庫及消息隊列中;告警數(shù)據(jù)庫,用于存儲告警信息及告警過濾器,所述告警過濾器配置有過濾條件,且每 個告警過濾器對應一個唯一標識,即告警過濾器ID ;Web應用服務器,用于接收告警監(jiān)控客戶端瀏覽器發(fā)送的請求,并將請求結果返回到所 述告警監(jiān)控客戶端瀏覽器,以及提供告警同步的Web Service方法,用于告警監(jiān)控客戶端同 步告警數(shù)據(jù)庫中的告警信息。
3. —種基于權利要求1-2任一項所述系統(tǒng)的告警監(jiān)控方法,其特征在于,該方法包括 步驟51. 告警監(jiān)控客戶端通過瀏覽器向Web應用服務器發(fā)送請求,并接收所述Web應用服務 器返回的告警監(jiān)控應用程序界面;52. 告警監(jiān)控客戶端向告警監(jiān)控服務器發(fā)送建立Socket連接請求以及告警監(jiān)控客戶 端唯一標識;53. 告警監(jiān)控服務器接收告警監(jiān)控客戶端發(fā)送的建立Socket連接請求以及告警監(jiān)控 客戶端唯一標識,與其建立socket連接,并將告警信息發(fā)送至所述告警監(jiān)控客戶端唯一標 識對應的告警監(jiān)控客戶端。
4. 如權利要求3所述的告警監(jiān)控方法,其特征在于,所述告警信息由告警監(jiān)控服務器 從告警采集服務器的消息隊列中讀取。
5. 如權利要求4所述的告警監(jiān)控方法,其特征在于,在步驟SI中,所述告警監(jiān)控客戶端 還向告警監(jiān)控服務器發(fā)送告警過濾器ID。
6. 如權利要求5所述的告警監(jiān)控方法,其特征在于,在步驟S3中,所述告警監(jiān)控服務器 接收所述告警過濾器ID,通過所述Web應用服務器從告警數(shù)據(jù)庫獲取對應的告警過濾器信 息,并根據(jù)所述告警過濾器的告警過濾條件對告警信息進行過濾,將過濾后的告警信息發(fā) 送至所述告警監(jiān)控客戶端唯一標識對應的告警監(jiān)控客戶端。
7. 如權利要求3-6所述的告警監(jiān)控方法,其特征在于,所述告警監(jiān)控客戶端與所述告 警監(jiān)控服務器建立連接以后,通過心跳機制實時判斷網(wǎng)絡連接情況,在網(wǎng)絡連接出現(xiàn)異常 恢復后,自動通過所述Web應用服務器從所述告警數(shù)據(jù)庫中同步網(wǎng)絡異常時間段內的告警 信息。
全文摘要
本發(fā)明涉及一種基于Socket協(xié)議的Web告警監(jiān)控系統(tǒng)及方法,該系統(tǒng)包括告警監(jiān)控客戶端,用于向告警監(jiān)控服務器發(fā)送建立Socket連接請求以及告警監(jiān)控客戶端唯一標識;告警監(jiān)控服務器,用于接收告警監(jiān)控客戶端發(fā)送的建立Socket連接請求以及告警監(jiān)控客戶端唯一標識,建立與告警監(jiān)控客戶端的Socket連接,并將告警信息發(fā)送至所述告警監(jiān)控客戶端唯一標識對應的告警監(jiān)控客戶端。本發(fā)明的系統(tǒng)及方法通過標準的socket協(xié)議,使客戶端與服務器建立連接,無需在客戶端安裝任何第三方軟件,降低了系統(tǒng)的實施費用和安裝部署以及后期軟件升級維護的成本。
文檔編號H04L12/26GK101729567SQ200910241898
公開日2010年6月9日 申請日期2009年12月14日 優(yōu)先權日2009年12月14日
發(fā)明者員海 申請人:北京神州泰岳軟件股份有限公司