一、 概述
1
版本。
報表伺服器版本 |
---|
10.0 |
2
應用場景。
報表工程部署在伺服器上後,會因為各種原因導緻當機。當機後若直接重啓沒有抓取 DUMP 檔案 ,很難定位到真實原因,進而無法快速解決問題和做一些防止再發生的預防措施,造成的時間和精力損失無法估計,對伺服器維運非常不友好。
FineReport 提供【當機處理】功能。透過此功能,報表工程可以自動生成 DUMP 檔案、同時可重新啟動系統。
發生當機後,透過分析生成的 DUMP 檔案,可以快速定位當機原因,及時處理當機問題和做一些有效的預防措施,為使用者增加一道保險。
3
功能簡介。
【當機處理】功能實質上是一個當機自動處理工具,有平台入口和用戶端入口。
平台端:內建在平台的部分主要為工具運作環境監測和一些設定項,分別為當機自助向導、運作監測、當機處理、記憶體堆堆疊匯出記錄、伺服器重啓記錄。
用戶端:用戶端主要監視工程運作狀況。
注1:對於非 Tomcat 容器部署以及設計器自帶的工程,不支援【當機處理】功能。
注2:報表與 BI 整合的使用者在使用此功能時,優先呼叫 BI 工程的【當機處理】功能,禁用報表工程的【當機處理】功能,以保證不影響 BI 工程的運作。
二、平台端
超管登入數據決策系統,點選【管理系統】→【智慧維運】→【當機處理】,就可以看到平台端對應的功能模組。如下圖所示。
模組下功能分為當機自助向導、運作監測、 當機處理、記憶體堆堆疊匯出記錄、伺服器重啓記錄 5 部分。
注:當機處理頁面在平台端開啟時,載入時間較長,請耐心等待。
1
當機自助向導。
記錄報表工程的當機時間和當機原因,並提供對應的推薦處理方案。如下圖一所示。
可能的當機原因和推薦處理方案如下表所示。
當機原因 | 推薦處理方案 |
---|---|
記憶體上限溢位
| 1)排查範本、開啓併合理配置範本限制 2) 使用系統檢查檢查併合理配置堆內記憶體 系統檢查功能請參見:系統檢查 3)排查範本、開啓併合理配置範本限制 |
JDK附帶Bug | 更換爲1.8.0_181及以上版本的JDK8 |
工件系統記憶體配置不合理 | 使用系統檢查檢查併合理配置系統記憶體 系統檢查功能請參見:系統檢查 |
磁碟空間不足 | 請檢查磁碟空間並清理不必要檔案 磁碟擴容請參見:磁碟擴容 |
記憶體映射檔案數量設定過低 | 使用系統檢查檢查記憶體映射檔案數量配置並使用推薦數值進行修改 系統檢查功能請參見:系統檢查 |
舊版本圖表使用的第三方引擎Bug | 將系統更新至最新版本 工程升級請參見:升級指南 |
有當機檔案但無法確定當機原因 | 上傳雲端維運日誌進行反饋 雲端維運功能請參見:雲端健檢分析 |
ssh跳出 | 更換啟動命令或用secureCRT命令行工具 工程啟動方法請參見:Web 應用服務器開機自啓動 |
取數導緻的執行緒阻擋 | 使用抽數快取功能提升取數速度或使用範本助手功能檢查 抽數快取功能請參見:抽數緩存介紹 範本助手功能請參見:模板檢測助手 |
日誌匯出阻擋 | 調高日誌級別或查看磁碟剩餘空間是否充足 日誌級別調整請參見:日志簡介 磁碟擴容請參見:磁碟擴容 |
系統記憶體釋放時間過長 | 1)將堆記憶體調整為小於64GB的數值 堆記憶體調整方法請參見:系統檢查 2)建議更換更高性能CPU 硬體配置推薦請參見:硬件配置 |
2
運行檢測。
系統需要滿足一些條件,才能保證當機自動處理工具的正常運作。因此工程啟動後,會先對埠狀態、JDK環境、堆外記憶體、部署情況進行檢查。
檢查有問題則提醒使用者做相應修改或者禁用當機功能,無問題則持續穩定運作。如下圖一所示。
【運作檢查】每項對應的檢查內容如下表所示。
當監測到工件系統、埠、JDK、堆外記憶體影響功能使用時,會透過【平台訊息】和平台右下角【彈窗訊息】提醒使用者。
點選【處理】即可跳轉到跳轉到【當機處理】平台配置頁面,進而對其進行相應的處理。如下圖二所示。
訊息提醒內容為:當前當機自動處理工具不可用,為保證功能正常運作,建議你點選處理查看詳情。
如需使用第二章第2節的當機處理功能,必須確定【運作檢查】的每一項都符合要求。
注:若檢查結果為優,則提示【此項配置良好,無需調整】。
序号 | 檢查項 | 檢查出問題標準 | 修改建議 |
---|---|---|---|
1 | 工件系統 | 當前系統非 Windows/Linux 系統 | 建議使用 Linux 系統以保證當機自動處理工具穩定運作 此狀況下,將不進行下面的四項檢查 |
2 | 埠 | 12100埠狀態異常(埠未開啓或被佔用) | 建議開放 12100 埠或設定其他埠以保證系統正常運作埠設定請參考本文第二章第3節 |
3 | JDK | 1)工程中有 非 Oracle jre 的 tools.jar,且工程中未配置 JDK(系統配置JDK有問題) 2)工程中無 tools.jar,且工程中未配置 JDK(系統配置JDK有問題) | 建議增加系統 JDK 配置/ tools.jar 設定以保證系統正常運作JDK 和 tools.jar 設定請參考:Linux 下 Tomcat 服務器獨立部署 |
4 | 堆外記憶體 | 堆外記憶體不足 | 強烈建議物理機總記憶體減去系統所在容器使用記憶體不小於10GB |
5 | 部署方式 | 非 Tomcat 容器部署 | 建議使用 Tomcat 容器部署Tomcat 部署請參考:Tomcat 服務器部署 |
3
當機處理。
使用者可以在【當機處理】位置做一些配置設定,可設定的項為:當機自動處理、自動匯出記憶體堆堆疊、當機自動重啓、當機通知、埠設定。如下圖所示。
以下所有設定修改後需點選【儲存】按鈕才會生效。
如需使用 【當機處理】功能,必須確定第二章第2節【運作檢查】的每一項都符合要求。
當機處理-當機自動處理:
當系統配置滿足【運作監測】中的運作條件時,工具自動運作,此開關預設開啓。
當系統配置不滿足運作條件時,開關圖示灰化,不能編輯修改。
注:在工作時段(6:00-23:00),當報表工程主進程關閉5分鍾後,當機自動處理工具也跟隨關閉。
在非工作時段(0:00-6:00,23:00-24:00),報表工程主進程關閉,當機自動處理工具不跟隨關閉。
當機處理-自動匯出記憶體堆堆疊:
若【當機自動處理】未開啓,此項灰化處理,不能編輯修改。
若【當機自動處理】開啓,此項預設關閉,開啓後當發生當機時,會自動匯出當機日誌,匯出位置為:【%Tomcat%\logs\FineLog\日期】。
開關開啓時,會對工具狀態和當前系統情況做檢查。檢查系統是否整合 BI,若整合 BI,彈窗提示:該功能暫不支援 BI 系統。如下圖所示。
點選【確定】或【關閉】按鈕彈窗關閉,開關不開啓。
當機處理-當機自動重啓 :
若【當機自動處理】未開啓,此項灰化處理,不能編輯修改。
若【當機自動處理】開啓,此項預設關閉,開啓後當發生當機時會自動重啓工程。
開關開啓時,會對工具狀態和當前系統情況做檢查。
檢查系統是否整合 BI,若整合 BI,點選後彈窗提示:該功能暫不支援 BI 系統。如下圖一所示。
點選確定或關閉按鈕後彈窗關閉,開關不開啓。
檢查是否為 Windows 工件系統,是否為 Windows 服務形式。
若系統為 Windows 工件系統且為 Windows 服務形式,彈窗提示:該功能暫不支援當前系統。如下圖二所示。
點選確定和關閉按鈕後彈窗關閉,開關不開啓。
若系統為 Windows 工件系統且非Windows 服務形式,彈窗提示:當前系統可能會存在重啓失敗。如下圖三所示。
點選應答或關閉按鈕後關閉彈窗,開關開啓。
檢查時,若以上問題同時存在,僅提示當前問題中主要度最高的一個,重要度排序為:【該功能暫不支援當前系統】→【該功能暫不支援 BI 】→【當前系統可能會存在重啓失敗】。
當機處理-當機通知:若【當機自動處理】未開啓,此項灰化處理,不能編輯修改;若【當機自動處理】開啓,此項預設關閉,開啓後,可配置短信提醒、平台消息提醒、郵箱提醒,當發生當機時會按配置的通知方式通知到使用者。
當機處理-埠設定:
【當機處理工具】預設的埠為 12100,當 12100 埠異常時,可以在此處配置其他埠號。
埠號範圍要在1024 到 65535 之間,推薦12100。否則【當機處理工具】無法啟動,【當機處理】頁面無法開啟。提示:請輸入1024-65535 之間的數字,推薦12100。
輸入新的埠號後,點選【測試】,若新的埠號存在異常,則測試按鈕無法點亮。如下圖一所示。
若埠無異常,則彈窗提示:埠可用,儲存後當機自動處理工具將在新埠重啓。如下圖二所示。
4
處理記錄。
【記憶體堆堆疊匯出記錄】和【伺服器重啓記錄】分別記錄了自動生成 DUMP 檔案記錄和伺服器重啓的記錄。其中包括匯出(重啓)的開始時間、時長、是否成功、如果失敗,失敗的原因等。如下圖所示。
注:僅讀取最近一個月的當機處理記錄。
三、用戶端
伺服器工程以管理者權限啟動後,管理者在瀏覽器端輸入【http://IP:埠(當機自動處理工具預設埠為12100,若修改了埠,此處為修改後的埠)/operation/tool】,便可以進入當機工具用戶端介面,如下圖一所示。
超管使用帳號密碼登入後可進入使用者端介面,登入失敗 5 次登入鎖定,限制 60 分鍾內不可登入;登入有效期為 15 分鍾,逾時自動跳出。
使用者端介面, 主要有工程運作情況監視和匯出堆堆疊兩個功能,右上角有【注銷登入】按鈕,點選可跳出登入。如下圖二所示。
注:若使用者在當機時被登入鎖定,需要使用者手動殺掉進程。
1
運行監控。
工程運作監視中,若伺服器正常運作,則畫面顯示:正常運作中。如下圖一所示。
若發生當機,則畫面顯示:已當機,正在處理中。如下圖二所示。
當機後,工具自動處理時,使用者可手動終止工具對於當機問題的處理,進行終止後,頁面顯示:已終止當機自動處理,請及時手動重啓系統。如下圖三所示。
當機後,小工具重啓工程時,若小工具重啓工程失敗,頁面顯示:當機自動重啓失敗,請及時手動重啓系統。如下圖四所示。
2
輸出堆棧。
使用者可以在【匯出堆堆疊】處,匯出執行緒堆堆疊和記憶體堆堆疊檔案,點選相應位置匯出即可。如下圖所示。
匯出成功後提示:匯出成功,否則提示匯出失敗,匯出的堆堆疊檔案位置為:【%Tomcat%\logs\FineLog\日期】。