本發(fā)明涉及計(jì)算機(jī)技術(shù),尤其涉及一種weblogic實(shí)例監(jiān)控方法及裝置。
背景技術(shù):
weblogic(oracle公司出品的應(yīng)用服務(wù)器軟件)是基于javaee(即j2ee,java2platformenterpriseedition,java2平臺(tái)企業(yè)版)架構(gòu)的中間件,可作為用于開(kāi)發(fā)、集成、部署和管理大型分布式web應(yīng)用、網(wǎng)絡(luò)應(yīng)用和數(shù)據(jù)庫(kù)應(yīng)用的java應(yīng)用服務(wù)器。weblogic將java的動(dòng)態(tài)功能和javaenterprise(java企業(yè))標(biāo)準(zhǔn)的安全性引入大型網(wǎng)絡(luò)應(yīng)用的開(kāi)發(fā)、集成、部署和管理之中,具有開(kāi)發(fā)簡(jiǎn)便、可擴(kuò)展性強(qiáng)、靈活性和可靠性較高等優(yōu)勢(shì)。
在weblogic系統(tǒng)中,應(yīng)用程序部署在大量的weblogic實(shí)例上,weblogic實(shí)例運(yùn)行的狀態(tài)可能會(huì)直接影響前臺(tái)業(yè)務(wù)的業(yè)務(wù)受理。
目前對(duì)weblogic實(shí)例的監(jiān)控還缺乏研究,基本停留在人工監(jiān)控階段,一些自動(dòng)監(jiān)控,也只能對(duì)weblogic實(shí)例運(yùn)行的服務(wù)器的硬件狀態(tài)進(jìn)行監(jiān)控。而對(duì)weblogic實(shí)例監(jiān)控不及時(shí),可能會(huì)導(dǎo)致weblogic實(shí)例出現(xiàn)問(wèn)題,影響服務(wù)器處理效率,系統(tǒng)穩(wěn)定性較差。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種weblogic實(shí)例監(jiān)控方法及裝置,用以解決現(xiàn)有技術(shù)中weblogic實(shí)例監(jiān)控不及時(shí)的技術(shù)問(wèn)題。
本發(fā)明提供一種weblogic實(shí)例監(jiān)控方法,包括:
獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù);
判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值;
若超過(guò)閾值,則向用戶發(fā)送警示信息。
進(jìn)一步地,獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù),包括:
通過(guò)嗅探接口獲取weblogic實(shí)例的運(yùn)行狀態(tài);
判斷所述weblogic實(shí)例的運(yùn)行狀態(tài)是否正常;
若正常,則通過(guò)嗅探接口獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)。
進(jìn)一步地,所述方法還包括:
若所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)超過(guò)閾值,則獲取weblogic實(shí)例的進(jìn)程編碼,并進(jìn)行快照保存,供用戶后續(xù)查看;
強(qiáng)制關(guān)閉所述weblogic實(shí)例,并重新啟動(dòng)所述weblogic實(shí)例。
進(jìn)一步地,判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值,包括:
獲取所述weblogic實(shí)例的執(zhí)行進(jìn)程數(shù);
判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
其中,在判斷所述weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還包括:
每隔預(yù)設(shè)時(shí)間,獲取服務(wù)器中所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù);
根據(jù)所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)中的最高值,確定執(zhí)行進(jìn)程數(shù)對(duì)應(yīng)的閾值。
進(jìn)一步地,判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值,包括:
判斷所述weblogic實(shí)例的連接池是否泄漏;
若沒(méi)有泄漏,則獲取所述weblogic實(shí)例的連接池連接數(shù);
判斷所述weblogic實(shí)例的連接池連接數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
其中,在判斷所述weblogic實(shí)例的連接池連接數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還包括:
每隔預(yù)設(shè)時(shí)間,獲取服務(wù)器中所有weblogic實(shí)例的連接池連接數(shù);
根據(jù)所有weblogic實(shí)例的連接池連接數(shù)中的最高值,確定連接池連接數(shù)對(duì)應(yīng)的閾值。
進(jìn)一步地,判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值,包括:
獲取所述weblogic實(shí)例的事務(wù)回滾數(shù);
判斷所述weblogic實(shí)例的事務(wù)回滾數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
其中,在判斷所述weblogic實(shí)例的事務(wù)回滾數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還包括:
根據(jù)服務(wù)器與數(shù)據(jù)庫(kù)之間的請(qǐng)求數(shù)確定事務(wù)回滾數(shù)對(duì)應(yīng)的閾值。
本發(fā)明還提供一種weblogic實(shí)例監(jiān)控裝置,包括:
獲取模塊,用于獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù);
判斷模塊,用于判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值;
發(fā)送模塊,用于在超過(guò)閾值時(shí),向用戶發(fā)送警示信息。
進(jìn)一步地,所述獲取模塊具體用于:
通過(guò)嗅探接口獲取weblogic實(shí)例的運(yùn)行狀態(tài);
判斷所述weblogic實(shí)例的運(yùn)行狀態(tài)是否正常;
若正常,則通過(guò)嗅探接口獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)。
進(jìn)一步地,所述發(fā)送模塊還用于:
若所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)超過(guò)閾值,則獲取weblogic實(shí)例的進(jìn)程編碼,并進(jìn)行快照保存,供用戶后續(xù)查看;
強(qiáng)制關(guān)閉所述weblogic實(shí)例,并重新啟動(dòng)所述weblogic實(shí)例。
進(jìn)一步地,所述判斷模塊具體用于:
獲取所述weblogic實(shí)例的執(zhí)行進(jìn)程數(shù);
判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
其中,在判斷所述weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還包括:
每隔預(yù)設(shè)時(shí)間,獲取服務(wù)器中所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù);
根據(jù)所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)中的最高值,確定執(zhí)行進(jìn)程數(shù)對(duì)應(yīng)的閾值。
進(jìn)一步地,所述判斷模塊具體用于:
判斷所述weblogic實(shí)例的連接池是否泄漏;
若沒(méi)有泄漏,則獲取所述weblogic實(shí)例的連接池連接數(shù);
判斷所述weblogic實(shí)例的連接池連接數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
其中,在判斷所述weblogic實(shí)例的連接池連接數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還包括:
每隔預(yù)設(shè)時(shí)間,獲取服務(wù)器中所有weblogic實(shí)例的連接池連接數(shù);
根據(jù)所有weblogic實(shí)例的連接池連接數(shù)中的最高值,確定連接池連接數(shù)對(duì)應(yīng)的閾值。
進(jìn)一步地,所述判斷模塊具體用于:
獲取所述weblogic實(shí)例的事務(wù)回滾數(shù);
判斷所述weblogic實(shí)例的事務(wù)回滾數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
其中,在判斷所述weblogic實(shí)例的事務(wù)回滾數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還包括:
根據(jù)服務(wù)器與數(shù)據(jù)庫(kù)之間的請(qǐng)求數(shù)確定事務(wù)回滾數(shù)對(duì)應(yīng)的閾值。
本發(fā)明提供的weblogic實(shí)例監(jiān)控方法及裝置,通過(guò)獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù),并判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值,若超過(guò)閾值,則向用戶發(fā)送警示信息,能夠及時(shí)發(fā)現(xiàn)存在問(wèn)題隱患的weblogic實(shí)例并通知用戶,提高服務(wù)器處理效率以及系統(tǒng)運(yùn)行穩(wěn)定性。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例一提供的weblogic實(shí)例監(jiān)控方法的流程圖;
圖2為本發(fā)明實(shí)施例二提供的weblogic實(shí)例監(jiān)控方法的流程圖;
圖3為本發(fā)明實(shí)施例三提供的weblogic實(shí)例監(jiān)控裝置的結(jié)構(gòu)框圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
在本申請(qǐng)實(shí)施例中使用的術(shù)語(yǔ)是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本發(fā)明。在本申請(qǐng)實(shí)施例中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。
應(yīng)當(dāng)理解,本文中使用的術(shù)語(yǔ)“和/或”僅僅是一種描述關(guān)聯(lián)對(duì)象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系,例如,a和/或b,可以表示:?jiǎn)为?dú)存在a,同時(shí)存在a和b,單獨(dú)存在b這三種情況。另外,本文中字符“/”,一般表示前后關(guān)聯(lián)對(duì)象是一種“或”的關(guān)系。
取決于語(yǔ)境,如在此所使用的詞語(yǔ)“如果”、“若”可以被解釋成為“在……時(shí)”或“當(dāng)……時(shí)”或“響應(yīng)于確定”或“響應(yīng)于檢測(cè)”。類(lèi)似地,取決于語(yǔ)境,短語(yǔ)“如果確定”或“如果檢測(cè)(陳述的條件或事件)”可以被解釋成為“當(dāng)確定時(shí)”或“響應(yīng)于確定”或“當(dāng)檢測(cè)(陳述的條件或事件)時(shí)”或“響應(yīng)于檢測(cè)(陳述的條件或事件)”。
還需要說(shuō)明的是,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的商品或者系統(tǒng)不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種商品或者系統(tǒng)所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的商品或者系統(tǒng)中還存在另外的相同要素。
實(shí)施例一
本發(fā)明實(shí)施例一提供一種weblogic實(shí)例監(jiān)控方法。圖1為本發(fā)明實(shí)施例一提供的weblogic實(shí)例監(jiān)控方法的流程圖。如圖1所示,本實(shí)施例中的方法,可以包括:
步驟101、獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)。
具體地,可以通過(guò)嗅探接口(嗅探器)來(lái)獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)。weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是指能夠表征weblogic實(shí)例當(dāng)前的執(zhí)行狀態(tài)的參數(shù),例如可以是weblogic實(shí)例的等待隊(duì)列數(shù)、執(zhí)行進(jìn)程數(shù)、事務(wù)回滾數(shù)等。
步驟102、判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值。
所述執(zhí)行狀態(tài)參數(shù)可能包括多個(gè)種類(lèi),例如,所述執(zhí)行狀態(tài)參數(shù)可以包括等待隊(duì)列數(shù)和執(zhí)行進(jìn)程數(shù),則不同類(lèi)型的執(zhí)行狀態(tài)參數(shù)可以對(duì)應(yīng)不同的閾值,例如,所述等待隊(duì)列數(shù)對(duì)應(yīng)的閾值可以為100,所述執(zhí)行進(jìn)程數(shù)對(duì)應(yīng)的閾值可以為50。
所述閾值可以由用戶根據(jù)實(shí)際需要來(lái)設(shè)置,也可以采用默認(rèn)設(shè)置。
優(yōu)選的是,本實(shí)施例中,weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)可以包括下述至少一項(xiàng):weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)、連接池連接數(shù)、事務(wù)回滾數(shù)。相應(yīng)的,本步驟中的判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值,可以包括下述三項(xiàng)中的至少一項(xiàng):
(1)、獲取所述weblogic實(shí)例的執(zhí)行進(jìn)程數(shù);判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
(2)、判斷所述weblogic實(shí)例的連接池是否泄漏;若有泄漏,則向用戶發(fā)送警示信息,若沒(méi)有泄漏,則獲取所述weblogic實(shí)例的連接池連接數(shù);判斷所述weblogic實(shí)例的連接池連接數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
(3)、獲取所述weblogic實(shí)例的事務(wù)回滾數(shù);判斷所述weblogic實(shí)例的事務(wù)回滾數(shù)是否超過(guò)對(duì)應(yīng)的閾值。
進(jìn)一步地,在判斷所述weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還可以:每隔預(yù)設(shè)時(shí)間,獲取服務(wù)器中所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù);根據(jù)所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)中的最高值,確定執(zhí)行進(jìn)程數(shù)對(duì)應(yīng)的閾值。
在判斷所述weblogic實(shí)例的連接池連接數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還可以:每隔預(yù)設(shè)時(shí)間,獲取服務(wù)器中所有weblogic實(shí)例的連接池連接數(shù);根據(jù)所有weblogic實(shí)例的連接池連接數(shù)中的最高值,確定連接池連接數(shù)對(duì)應(yīng)的閾值。
其中,根據(jù)所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)/連接池連接數(shù)中的最高值,確定執(zhí)行進(jìn)程數(shù)/連接池連接數(shù)對(duì)應(yīng)的閾值,可以具體為:對(duì)于每一時(shí)段來(lái)說(shuō),確定所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)/連接池連接數(shù)在該時(shí)段的最高值;對(duì)各個(gè)時(shí)段的執(zhí)行進(jìn)程數(shù)/連接池連接數(shù)的最高值取平均,得到執(zhí)行進(jìn)程數(shù)/連接池連接數(shù)對(duì)應(yīng)的閾值。
這樣,根據(jù)之前的執(zhí)行進(jìn)程數(shù)/連接池連接數(shù)的最高值,來(lái)確定對(duì)應(yīng)的閾值,能夠及時(shí)發(fā)現(xiàn)執(zhí)行進(jìn)程數(shù)/連接池連接數(shù)突然出現(xiàn)異常的weblogic實(shí)例,防止系統(tǒng)崩潰。
進(jìn)一步地,在判斷所述weblogic實(shí)例的事務(wù)回滾數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還可以:根據(jù)服務(wù)器與數(shù)據(jù)庫(kù)之間的請(qǐng)求數(shù)確定事務(wù)回滾數(shù)對(duì)應(yīng)的閾值。
具體的,服務(wù)器與數(shù)據(jù)庫(kù)之間的請(qǐng)求數(shù)越多,所述事務(wù)回滾數(shù)對(duì)應(yīng)的閾值可以越高,服務(wù)器與數(shù)據(jù)庫(kù)之間的請(qǐng)求數(shù)越少,所述事務(wù)回滾數(shù)對(duì)應(yīng)的閾值可以越低,例如,所述事務(wù)回滾數(shù)對(duì)應(yīng)的閾值可以為請(qǐng)求數(shù)的10%。
通過(guò)服務(wù)器與數(shù)據(jù)庫(kù)之間的請(qǐng)求數(shù)來(lái)確定事務(wù)回滾數(shù)的閾值,能夠使閾值隨請(qǐng)求數(shù)的變化而變化,避免單一閾值,更能適應(yīng)復(fù)雜的應(yīng)用環(huán)境。
步驟103、若超過(guò)閾值,則向用戶發(fā)送警示信息。
若weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)超過(guò)閾值,則可以認(rèn)為weblogic實(shí)例出現(xiàn)異常。如果所述執(zhí)行狀態(tài)參數(shù)中包括多個(gè)參數(shù),如既獲取了等待隊(duì)列數(shù)又獲取了執(zhí)行進(jìn)程數(shù),則本步驟中的若超過(guò)閾值,則向用戶發(fā)送警示信息,可以包括:
若所述執(zhí)行狀態(tài)參數(shù)中的每個(gè)參數(shù)都超過(guò)了對(duì)應(yīng)的閾值,則向用戶發(fā)送警示信息,反之則不發(fā)送,例如,只有在等待隊(duì)列數(shù)超過(guò)了對(duì)應(yīng)的閾值100且執(zhí)行進(jìn)程數(shù)超過(guò)了對(duì)應(yīng)的閾值50的時(shí)候,才向用戶發(fā)送警示信息;
或者,若所述執(zhí)行狀態(tài)參數(shù)中的至少一個(gè)參數(shù)超過(guò)了對(duì)應(yīng)的閾值,則向用戶發(fā)送警示信息,反之則不發(fā)送,例如,只要等待隊(duì)列數(shù)超過(guò)了對(duì)應(yīng)的閾值100或執(zhí)行進(jìn)程數(shù)超過(guò)了對(duì)應(yīng)的閾值50,就向用戶發(fā)送警示信息。
向用戶發(fā)送警示信息可以具體包括:在顯示界面向用戶推送警示信息,或者,通過(guò)短信或郵件向用戶發(fā)送警示信息。用戶接受到警示信息后,可以及時(shí)對(duì)出現(xiàn)問(wèn)題的weblogic實(shí)例進(jìn)行處理。
進(jìn)一步地,若所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)超過(guò)閾值,除了向用戶發(fā)送警示信息以外,還可以自動(dòng)進(jìn)行異常處理,異常處理可以包括:
獲取weblogic實(shí)例的進(jìn)程編碼,并進(jìn)行快照保存,供用戶后續(xù)查看;強(qiáng)制關(guān)閉所述weblogic實(shí)例,并重新啟動(dòng)所述weblogic實(shí)例。
在實(shí)際應(yīng)用中,可以采用本實(shí)施例提供的方法對(duì)每個(gè)weblogic實(shí)例進(jìn)行監(jiān)控,每個(gè)一段時(shí)間采集weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù),若weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)有異常,則記錄異常信息,并通知用戶。若weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)沒(méi)有異常,則進(jìn)行下一個(gè)weblogic實(shí)例的監(jiān)控,全部weblogic實(shí)例掃描完后,可以記錄掃描數(shù)據(jù),并將數(shù)據(jù)通過(guò)短信或郵件等方式發(fā)送給用戶。
本實(shí)施例提供的weblogic實(shí)例監(jiān)控方法,通過(guò)獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù),并判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值,若超過(guò)閾值,則向用戶發(fā)送警示信息,能夠及時(shí)發(fā)現(xiàn)存在問(wèn)題隱患的weblogic實(shí)例并通知用戶,提高服務(wù)器處理效率以及系統(tǒng)運(yùn)行穩(wěn)定性。
實(shí)施例二
本發(fā)明實(shí)施例二提供一種weblogic實(shí)例監(jiān)控方法。圖2為本發(fā)明實(shí)施例二提供的weblogic實(shí)例監(jiān)控方法的流程圖。如圖2所示,本實(shí)施例中的方法,可以包括:
步驟201、通過(guò)嗅探接口獲取weblogic實(shí)例的運(yùn)行狀態(tài)。
步驟202、判斷所述weblogic實(shí)例的運(yùn)行狀態(tài)是否正常。
步驟203、若正常,則通過(guò)嗅探接口獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)。
本實(shí)施例中,在獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)之前,可以首先利用嗅探接口獲取weblogic實(shí)例的運(yùn)行狀態(tài),weblogic實(shí)例的運(yùn)行狀態(tài)可能為正?;虍惓?,若weblogic實(shí)例的運(yùn)行狀態(tài)為異常,則向用戶發(fā)送警示信息,無(wú)需再比對(duì)執(zhí)行狀態(tài)參數(shù)與閾值的關(guān)系;若weblogic實(shí)例的運(yùn)行狀態(tài)為正常,則通過(guò)嗅探接口獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)。
通過(guò)嗅探接口獲取weblogic實(shí)例的運(yùn)行狀態(tài)以及weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)的具體實(shí)現(xiàn)方法屬于現(xiàn)有技術(shù),此處不再贅述。
步驟204、判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值。
步驟205、若超過(guò)閾值,則向用戶發(fā)送警示信息。
本實(shí)施例中的步驟204至步驟205與實(shí)施例一種的步驟102至步驟103類(lèi)似,此處不再贅述。
在實(shí)際應(yīng)用中,程序啟動(dòng)后,可以輪循獲取weblogic實(shí)例的運(yùn)行狀態(tài),判斷weblogic實(shí)例當(dāng)前發(fā)運(yùn)行狀態(tài)是否正常。如果異常,記錄異常信息并發(fā)送給用戶后直接輪循下一個(gè)weblogic實(shí)例。如果運(yùn)行狀態(tài)正常,則嗅探weblogic實(shí)例執(zhí)行進(jìn)程數(shù),如果高于對(duì)應(yīng)的閾值,則記錄異常信息并向用戶發(fā)送警示信息。如果執(zhí)行進(jìn)程數(shù)正常,則嗅探weblogic實(shí)例連接池?cái)?shù)據(jù),如果連接池連接數(shù)高于對(duì)應(yīng)的閾值,或者連接池存在泄露,則記錄異常信息并向用戶發(fā)送警示信息。如果連接池正常,則獲取事務(wù)回滾數(shù),如果事務(wù)回滾數(shù)高于對(duì)應(yīng)的閥值,則記錄異常信息并向用戶發(fā)送警示信息。如果事務(wù)回滾數(shù)也沒(méi)有問(wèn)題,則記錄本次掃描中的各數(shù)據(jù),并進(jìn)行下一weblogic實(shí)例掃描。全部掃描后,通過(guò)郵件或短信向用戶發(fā)送掃描的數(shù)據(jù)。
本實(shí)施例提供的weblogic實(shí)例監(jiān)控方法,通過(guò)嗅探接口獲取weblogic實(shí)例的運(yùn)行狀態(tài),并判斷所述weblogic實(shí)例的運(yùn)行狀態(tài)是否正常,在運(yùn)行狀態(tài)正常時(shí)才進(jìn)行weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否正常的判斷,能夠更加準(zhǔn)確地判斷weblogic實(shí)例是否出現(xiàn)問(wèn)題,保證系統(tǒng)的正常運(yùn)行。
實(shí)施例三
本發(fā)明實(shí)施例三提供一種weblogic實(shí)例監(jiān)控裝置。圖3為本發(fā)明實(shí)施例三提供的weblogic實(shí)例監(jiān)控裝置的結(jié)構(gòu)框圖。如圖3所示,本實(shí)施例中的裝置,可以包括:
獲取模塊301,用于獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù);
判斷模塊302,用于判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值;
發(fā)送模塊303,用于在超過(guò)閾值時(shí),向用戶發(fā)送警示信息。
本實(shí)施例中的weblogic實(shí)例監(jiān)控裝置,可以用于執(zhí)行上述任一實(shí)施例所述的weblogic實(shí)例監(jiān)控方法,其具體實(shí)現(xiàn)原理可參照前述實(shí)施例,此處不再贅述。
本實(shí)施例提供的weblogic實(shí)例監(jiān)控裝置,通過(guò)獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù),并判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)是否超過(guò)閾值,若超過(guò)閾值,則向用戶發(fā)送警示信息,能夠及時(shí)發(fā)現(xiàn)存在問(wèn)題隱患的weblogic實(shí)例并通知用戶,提高服務(wù)器處理效率以及系統(tǒng)運(yùn)行穩(wěn)定性。
進(jìn)一步地,所述獲取模塊301具體可以用于:
通過(guò)嗅探接口獲取weblogic實(shí)例的運(yùn)行狀態(tài);
判斷所述weblogic實(shí)例的運(yùn)行狀態(tài)是否正常;
若正常,則通過(guò)嗅探接口獲取weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)。
進(jìn)一步地,所述發(fā)送模塊303還可以用于:
若所述weblogic實(shí)例的執(zhí)行狀態(tài)參數(shù)超過(guò)閾值,則獲取weblogic實(shí)例的進(jìn)程編碼,并進(jìn)行快照保存,供用戶后續(xù)查看;
強(qiáng)制關(guān)閉所述weblogic實(shí)例,并重新啟動(dòng)所述weblogic實(shí)例。
進(jìn)一步地,所述判斷模塊302具體可以用于:
獲取所述weblogic實(shí)例的執(zhí)行進(jìn)程數(shù);
判斷所述weblogic實(shí)例的執(zhí)行狀態(tài)數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
其中,在判斷所述weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還包括:
每隔預(yù)設(shè)時(shí)間,獲取服務(wù)器中所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù);
根據(jù)所有weblogic實(shí)例的執(zhí)行進(jìn)程數(shù)中的最高值,確定執(zhí)行進(jìn)程數(shù)對(duì)應(yīng)的閾值。
進(jìn)一步地,所述判斷模塊302具體可以用于:
判斷所述weblogic實(shí)例的連接池是否泄漏;
若沒(méi)有泄漏,則獲取所述weblogic實(shí)例的連接池連接數(shù);
判斷所述weblogic實(shí)例的連接池連接數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
其中,在判斷所述weblogic實(shí)例的連接池連接數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還包括:
每隔預(yù)設(shè)時(shí)間,獲取服務(wù)器中所有weblogic實(shí)例的連接池連接數(shù);
根據(jù)所有weblogic實(shí)例的連接池連接數(shù)中的最高值,確定連接池連接數(shù)對(duì)應(yīng)的閾值。
進(jìn)一步地,所述判斷模塊302具體可以用于:
獲取所述weblogic實(shí)例的事務(wù)回滾數(shù);
判斷所述weblogic實(shí)例的事務(wù)回滾數(shù)是否超過(guò)對(duì)應(yīng)的閾值;
其中,在判斷所述weblogic實(shí)例的事務(wù)回滾數(shù)是否超過(guò)對(duì)應(yīng)的閾值之前,還包括:
根據(jù)服務(wù)器與數(shù)據(jù)庫(kù)之間的請(qǐng)求數(shù)確定事務(wù)回滾數(shù)對(duì)應(yīng)的閾值。
最后應(yīng)說(shuō)明的是:以上各實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述各實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的范圍。