在Linux(如CentOS)環境中,監控WebLogic Server的運行狀態可通過自帶工具、命令行腳本或第三方監控系統實現,覆蓋從基礎狀態到深度性能的全方位監控需求。
通過瀏覽器訪問http://<WebLogic-IP>:7001/console(默認端口7001),使用管理員賬號登錄后,可監控以下核心內容:
RUNNING狀態,監控啟動/停止時間;WLST是基于Python的命令行工具,適合自動化監控和腳本化管理。通過連接WebLogic服務器,可執行以下操作:
getHealthState()方法監控服務器及子系統(如JMS、JTA)的健康狀況;ServerRuntimeMBean獲取JVM堆內存、線程池等指標,導出為日志或報警閾值;connect('weblogic', 'welcome1', 't3://localhost:7001') # 連接服務器
serverRuntime = cmo.getServerRuntime() # 獲取ServerRuntimeMBean
healthState = serverRuntime.getHealthState() # 獲取健康狀態
print("Server Health State:", healthState)
disconnect() # 斷開連接
JMX是Java標準監控接口,可通過JConsole、VisualVM等工具遠程連接WebLogic,監控JVM及WebLogic內部指標:
Domain_HOME/bin/setDomainEnv.sh,添加以下參數:JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.port=9000" # JMX端口
JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.authenticate=false" # 關閉認證(生產環境建議開啟)
JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.ssl=false" # 關閉SSL
jconsole工具,選擇“遠程”→輸入<WebLogic-IP>:9000→連接,查看內存使用、線程數、類加載等指標。通過Linux原生命令可快速查看服務器基礎資源及WebLogic進程狀態,適合日常巡檢:
uptime(顯示1分鐘、5分鐘、15分鐘平均負載);free -h(查看已用/空閑內存、Swap分區);iostat -x 1(監控磁盤讀寫速率、I/O等待時間);netstat -tulnp | grep 7001(查看WebLogic端口監聽狀態);ps -ef | grep weblogic(確認WebLogic進程是否運行)。weblogic-monitoring-exporter(WebLogic官方導出器)采集WebLogic指標,由Prometheus存儲,Grafana可視化展示;weblogic-monitoring-exporter(下載war包,部署到WebLogic域);exporter的/metrics接口;check_weblogic.sh),通過WLST或curl檢查WebLogic狀態;weblogic.server.status、weblogic.thread.count);以上方法可根據實際需求組合使用:自帶工具適合快速排查問題,第三方工具適合大規模集群監控,命令行工具適合日常運維巡檢。