WebLogic在Ubuntu上的故障排查步骤有哪些
导读:Ubuntu上WebLogic故障排查步骤 一 快速定位与通用检查 查看关键日志:优先检查 $DOMAIN_HOME/logs/server.log、AdminServer.log、启动脚本重定向的 stdout.log/stderr.l...
Ubuntu上WebLogic故障排查步骤
一 快速定位与通用检查
- 查看关键日志:优先检查 $DOMAIN_HOME/logs/server.log、AdminServer.log、启动脚本重定向的 stdout.log/stderr.log,从最近的错误堆栈定位模块与原因。
- 检查端口连通:确认监听端口(默认 7001/7002)未被占用且防火墙放行,例如:
ss -ltnp | grep 7001或nc -zv localhost 7001。 - 资源与进程:用
top/vmstat/iostat观察 CPU/内存/磁盘IO,用ps -ef | grep weblogic确认进程状态与启动用户。 - 配置与权限:核对 config.xml 关键项(如 ListenPort)、启动脚本参数;确保 $DOMAIN_HOME 及子目录属主与启动用户一致。
- 网络连通:对客户端/数据库执行
ping、telnet/nc测试连通性与端口可达性。 - 数据库连接:复核连接池参数、数据库可用性与网络延迟。
二 启动失败与卡住的专项排查
- 端口冲突:若端口被占用,终止占用进程或修改 config.xml 的 ListenPort 后重启。
- 残留锁文件:删除 servers//tmp/.lok,避免“Unable to obtain lock”导致无法启动。
- 诊断数据损坏:清理 servers//data/store/diagnostics/WLS_DIAGNOSTICS.DAT*,再启动(常用于受管服务器/AdminServer异常恢复)。
- 节点管理器异常:若 nodemanager.log 报 “Invalid state file format”,删除 servers//data/nodemanager/.state 后重启 Node Manager。
- 启动卡住/极慢:多为 JVM 随机数熵源 导致,设置
-Djava.security.egd=file:/dev/./urandom或编辑 $JAVA_HOME/jre/lib/security/java.security 将securerandom.source=file:/dev/./urandom。 - 权限问题:确保 域目录 与 JDK 对启动用户可读写,避免因权限不足导致初始化失败。
三 运行期性能与挂起问题
- 线程与锁:获取 thread dump(向 WebLogic 的 Java 进程发送 SIGQUIT/kill -3),间隔 10–20 秒 多次采集,分析 RUNNABLE/WAITING 堆栈定位死锁或阻塞。
- 内存与GC:开启 -verbose:gc,观察 GC 频率/停顿 与 OutOfMemoryError;必要时调整 -Xms/-Xmx 与 Perm/Metaspace 大小。
- 文件描述符:用
ulimit -n检查进程可打开文件数,建议至少 4096,防止 “too many open files”。 - 系统资源:结合
top/vmstat/iostat排查 CPU 饱和、内存吃紧、IO 瓶颈。 - 外部依赖:复核 JDBC/数据源、远程服务健康度与网络延迟。
四 实用命令清单
- 日志与输出:
tail -f $DOMAIN_HOME/logs/server.logtail -f nohup.out stdout.log stderr.log
- 端口与连通:
ss -ltnp | grep 7001nc -zv 127.0.0.1 7001
- 进程与资源:
ps -ef | grep weblogictop,vmstat 1 10,iostat -x 1 10
- JVM 诊断:
- 采集线程:
kill -3 < pid>(输出到 server.out/stdout) - GC 日志:启动时加入
-verbose:gc
- 采集线程:
- 文件描述符:
ulimit -n(查看/调整)
- Node Manager 快速复位:
- 删除 servers//data/nodemanager/.state 后重启 NM
五 预防与优化建议
- 固定并核对 ListenPort/SSL 端口,变更后同步更新防火墙与负载均衡配置。
- 规范目录权限:以专用 weblogic 用户运行,确保 $DOMAIN_HOME、$JAVA_HOME 权限一致。
- 启动参数基线:为生产设置 -Xms == -Xmx、合理的 Perm/Metaspace,并按需开启 GC 日志。
- 熵源优化:在 Ubuntu 上优先设置
-Djava.security.egd=file:/dev/./urandom,显著改善控制台/启动慢问题。 - 资源与健康基线:为 CPU/内存/IO/文件句柄 设定阈值告警,定期巡检 JDBC/连接池 与慢查询。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: WebLogic在Ubuntu上的故障排查步骤有哪些
本文地址: https://pptw.com/jishu/780160.html
