在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);以上方法可根据实际需求组合使用:自带工具适合快速排查问题,第三方工具适合大规模集群监控,命令行工具适合日常运维巡检。