centos weblogic故障如何排查
导读:CentOS 上 WebLogic 故障排查流程 一 快速定位流程 明确症状:是起不来、访问不了、响应慢,还是报错。优先确认控制台是否能打开(默认端口7001),以及应用是否部署成功。 查看日志:到域目录下的 DOMAIN_HOME/se...
CentOS 上 WebLogic 故障排查流程
一 快速定位流程
- 明确症状:是起不来、访问不了、响应慢,还是报错。优先确认控制台是否能打开(默认端口7001),以及应用是否部署成功。
- 查看日志:到域目录下的 DOMAIN_HOME/servers/< server_name> /logs,重点看 server_name.log、AdminServer.log、startWebLogic.log,从最近的错误堆栈入手。
- 检查端口与连通:确认 7001/7002 等监听端口已占用且可访问;必要时排查本机与对端(如数据库)的防火墙与网络连通性。
- 资源与依赖:用 top/vmstat/iostat 看 CPU/内存/磁盘 IO;确认数据库、LDAP、外部接口等依赖服务可达。
- 线程与数据库:若页面卡顿或报错,检查是否存在线程阻塞/慢 SQL,并核对JDBC 连接池配置与可用性。
以上步骤覆盖了 Linux 上 WebLogic 故障排查的通用路径:日志、端口、网络、资源、配置与数据库联动检查。
二 常见故障与修复要点
- 启动失败且报 “Could not obtain the localhost address / UnknownHostException”
原因多为 /etc/hosts 未正确映射主机名。修复示例:- 编辑 /etc/hosts:确保包含 127.0.0.1 localhost 与 < 本机IP> < 主机名> 的映射;
- 示例:
- echo “127.0.0.1 localhost” > > /etc/hosts
- echo “192.168.1.98 Weblogic” > > /etc/hosts
- 重启后再次启动 WebLogic。该问题常见于修改主机名或网络配置后未同步 hosts。
- 启动时报 “Error: Could not create the Java Virtual Machine / Unrecognized option: -jrockit”
多见于 JDK 与脚本参数不匹配(如使用 HotSpot JDK 却仍带 -jrockit 参数)。修复:- 编辑 DOMAIN_HOME/bin/startWebLogic.sh,去除或更正 JAVA_VM 中的 -jrockit;
- 确保 JAVA_HOME 指向正确的 JDK,再启动。
- 启动身份错误 “Authentication denied: Boot identity not valid”
常见于 boot.properties 中用户名/密码错误或变更后未更新。修复:- 在 DOMAIN_HOME/servers/< server_name> /security 下编辑 boot.properties,以明文写入正确的 username/password;
- 首次启动会自动加密;如仍失败,检查是否被管服务器 ldap 初始化状态影响(必要时清理相关目录后再启)。
- 访问不了应用或端口不通
排查顺序:- 本机端口:ss -lntp | grep 7001;
- 防火墙:firewall-cmd --list-ports 或 firewall-cmd --add-port=7001/tcp --permanent & & firewall-cmd --reload;
- 外部连通:从客户端 telnet/nmap 测试;
- 数据库端口同理(如 5432/3306),并核对 JDBC URL、用户名、密码 与网络路由。
- 线程阻塞与慢 SQL
现象:控制台出现 Stuck Thread 告警,默认 StuckThreadMaxTime=600s。定位:- 控制台 “监视-线程-转储线程堆栈”,搜索 stuck 定位具体线程与事务;
- 结合日志反查对应 SQL/调用链,优先优化慢 SQL(索引、执行计划、批量处理等);
- 临时缓解可适度调大 StuckThreadMaxTime 或线程数,但根因仍是优化应用与 SQL。
三 日志与线程分析命令清单
- 日志实时查看
- tail -f DOMAIN_HOME/servers/< server_name> /logs/server_name.log
- tail -f DOMAIN_HOME/servers/< server_name> /logs/AdminServer.log
- tail -f startWebLogic.log(启动阶段输出)
- 端口与进程
- ss -lntp | grep 7001
- netstat -anp | grep 7001
- ps -ef | grep weblogic
- 系统与网络
- top / vmstat 1 / iostat -x 1 / free -m / df -h
- firewall-cmd --list-ports;必要时放行 7001/443/80 与数据库端口
- Java 诊断
- jps(定位 Java PID)
- jstack (线程堆栈,配合“stuck”关键字)
- jmap -heap (堆内存概要)
以上命令覆盖日志、端口、系统资源和 Java 堆栈分析的高频场景,有助于快速定位问题根因。
四 性能与稳定性优化要点
- 明确目标与容量规划:梳理并发用户数、请求量、响应时间与硬件资源,形成容量基线。
- 操作系统与网络:按需优化 Linux TCP/IP 参数(如 MTU)、文件描述符与网络缓冲;减少连接风暴与半开连接影响。
- JVM 与 WebLogic 参数:结合负载选择合理的 堆大小、GC 策略、线程池与工作管理器;避免过度调大仅掩盖瓶颈。
- 数据库与 JDBC:优化 连接池(初始/最大连接、超时、验证查询)、SQL 与索引;必要时做执行计划分析与库级参数调优。
- 应用层:减少会话持久化开销、控制会话大小,使用合适的复制/存储策略;对热点代码做性能剖析(如 JProbe/OptimizeIt)定位 CPU/锁竞争。
这些实践来自官方性能调优方法论,涵盖OS、JVM、WebLogic、JDBC/数据库与应用的全链路优化思路。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos weblogic故障如何排查
本文地址: https://pptw.com/jishu/775297.html
