[0034]4)、連接池連接拒絕、失效、超時(shí)、重置、自動(dòng)提交失敗
[0035] i)、采用shell腳本通過ping大包和小包來實(shí)時(shí)監(jiān)控中間件主機(jī)到數(shù)據(jù)庫主機(jī)網(wǎng) 絡(luò)情況,并將日志數(shù)據(jù)輸出到文件。
[0036] ii)、在服務(wù)器上部署OSW工具來實(shí)時(shí)監(jiān)控主機(jī)CPU,內(nèi)存,磁盤10消耗情況,以及 中間件到數(shù)據(jù)庫主機(jī)之間的路由跟蹤,并將日志數(shù)據(jù)輸出到文件。
[0037] iii)、采用shell腳本通過從中間件主機(jī)telnet實(shí)時(shí)檢測(cè)數(shù)據(jù)庫主機(jī)1521監(jiān) 聽端口網(wǎng)絡(luò),并將日志數(shù)據(jù)輸出到文件。
[0038] iv)、采用shell腳本實(shí)時(shí)通過weblogic.jar直連數(shù)據(jù)庫,相當(dāng)于數(shù)據(jù)庫客戶端連 接數(shù)據(jù)庫一樣,并將日志數(shù)據(jù)輸出到文件。
[0039] V)、采用shell腳本通過tcpdump工具實(shí)時(shí)抓中間件到數(shù)據(jù)庫之間的雙向網(wǎng)絡(luò)。并 將日志數(shù)據(jù)輸出到文件。
[0040] Vi)、自動(dòng)分析weblogic的服務(wù)日志文件是否有出現(xiàn)連接失效的關(guān)鍵字,并將相 關(guān)的日志輸出到文件。
[0041] 2、告警層
[0042] 1)、http網(wǎng)絡(luò)探測(cè)
[0043] 通過http地址訪問應(yīng)用程序如果無法正常訪問說明應(yīng)用服務(wù)有問題,就會(huì)發(fā)送 告警短信給維護(hù)人員。
[0044] 2)、連接池失效weblogic服務(wù)自動(dòng)重啟
[0045] 在中間件集群情況下,當(dāng)中間件連接池的狀態(tài)出現(xiàn)'Connection reset' ,'Connectiontimedout','Connectionrefused','Connectautocommitfail'等 連接池失效問題,監(jiān)控腳本會(huì)自動(dòng)拉起重啟中間件服務(wù),讓用戶無法感知的使用應(yīng)用系統(tǒng)。
[0046] 3)、連接池連接激活數(shù)
[0047] 當(dāng)時(shí)連接數(shù)當(dāng)前激活數(shù)達(dá)到連接數(shù)最大容易的80%的時(shí)候會(huì)產(chǎn)生告警提示,說明 當(dāng)前連接數(shù)可能快夠了,需要做連接數(shù)的調(diào)整。
[0048] 3、分析層
[0049] 1)、連接池連接數(shù)滿分析
[0050] 當(dāng)中間件的連接池的連接數(shù)據(jù)被占滿的時(shí)候,通過分析監(jiān)控日志和weblogic日 志文件多半是因?yàn)檫B接泄露占用了連接而不釋放導(dǎo)致連接數(shù)全部占滿。如果本身最大容量 太小可以適當(dāng)按基線來調(diào)整。如果因?yàn)檫B接泄露導(dǎo)致而不釋放,建議調(diào)整weblogic連接池 的超時(shí)時(shí)間參數(shù)設(shè)置。
[0051] 2)、連接池連接泄露分析
[0052] 當(dāng)從監(jiān)控日志中發(fā)現(xiàn)'AJDBCpoolconnectionleakwasdetected' 關(guān)鍵字類 的錯(cuò)誤說明連接池出現(xiàn)了泄露問題了。調(diào)整連接池的參數(shù)如下:
[0053]
[0054] 以上參數(shù)調(diào)整不會(huì)影響業(yè)務(wù)運(yùn)行,調(diào)整完參數(shù)后也不需要重啟服務(wù)器或應(yīng)用。在 沒有解決連接池泄漏問題之前,如果沒有請(qǐng)求時(shí)連接池將一直保持為〇,不會(huì)再有連接池滿 造成請(qǐng)求無法響應(yīng)的問題。最后在weblogic服務(wù)日志中提取連接池泄露的堆棧代碼給開 發(fā)看是否有創(chuàng)建連接后,沒有關(guān)閉連接。
[0055] 3)、0SW日志分析
[0056] 當(dāng)時(shí)故障發(fā)生時(shí)用于分析當(dāng)時(shí)故障時(shí)間點(diǎn)的主機(jī)CPU,內(nèi)存和磁盤10消耗情況。 同時(shí)能夠提取出中間件到數(shù)據(jù)庫之間網(wǎng)絡(luò)的路由情況;從而更加容易協(xié)助定位問題的原 因。
[0057] 4)、連接池連接拒絕、失效、超時(shí)、重置、自動(dòng)提交失敗
[0058] 關(guān)于中間件連接池拒絕、失效、超時(shí)、重置、自動(dòng)提交頻日志無法分析是中間件的 問題,網(wǎng)絡(luò)問題,還是數(shù)據(jù)庫的原因。只有拿出數(shù)據(jù)來證明才能讓客戶信服。
[0059] i)、通過ping中間件主機(jī)到數(shù)據(jù)庫主機(jī)的大小數(shù)據(jù)包,例如:日志文件中有出現(xiàn) 'DestinationHostUnreachable',說明網(wǎng)絡(luò)不通,中間件無法連接數(shù)據(jù)庫網(wǎng)絡(luò)。導(dǎo)致連接 超時(shí)。
[0060] ii)、通過telnet中間件到數(shù)據(jù)庫的1521端口檢測(cè),測(cè)試數(shù)據(jù)庫監(jiān)聽端口是不是 沒有問題,例如日志中出現(xiàn)'telnet:connecttoaddressxx.xx.xx.xx:Connectiontimed out'說明數(shù)據(jù)庫監(jiān)聽端口沒有啟動(dòng),或者防火墻策略那邊有問題。
[0061] iii)、通過weblogic.jar直連數(shù)據(jù)庫,測(cè)試中間件是否能正常連接數(shù)據(jù)庫,例如 日志中出現(xiàn)'Errorencountered',說明數(shù)據(jù)庫有問題,或者防火墻策略那邊有問題。
[0062] iv)、從中間件和數(shù)據(jù)庫中將tcpdump抓包數(shù)據(jù)下載本地,采用wireshark工具 分析每個(gè)數(shù)據(jù)包流。如果中間件發(fā)包給數(shù)據(jù)庫端,數(shù)據(jù)庫端沒有收到包,或是沒有反應(yīng), 這樣能證明中間件到數(shù)據(jù)庫端網(wǎng)絡(luò)出現(xiàn)了問題。例如網(wǎng)絡(luò)數(shù)據(jù)包中有出現(xiàn)大量的'TCP Retransmission (TCP 重傳)','TCP Out-of-order (TCP 包亂序)','TCP Dup Ack (TCP 包 重傳)' TCP錯(cuò)誤,說明防火墻里面參數(shù)配置不合理,導(dǎo)致網(wǎng)絡(luò)不穩(wěn)定。
[0063] 本發(fā)明提供的weblogic連接池失效監(jiān)測(cè)方法,通過對(duì)中間件連接池失效進(jìn)行直 接監(jiān)控,提前對(duì)連接池將滿發(fā)送告警,通過預(yù)估值來調(diào)整連接池最大容量值,以及連接池失 效后第一時(shí)間自動(dòng)重啟中間件服務(wù),具體優(yōu)點(diǎn)如下:1)通過自動(dòng)監(jiān)控連接池失效問題,自 動(dòng)重啟中間件服務(wù)讓用戶無感知的繼續(xù)進(jìn)行業(yè)務(wù)辦理。2)通過自動(dòng)監(jiān)控連接池更加容易發(fā) 現(xiàn)連接池泄露和連接池連接滿的問題。3)通過腳本監(jiān)控可以第一時(shí)間拿到故障發(fā)生點(diǎn)所產(chǎn) 生的日志,并通過提出流程更加容易分析連接池失效原因,以至于不會(huì)那么盲目的分析日 )'、〇
[0064] 雖然本發(fā)明已以較佳實(shí)施例揭示如上,然其并非用以限定本發(fā)明,任何本領(lǐng)域技 術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許的修改和完善,因此本發(fā)明的保護(hù)范 圍當(dāng)以權(quán)利要求書所界定的為準(zhǔn)。
【主權(quán)項(xiàng)】
1. 一種weblogic連接池失效監(jiān)測(cè)方法,其特征在于,包括如下步驟: a) 采用腳本監(jiān)控weblogic連接池當(dāng)前連接激活數(shù),如果當(dāng)前連接激活數(shù)達(dá)到預(yù)設(shè)閥 值產(chǎn)生告警提示; b) 采用腳本定期查看日志監(jiān)控weblogic連接池是否出現(xiàn)泄露問題,對(duì)查找到的泄露 連接,如果在預(yù)定釋放時(shí)間內(nèi)沒有活動(dòng),將之釋放并回收到連接池; c) 實(shí)時(shí)監(jiān)控weblogic連接池的運(yùn)行狀態(tài),如果發(fā)現(xiàn)weblogic連接池處于失效狀態(tài),利 用腳本自動(dòng)重啟weblogic服務(wù)。2. 如權(quán)利要求1所述的weblogic連接池失效監(jiān)測(cè)方法,其特征在于,所述步驟a)如果 監(jiān)控到當(dāng)前連接激活數(shù)達(dá)到第一預(yù)設(shè)閥值則產(chǎn)生告警提示并立即執(zhí)行步驟b)進(jìn)行泄露監(jiān) 控,如果監(jiān)控到當(dāng)前連接激活數(shù)達(dá)到第二預(yù)設(shè)閥值則減少預(yù)定釋放時(shí)間,或者調(diào)整連接池 最大容量值,所述第二預(yù)設(shè)閥值大于第一預(yù)設(shè)閥值。3. 如權(quán)利要求1所述的weblogic連接池失效監(jiān)測(cè)方法,其特征在于,所述步驟b)還包 括提取查找到的泄露連接對(duì)應(yīng)的堆棧代碼,判斷是否沒有加入關(guān)閉連接代碼并進(jìn)行更正。4. 如權(quán)利要求1所述的weblogic連接池失效監(jiān)測(cè)方法,其特征在于,所述步驟c)通過 實(shí)時(shí)監(jiān)控記錄weblogic中間件主機(jī)和數(shù)據(jù)庫主機(jī)的資源消耗情況,并跟蹤記錄weblogic 中間件主機(jī)到數(shù)據(jù)庫主機(jī)之間的路由,判斷weblogic連接池是否失效并進(jìn)行故障定位。5. 如權(quán)利要求4所述的weblogic連接池失效監(jiān)測(cè)方法,其特征在于,所述步驟c)采用 shell腳本通過ping不同大小的數(shù)據(jù)包來實(shí)時(shí)監(jiān)控weblogic中間件主機(jī)到數(shù)據(jù)庫主機(jī)的 網(wǎng)絡(luò)情況;或者采用shell腳本從weblogic中間件主機(jī)telnet到數(shù)據(jù)庫主機(jī)進(jìn)行端口檢 測(cè);或者采用shell腳本通過tcpdump工具實(shí)時(shí)抓取weblogic中間件到數(shù)據(jù)庫之間的雙向 網(wǎng)絡(luò)數(shù)據(jù)包。6. 如權(quán)利要求4所述的weblogic連接池失效監(jiān)測(cè)方法,其特征在于,所述步驟c)通過 部署OSW工具來實(shí)時(shí)監(jiān)控主機(jī)CPU,內(nèi)存和磁盤IO消耗情況;或者采用shell腳本實(shí)時(shí)通 過weblogic. jar直連數(shù)據(jù)庫。7. 如權(quán)利要求1所述的weblogic連接池失效監(jiān)測(cè)方法,其特征在于,所述步驟c)通過 查找weblogic的服務(wù)日志文件是否出現(xiàn)連接失效關(guān)鍵字,從而判斷weblogic連接池是否 處于失效狀態(tài)。8. 如權(quán)利要求7所述的weblogic連接池失效監(jiān)測(cè)方法,其特征在于,所述連接失效關(guān) 鍵字包括連接拒絕、失效、超時(shí)、重置或自動(dòng)提交失敗。
【專利摘要】本發(fā)明公開了一種weblogic連接池失效監(jiān)測(cè)方法,包括如下步驟:a)采用腳本監(jiān)控weblogic連接池當(dāng)前連接激活數(shù),如果當(dāng)前連接激活數(shù)達(dá)到預(yù)設(shè)閥值產(chǎn)生告警提示;b)采用腳本定期查看日志監(jiān)控weblogic連接池是否出現(xiàn)泄露問題,對(duì)查找到的泄露連接,如果在預(yù)定釋放時(shí)間內(nèi)沒有活動(dòng),將之釋放并回收到連接池;c)實(shí)時(shí)監(jiān)控weblogic連接池的運(yùn)行狀態(tài),如果發(fā)現(xiàn)weblogic連接池處于失效狀態(tài),利用腳本自動(dòng)重啟weblogic服務(wù)。本發(fā)明提供的weblogic連接池失效監(jiān)測(cè)方法,能夠?qū)χ虚g件連接池失效進(jìn)行直接監(jiān)控,提前發(fā)送告警,預(yù)估調(diào)整連接池最大容量值,大大提升業(yè)務(wù)系統(tǒng)的性能穩(wěn)定性。
【IPC分類】H04L12/26, H04L12/24, H04L29/08
【公開號(hào)】CN104980524
【申請(qǐng)?zhí)枴緾N201510402259
【發(fā)明人】程永新, 徐華春, 暨景書, 晏杰宏
【申請(qǐng)人】上海新炬網(wǎng)絡(luò)信息技術(shù)有限公司
【公開日】2015年10月14日
【申請(qǐng)日】2015年7月10日