WebLogic Server提供內置工具,無需額外安裝軟件,適合快速查看基礎資源狀態:
http://<WebLogic服務器IP>:7001/console,登錄后導航至Monitoring section,選擇服務器實例(如MyServer),可查看Performance標簽下的CPU使用率、內存占用(堆內存/非堆內存)、線程池活躍線程數、JDBC連接池等待連接數等指標;還可配置Alerts(報警規則),設置閾值(如活躍線程數超過100時觸發),通過電子郵件或SNMP發送通知。ServerRuntimeMBean的健康狀態(HealthState)和子系統健康狀態(SubsystemHealthStates),輸出到日志文件或數據庫進行分析。示例腳本:connect('weblogic', 'welcome1', 't3://localhost:7001')
serverRuntime = cmo.getServerRuntime()
print("Server Health State:", serverRuntime.getHealthState())
subsystems = serverRuntime.getSubsystemHealthStates()
for subsystem in subsystems:
print(f"Subsystem {subsystem.getName()} Health State:", subsystem.getHealthState())
disconnect()
```。
JMX是Java標準接口,可深度獲取WebLogic運行時指標,適合集成到第三方監控系統:
bin/setDomainEnv.sh文件,在JAVA_OPTIONS中添加以下參數(關閉認證和SSL,生產環境建議開啟):JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.port=9000"
JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.authenticate=false"
JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.ssl=false"
重啟WebLogic服務器使配置生效。jconsole或visualvm工具,選擇“遠程”選項卡,輸入WebLogic服務器IP和JMX端口(如9000),連接后可查看內存(堆內存使用率、GC次數)、線程(活躍線程數、死鎖)、MBean(自定義監控指標)等詳細信息。第三方工具提供更強大的可視化、報警和集中管理功能,適合生產環境:
weblogic_exporter(WebLogic專用導出器)采集WebLogic指標(如JVM內存、線程池、JDBC連接池)。weblogic.server.cpu.usage)、觸發器(如CPU使用率超過90%持續5分鐘)和動作(如發送郵件報警)。commands.cfg中,配置服務檢查(如check_weblogic_process)和報警閾值。通過Debian系統自帶工具監控WebLogic所在服務器的基礎資源,輔助定位性能瓶頸:
top命令實時顯示系統中運行的進程(包括WebLogic進程)的CPU、內存占用;htop是其增強版,提供更友好的交互界面(需安裝:sudo apt install htop)。vmstat 1 5每1秒采樣一次,共5次,查看CPU使用率(us用戶態、sy內核態)、內存交換(si/so)、磁盤IO(bi/bo)等指標。sysstat包(sudo apt install sysstat),例如iostat -x 1查看磁盤IO的讀寫速率、等待時間。netstat -tulnp查看TCP/UDP監聽端口(如WebLogic的7001管理端口、8001應用端口),確認服務是否正常監聽。分析WebLogic日志文件,了解服務器運行狀態和潛在問題:
servers/<服務器名稱>/logs/access.log,記錄HTTP請求信息(如請求URL、響應時間、客戶端IP),可通過grep、awk等工具分析訪問量、響應時間趨勢(如awk '{print $10}' access.log | sort | uniq -c統計響應時間分布)。servers/<服務器名稱>/logs/<服務器名稱>.log,記錄WebLogic運行時的錯誤、警告信息(如JDBC連接失敗、線程池耗盡),可使用tail -f實時查看,或通過logrotate工具歸檔日志(避免日志文件過大)。