本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種針對(duì)監(jiān)控軟件的監(jiān)控方法及裝置。
背景技術(shù):
在信息科技、電子產(chǎn)業(yè)蓬勃發(fā)展的今天,各種應(yīng)用軟件應(yīng)運(yùn)而生,且發(fā)展極為迅速,切實(shí)為人們的日常生活帶來(lái)了巨大的便利。軟件(Software)是一系列按照特定順序組織的計(jì)算機(jī)數(shù)據(jù)和指令的集合,其運(yùn)行時(shí),能夠提供所要求功能和性能。
為了保證軟件系統(tǒng)按照期望進(jìn)行操作運(yùn)行,監(jiān)控軟件系統(tǒng)是一件極為重要的技術(shù)任務(wù)。這不但應(yīng)用于軟件系統(tǒng)的開發(fā)階段,還應(yīng)用于部署階段,例如,當(dāng)必須控制異常運(yùn)行時(shí),或者出于維護(hù)或其它目的需要評(píng)估系統(tǒng)的性能時(shí)。在其最簡(jiǎn)單的形式中,監(jiān)控僅僅是日志產(chǎn)生設(shè)備獲知軟件系統(tǒng)中發(fā)生的每一個(gè)動(dòng)作,并將該動(dòng)作記錄為日志條目添加到日志中。更廣義的,監(jiān)控可以是查看軟件正在執(zhí)行什么,如獲得軟件系統(tǒng)的當(dāng)前狀態(tài),并相應(yīng)做出反應(yīng)。
監(jiān)控軟件用于監(jiān)控其它軟件系統(tǒng),但對(duì)于監(jiān)控軟件自身的檢測(cè)卻存在問(wèn)題。大多數(shù)監(jiān)控軟件沒有對(duì)監(jiān)控軟件自身部署檢測(cè)機(jī)制,無(wú)法及時(shí)發(fā)現(xiàn)自身存在的問(wèn)題,易導(dǎo)致故障不能及時(shí)發(fā)現(xiàn),從而影響業(yè)務(wù)系統(tǒng)的運(yùn)行。或者,部分監(jiān)控軟件雖然實(shí)施自檢,但檢測(cè)方式主要依賴于人工檢查,且需要人工解決問(wèn)題,無(wú)法保證監(jiān)控的有效性和實(shí)時(shí)性,還浪費(fèi)了大量人力、時(shí)間等資源。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種針對(duì)監(jiān)控軟件的監(jiān)控方法及裝置,用以對(duì)監(jiān)控軟件自身進(jìn)行監(jiān)控并對(duì)檢測(cè)出的問(wèn)題加以修復(fù)和維護(hù)。
本發(fā)明實(shí)施例提供的針對(duì)監(jiān)控軟件的監(jiān)控方法包括:
監(jiān)測(cè)客戶端上的監(jiān)控軟件的工作狀態(tài);
若所述監(jiān)控軟件的工作狀態(tài)為非正常狀態(tài),則向所述監(jiān)控軟件的服務(wù)器發(fā)送告警消息;
接收所述服務(wù)器發(fā)送的修復(fù)指令;
根據(jù)所述修復(fù)指令對(duì)所述監(jiān)控軟件進(jìn)行修復(fù)。
可選的,所述監(jiān)測(cè)客戶端上的監(jiān)控軟件的工作狀態(tài),包括:
監(jiān)控所述客戶端上的監(jiān)控軟件的啟動(dòng)狀態(tài)是否正常;
在啟動(dòng)狀態(tài)正常時(shí),監(jiān)控所述客戶端上的監(jiān)控軟件的采值狀態(tài)是否正常。
可選的,所述監(jiān)控所述客戶端上的監(jiān)控軟件的啟動(dòng)狀態(tài)是否正常,包括:
監(jiān)控所述客戶端上的監(jiān)控軟件的進(jìn)程狀態(tài)是否正常;
若進(jìn)程狀態(tài)正常,則確定所述客戶端與所述服務(wù)器間的通信端口是否正常;
所述監(jiān)控所述客戶端上的監(jiān)控軟件的采值狀態(tài)是否正常,包括:
確定所述客戶端上的監(jiān)控軟件的監(jiān)控項(xiàng)出現(xiàn)遺漏,和/或,所述客戶端上的監(jiān)控軟件最近的采值時(shí)間與當(dāng)前時(shí)間的時(shí)間差大于時(shí)間閾值。
可選的,還包括:
若所述監(jiān)控軟件的工作狀態(tài)為正常狀態(tài),則向所述服務(wù)器發(fā)送模擬告警消息,以使所述服務(wù)器根據(jù)所述模擬告警消息確定所述監(jiān)控軟件的消息發(fā)送狀態(tài)為正常狀態(tài)。
可選的,還包括:
根據(jù)所述告警消息和所述模擬告警消息,確定第一客戶端列表;
將所述第一客戶端列表與第二客戶端列表對(duì)比,確定無(wú)法上送告警消息的客戶端;所述第二客戶端列表為所述服務(wù)器中存儲(chǔ)的所有客戶端的列表。
一種針對(duì)監(jiān)控軟件的監(jiān)控裝置,包括:
監(jiān)測(cè)模塊,用于監(jiān)測(cè)客戶端上的監(jiān)控軟件的工作狀態(tài);
收發(fā)模塊,用于若所述監(jiān)控軟件的工作狀態(tài)為非正常狀態(tài),則向所述監(jiān)控軟件的服務(wù)器發(fā)送告警消息;
所述收發(fā)模塊,還用于接收所述服務(wù)器發(fā)送的修復(fù)指令;
修復(fù)模塊,用于根據(jù)所述修復(fù)指令對(duì)所述監(jiān)控軟件進(jìn)行修復(fù)。
可選的,所述監(jiān)測(cè)模塊,具體用于:
監(jiān)控所述客戶端上的監(jiān)控軟件的啟動(dòng)狀態(tài)是否正常;
在啟動(dòng)狀態(tài)正常時(shí),監(jiān)控所述客戶端上的監(jiān)控軟件的采值狀態(tài)是否正常。
可選的,所述監(jiān)測(cè)模塊,具體用于:
監(jiān)控所述客戶端上的監(jiān)控軟件的進(jìn)程狀態(tài)是否正常;
若進(jìn)程狀態(tài)正常,則確定所述客戶端與所述服務(wù)器間的通信端口是否正常;
確定所述客戶端上的監(jiān)控軟件的監(jiān)控項(xiàng)出現(xiàn)遺漏,和/或,所述客戶端上的監(jiān)控軟件最近的采值時(shí)間與當(dāng)前時(shí)間的時(shí)間差大于時(shí)間閾值。
可選的,所述收發(fā)模塊,還用于:
若所述監(jiān)控軟件的工作狀態(tài)為正常狀態(tài),則向所述服務(wù)器發(fā)送模擬告警消息,以使所述服務(wù)器根據(jù)所述模擬告警消息確定所述監(jiān)控軟件的消息發(fā)送狀態(tài)為正常狀態(tài)。
可選的,還包括確定模塊,用于:
根據(jù)所述告警消息和所述模擬告警消息,確定第一客戶端列表;
將所述第一客戶端列表與第二客戶端列表對(duì)比,確定無(wú)法上送告警消息的客戶端;所述第二客戶端列表為所述服務(wù)器中存儲(chǔ)的所有客戶端的列表。
本發(fā)明實(shí)施例中,在客戶端上部署監(jiān)控軟件的自檢工具,用于監(jiān)測(cè)客戶端上的監(jiān)控軟件的工作狀態(tài)。若監(jiān)控軟件的工作狀態(tài)為非正常狀態(tài),則向該監(jiān)控軟件的服務(wù)器發(fā)送告警消息,以使服務(wù)器根據(jù)告警消息制定出修復(fù)策略,并向客戶端反饋修復(fù)指令。自檢工具則可根據(jù)該修復(fù)指令對(duì)監(jiān)控軟件進(jìn)行修復(fù)。本發(fā)明實(shí)施例實(shí)現(xiàn)了監(jiān)控軟件的故障自檢和問(wèn)題修復(fù)功能,自動(dòng)運(yùn)行,及時(shí)發(fā)現(xiàn)并修復(fù)問(wèn)題,提高了對(duì)監(jiān)控軟件監(jiān)測(cè)的時(shí)效性和準(zhǔn)確性,避免了潛在的業(yè)務(wù)風(fēng)險(xiǎn)。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例適用的一種系統(tǒng)架構(gòu)的示意圖;
圖2為本發(fā)明實(shí)施例中一種針對(duì)監(jiān)控軟件的監(jiān)控方法的流程圖;
圖3為本發(fā)明實(shí)施例中對(duì)監(jiān)控軟件啟動(dòng)狀態(tài)的檢測(cè)方法流程圖;
圖4為本發(fā)明實(shí)施例中對(duì)監(jiān)控軟件的采值狀態(tài)的檢測(cè)方法流程圖;
圖5為本發(fā)明的具體實(shí)施例中針對(duì)監(jiān)控軟件的監(jiān)控方法的流程圖;
圖6為本發(fā)明實(shí)施例中一種針對(duì)監(jiān)控軟件的監(jiān)控方法裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步地詳細(xì)描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部份實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
如圖1所示,本發(fā)明實(shí)施例所適用的一種系統(tǒng)架構(gòu),包括客戶端101和服務(wù)器102。客戶端101為應(yīng)用程序(Application,簡(jiǎn)稱APP),服務(wù)器102為客戶端101所對(duì)應(yīng)的服務(wù)器。其中,一個(gè)服務(wù)器102可以對(duì)應(yīng)多個(gè)客戶端101。客戶端101部署監(jiān)控軟件的自檢工具,將檢測(cè)出的問(wèn)題實(shí)時(shí)上報(bào)至服務(wù)器102,服務(wù)器102收到客戶端的問(wèn)題告警消息后,根據(jù)問(wèn)題確定修復(fù)策略,并下發(fā)修復(fù)指令給客戶端101,客戶端101按照修復(fù)指令修復(fù)監(jiān)控軟件的問(wèn)題。
客戶端101安裝于終端上,終端可以是手機(jī)、平板電腦或者是專用的手持設(shè)備等具有無(wú)線通信功能的電子設(shè)備,也可以是個(gè)人計(jì)算機(jī)(personal computer,簡(jiǎn)稱PC),筆記本電腦,服務(wù)器等有線接入方式連接上網(wǎng)的設(shè)備。服務(wù)器102可以是計(jì)算機(jī)等網(wǎng)絡(luò)設(shè)備。服務(wù)器102可以是一個(gè)獨(dú)立的設(shè)備,也可以是多個(gè)服務(wù)器所形成的服務(wù)器集群。優(yōu)選地,服務(wù)器102可以采用云計(jì)算技術(shù)進(jìn)行信息處理。
客戶端101可以通過(guò)INTERNET網(wǎng)絡(luò)與服務(wù)器102進(jìn)行通信,也可以通過(guò)全球移動(dòng)通信系統(tǒng)(Global System for Mobile Communications,簡(jiǎn)稱GSM)、長(zhǎng)期演進(jìn)(long term evolution,簡(jiǎn)稱LTE)系統(tǒng)等移動(dòng)通信系統(tǒng)與服務(wù)器102進(jìn)行通信。
圖2示例性示出了本發(fā)明實(shí)施例提供的一種針對(duì)監(jiān)控軟件的監(jiān)控方法流程示意圖。
基于前述內(nèi)容,如圖2所示,本發(fā)明實(shí)施例提供的在客戶端側(cè)實(shí)現(xiàn)的一種針對(duì)監(jiān)控軟件的監(jiān)控方法,包括以下步驟:
步驟201、監(jiān)測(cè)客戶端上的監(jiān)控軟件的工作狀態(tài);
步驟202、若所述監(jiān)控軟件的工作狀態(tài)為非正常狀態(tài),則向所述監(jiān)控軟件的服務(wù)器發(fā)送告警消息;
步驟203、接收所述服務(wù)器發(fā)送的修復(fù)指令;
步驟204、根據(jù)所述修復(fù)指令對(duì)所述監(jiān)控軟件進(jìn)行修復(fù)。
本發(fā)明實(shí)施例中,在客戶端上部署監(jiān)控軟件的自檢工具,用于監(jiān)測(cè)客戶端上的監(jiān)控軟件的工作狀態(tài)。若監(jiān)控軟件的工作狀態(tài)為非正常狀態(tài),則向該監(jiān)控軟件的服務(wù)器發(fā)送告警消息,以使服務(wù)器根據(jù)告警消息制定出修復(fù)策略,并向客戶端反饋修復(fù)指令。自檢工具則可根據(jù)該修復(fù)指令對(duì)監(jiān)控軟件進(jìn)行修復(fù)。本發(fā)明實(shí)施例實(shí)現(xiàn)了監(jiān)控軟件的故障自檢和問(wèn)題修復(fù)功能,自動(dòng)運(yùn)行,及時(shí)發(fā)現(xiàn)并修復(fù)問(wèn)題,提高了對(duì)監(jiān)控軟件監(jiān)測(cè)的時(shí)效性和準(zhǔn)確性,避免了潛在的業(yè)務(wù)風(fēng)險(xiǎn)。
上述步驟201,監(jiān)測(cè)客戶端上的監(jiān)控軟件的工作狀態(tài),包括:
監(jiān)控所述客戶端上的監(jiān)控軟件的啟動(dòng)狀態(tài)是否正常;
在啟動(dòng)狀態(tài)正常時(shí),監(jiān)控所述客戶端上的監(jiān)控軟件的采值狀態(tài)是否正常。
本發(fā)明實(shí)施例中,監(jiān)控軟件的工作狀態(tài)包括監(jiān)控軟件的啟動(dòng)狀態(tài)和監(jiān)控軟件的采值狀態(tài)。因此監(jiān)測(cè)客戶端上監(jiān)控軟件的工作狀態(tài),即為監(jiān)控監(jiān)控軟件的啟動(dòng)狀態(tài)和采值狀態(tài)。若監(jiān)控軟件的啟動(dòng)狀態(tài)和采值狀態(tài)有一個(gè)狀態(tài)不正常,或者,啟動(dòng)狀態(tài)和采值狀態(tài)均不正常,則客戶端向服務(wù)器發(fā)送告警消息,向服務(wù)器上報(bào)監(jiān)控軟件出現(xiàn)的問(wèn)題。
下面分別對(duì)監(jiān)控軟件的啟動(dòng)狀態(tài)和采值狀態(tài)進(jìn)行詳細(xì)說(shuō)明。
首先是監(jiān)控軟件的啟動(dòng)狀態(tài)。
監(jiān)控所述客戶端上的監(jiān)控軟件的啟動(dòng)狀態(tài)是否正常,包括:
監(jiān)控所述客戶端上的監(jiān)控軟件的進(jìn)程狀態(tài)是否正常;
若進(jìn)程狀態(tài)正常,則確定所述客戶端與所述服務(wù)器間的通信端口是否正常。
具體來(lái)說(shuō),本發(fā)明實(shí)施例中,對(duì)于監(jiān)控軟件啟動(dòng)狀態(tài)的檢測(cè)分為兩個(gè)部分,一是對(duì)監(jiān)控軟件的進(jìn)程的檢測(cè),另一個(gè)是對(duì)客戶端與服務(wù)器間的通信端口進(jìn)行檢測(cè),如圖3所示。對(duì)監(jiān)控軟件的進(jìn)程的檢測(cè),主要檢測(cè)進(jìn)程的數(shù)量和進(jìn)程對(duì)應(yīng)的用戶,若進(jìn)程的數(shù)量為零,則其進(jìn)程狀態(tài)不正常,直接發(fā)送告警消息至服務(wù)器;在進(jìn)程的數(shù)量不為零的情況下,檢測(cè)每個(gè)進(jìn)程對(duì)應(yīng)的用戶,如驗(yàn)證每個(gè)用戶的賬號(hào)密碼是否正確且對(duì)應(yīng),若每個(gè)進(jìn)程的用戶均通過(guò)驗(yàn)證,則表明監(jiān)控軟件的進(jìn)程狀態(tài)正常,繼續(xù)進(jìn)行后續(xù)檢測(cè);若至少有一個(gè)進(jìn)程的用戶未通過(guò)驗(yàn)證,則表明監(jiān)控軟件的進(jìn)程狀態(tài)不正常,需要發(fā)送告警消息至服務(wù)器。在監(jiān)控軟件的進(jìn)程狀態(tài)為正常的情況下,檢測(cè)客戶端與服務(wù)器是否連通,主要是監(jiān)測(cè)客戶端與服務(wù)器的通信端口是否連通。若端口不通,則發(fā)送告警消息至服務(wù)器;若端口連接正常,則表明監(jiān)控軟件的進(jìn)程狀態(tài)正常。
其次是監(jiān)控軟件的采值狀態(tài)。
所述監(jiān)控所述客戶端上的監(jiān)控軟件的采值狀態(tài)是否正常,包括:
確定所述客戶端上的監(jiān)控軟件的監(jiān)控項(xiàng)出現(xiàn)遺漏,和/或,所述客戶端上的監(jiān)控軟件最近的采值時(shí)間與當(dāng)前時(shí)間的時(shí)間差大于時(shí)間閾值。
對(duì)于監(jiān)控軟件的采值狀態(tài)的檢測(cè)也分為兩個(gè)部分,一個(gè)是檢測(cè)監(jiān)控軟件的監(jiān)控項(xiàng)是否出現(xiàn)遺漏,另一個(gè)是檢測(cè)監(jiān)控軟件的采值時(shí)間是否正常。如圖4所示,先檢測(cè)監(jiān)控軟件的監(jiān)控項(xiàng)是否出現(xiàn)遺漏,具體可以從終端的文件系統(tǒng)、數(shù)據(jù)庫(kù)等存儲(chǔ)空間中查找出該監(jiān)控軟件對(duì)應(yīng)的監(jiān)控項(xiàng)信息,將存儲(chǔ)的監(jiān)控項(xiàng)信息與監(jiān)控軟件實(shí)施監(jiān)控的監(jiān)控項(xiàng)進(jìn)行對(duì)比,若兩者不同,則表明監(jiān)控軟件的監(jiān)控項(xiàng)出現(xiàn)遺漏,向服務(wù)器發(fā)送告警消息;若兩者相同,則監(jiān)控軟件的監(jiān)控項(xiàng)未出現(xiàn)遺漏,執(zhí)行后續(xù)對(duì)采值時(shí)間的檢測(cè)。對(duì)于確定監(jiān)控軟件的采值時(shí)間是否正常,針對(duì)一個(gè)監(jiān)控項(xiàng),本發(fā)明實(shí)施例計(jì)算最近的采值時(shí)間與當(dāng)前時(shí)間之間的差值,若差值大于時(shí)間閾值,則認(rèn)為監(jiān)控軟件的采值時(shí)間不正常,發(fā)送告警消息給服務(wù)器;若差值小于或等于時(shí)間閾值,表明該監(jiān)控項(xiàng)的采值時(shí)間正常。這里每個(gè)監(jiān)控項(xiàng)的時(shí)間閾值可以相同,也可以不同,具體的時(shí)間閾值由監(jiān)控軟件的設(shè)置決定。
本發(fā)明實(shí)施例中,在對(duì)客戶端的監(jiān)控軟件進(jìn)行各項(xiàng)檢測(cè)時(shí),若檢測(cè)出問(wèn)題,則立刻向服務(wù)器發(fā)送告警消息。較佳地,告警消息采用基于簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議(Simple Network Management Protocol,簡(jiǎn)稱SNMP)的SNMP Trap通信機(jī)制。SNMP Trap是被管理設(shè)備主動(dòng)發(fā)送消息至管理設(shè)備的一種通信方式,客戶端指定SNMP版本、目的地址和約定的規(guī)則,將告警消息發(fā)送至服務(wù)器,服務(wù)器根據(jù)約定的SNMP版本和規(guī)則接收客戶端發(fā)來(lái)的告警消息。通過(guò)SNMP Trap通信機(jī)制,客戶端可以主動(dòng)地將檢測(cè)出的問(wèn)題實(shí)時(shí)發(fā)送給服務(wù)器。
本發(fā)明實(shí)施例中,若檢測(cè)出監(jiān)控軟件的工作狀態(tài)為非正常狀態(tài),向服務(wù)器發(fā)送告警消息;另一方面,若監(jiān)控軟件的工作狀態(tài)為正常狀態(tài),則向服務(wù)器發(fā)送模擬告警消息。即本發(fā)明實(shí)施例還包括:
若所述監(jiān)控軟件的工作狀態(tài)為正常狀態(tài),則向所述服務(wù)器發(fā)送模擬告警消息,以使所述服務(wù)器根據(jù)所述模擬告警消息確定所述監(jiān)控軟件的消息發(fā)送狀態(tài)為正常狀態(tài)。
具體來(lái)說(shuō),本發(fā)明實(shí)施例在完成對(duì)客戶端的監(jiān)控軟件的各項(xiàng)檢測(cè)后,向服務(wù)器發(fā)送模擬告警消息,模擬告警消息的發(fā)送基于監(jiān)控軟件客戶端和服務(wù)器之間的通信機(jī)制,整個(gè)模擬告警消息的上送流程與實(shí)際的告警消息上送過(guò)程完全一致。向服務(wù)器發(fā)送模擬告警消息的作用是,可以使服務(wù)器根據(jù)收到模擬告警消息,確定相應(yīng)客戶端中的監(jiān)控軟件的消息發(fā)送狀態(tài)為正常狀態(tài),即該客戶端可以正常將消息發(fā)送至服務(wù)器。
進(jìn)一步,本發(fā)明實(shí)施例還包括:
所述服務(wù)器根據(jù)所述告警消息和所述模擬告警消息,確定第一客戶端列表;
所述服務(wù)器將所述第一客戶端列表與第二客戶端列表對(duì)比,確定無(wú)法上送告警消息的客戶端;所述第二客戶端列表為所述服務(wù)器中存儲(chǔ)的所有客戶端的列表。
具體來(lái)說(shuō),服務(wù)器根據(jù)接收到的告警消息和模擬告警消息,確定接收到的消息對(duì)應(yīng)的客戶端列表,作為第一客戶端列表,第一客戶端列表中的客戶端為可以成功將消息發(fā)送給服務(wù)器的客戶端。同時(shí),服務(wù)器從服務(wù)器的內(nèi)存或數(shù)據(jù)庫(kù)等存儲(chǔ)區(qū)域中,獲取該服務(wù)器管理的所有客戶端的列表,作為第二客戶端列表,第二客戶端列表中的客戶端為該服務(wù)器中存儲(chǔ)的所有客戶端。將第一客戶端列表和第二客戶端列表進(jìn)行對(duì)照,確定出位于第二客戶端列表而不在第一客戶端列表中的客戶端,即為無(wú)法上送告警消息至服務(wù)器的客戶端。這樣,服務(wù)器可以通過(guò)第一客戶端列表和第二客戶端列表確定出消息發(fā)送狀態(tài)不正常的客戶端,從而對(duì)這部分客戶端進(jìn)行相應(yīng)處理。
最后,服務(wù)器在接收到客戶端發(fā)送的告警消息后,或者通過(guò)對(duì)比第一客戶端列表和第二客戶端列表,確定出存在問(wèn)題的客戶端以及相應(yīng)的問(wèn)題。從而根據(jù)相應(yīng)的問(wèn)題修復(fù)策略,查找出修復(fù)相應(yīng)問(wèn)題的方法,并下發(fā)修復(fù)指令給相應(yīng)的客戶端,客戶端可根據(jù)指令進(jìn)行問(wèn)題的自動(dòng)修復(fù)。客戶端完成問(wèn)題修復(fù)后,等待進(jìn)行下一輪的定時(shí)檢查和修復(fù)。
為了更清楚地理解本發(fā)明,下面以具體的實(shí)施例對(duì)上述流程進(jìn)行詳細(xì)描述,如圖5所示,具體實(shí)施例中針對(duì)監(jiān)控軟件的監(jiān)控方法的步驟如下所示,包括:
步驟501、客戶端檢測(cè)監(jiān)控軟件的進(jìn)程狀態(tài)是否正常,若是,則執(zhí)行步驟502;否則,執(zhí)行步驟503。
步驟502、客戶端確定客戶端與服務(wù)器間的通信端口是否正常,若是,則執(zhí)行步驟504;否則,執(zhí)行步驟503。
步驟503、客戶端向服務(wù)器發(fā)送告警消息。
步驟504、客戶端確定監(jiān)控軟件的監(jiān)控項(xiàng)是否出現(xiàn)遺漏,若是,執(zhí)行步驟503;否則,執(zhí)行步驟505。
步驟505、客戶端計(jì)算監(jiān)控軟件最近的采值時(shí)間與當(dāng)前時(shí)間的時(shí)間差是否大于時(shí)間閾值,若是,執(zhí)行步驟503;否則,執(zhí)行步驟506。
步驟506、客戶端向服務(wù)器發(fā)送模擬告警消息。
步驟507、服務(wù)器根據(jù)告警消息和模擬告警消息,確定第一客戶端列表。
步驟508、服務(wù)器將第一客戶端列表與第二客戶端列表對(duì)比,確定無(wú)法上送告警消息的客戶端。
步驟509、服務(wù)器根據(jù)接收到的告警消息,或無(wú)法上送告警消息的客戶端,確定問(wèn)題修復(fù)方案。
步驟510、服務(wù)器向客戶端發(fā)送問(wèn)題修復(fù)指令。
步驟511、客戶端根據(jù)問(wèn)題修復(fù)指令對(duì)監(jiān)控軟件進(jìn)行修復(fù)。
基于相同的技術(shù)構(gòu)思,本發(fā)明實(shí)施例還提供一種針對(duì)監(jiān)控軟件的監(jiān)控裝置,如圖6所示,包括:
監(jiān)測(cè)模塊601,用于監(jiān)測(cè)客戶端上的監(jiān)控軟件的工作狀態(tài);
收發(fā)模塊602,用于若所述監(jiān)控軟件的工作狀態(tài)為非正常狀態(tài),則向所述監(jiān)控軟件的服務(wù)器發(fā)送告警消息;
所述收發(fā)模塊602,還用于接收所述服務(wù)器發(fā)送的修復(fù)指令;
修復(fù)模塊603,用于根據(jù)所述修復(fù)指令對(duì)所述監(jiān)控軟件進(jìn)行修復(fù)。
可選的,所述監(jiān)測(cè)模塊601,具體用于:
監(jiān)控所述客戶端上的監(jiān)控軟件的啟動(dòng)狀態(tài)是否正常;
在啟動(dòng)狀態(tài)正常時(shí),監(jiān)控所述客戶端上的監(jiān)控軟件的采值狀態(tài)是否正常。
可選的,所述監(jiān)測(cè)模塊601,具體用于:
監(jiān)控所述客戶端上的監(jiān)控軟件的進(jìn)程狀態(tài)是否正常;
若進(jìn)程狀態(tài)正常,則確定所述客戶端與所述服務(wù)器間的通信端口是否正常;
確定所述客戶端上的監(jiān)控軟件的監(jiān)控項(xiàng)出現(xiàn)遺漏,和/或,所述客戶端上的監(jiān)控軟件最近的采值時(shí)間與當(dāng)前時(shí)間的時(shí)間差大于時(shí)間閾值。
可選的,所述收發(fā)模塊602,還用于:
若所述監(jiān)控軟件的工作狀態(tài)為正常狀態(tài),則向所述服務(wù)器發(fā)送模擬告警消息,以使所述服務(wù)器根據(jù)所述模擬告警消息確定所述監(jiān)控軟件的消息發(fā)送狀態(tài)為正常狀態(tài)。
可選的,還包括確定模塊604,用于:
根據(jù)所述告警消息和所述模擬告警消息,確定第一客戶端列表;
將所述第一客戶端列表與第二客戶端列表對(duì)比,確定無(wú)法上送告警消息的客戶端;所述第二客戶端列表為所述服務(wù)器中存儲(chǔ)的所有客戶端的列表。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對(duì)這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。