温馨提示×

Debian WebLogic如何调试

小樊
43
2026-07-18 06:52:40
栏目: 智能运维

Debian 上调试 WebLogic(Oracle WebLogic Server),一般可以从 日志、启动参数、线程/内存、远程调试、JVM 工具 等几个方面入手。下面按常见场景给你一个实用指南。


一、确认环境与版本

先确认基础信息,避免“版本差异导致的问题”:

cat /etc/debian_version
java -version
$WL_HOME/server/bin/setWLSEnv.sh

WebLogic 常用目录:

  • WL_HOME/u01/oracle/weblogic
  • DOMAIN_HOME$WL_HOME/user_projects/domains/base_domain

二、查看 WebLogic 日志(最重要)

1️⃣ 核心日志位置

$DOMAIN_HOME/servers/AdminServer/logs/

关键文件:

  • AdminServer.log —— 服务器运行日志
  • AdminServer.out —— 标准输出(启动信息、异常)
  • <server-name>.log —— 受管服务器日志

查看实时日志:

tail -f AdminServer.log
tail -f AdminServer.out

2️⃣ 提高日志级别(调试用)

WebLogic Console

Environment → Servers → <Server> → Logging → Debug

或编辑:

$DOMAIN_HOME/config/config.xml

三、启动时调试(启动失败必看)

1️⃣ 前台启动,看详细错误

cd $DOMAIN_HOME/bin
./startWebLogic.sh

如果后台启动失败:

nohup ./startWebLogic.sh > start.log 2>&1 &
tail -f start.log

四、开启 JVM 远程调试(强烈推荐)

1️⃣ 修改启动脚本

编辑:

$DOMAIN_HOME/bin/setDomainEnv.sh

JAVA_OPTIONS 中加入:

export JAVA_OPTIONS="$JAVA_OPTIONS -Xdebug -Xrunjdwp:transport=dt_socket,address=8453,server=y,suspend=n"

suspend=y:启动时等待调试器(适合启动阶段问题)

2️⃣ 使用 IDE 连接

  • IntelliJ IDEA / Eclipse
  • Remote JVM Debug
  • Host:Debian IP
  • Port:8453

五、JVM 调试与性能分析

1️⃣ 查看进程

jps -l

2️⃣ 线程分析(卡死、死锁)

jstack <pid> > thread.txt

常见关注点:

  • BLOCKED
  • Deadlock
  • waiting on

3️⃣ 内存分析(OOM)

jmap -heap <pid>
jmap -histo <pid> | head -50

生成 dump:

jmap -dump:live,format=b,file=heap.hprof <pid>

MAT / VisualVM 分析。


六、WebLogic 控制台无法访问

1️⃣ 端口检查

ss -lntp | grep java
netstat -tunlp | grep 7001

2️⃣ 防火墙

iptables -L -n
ufw status

开放端口:

ufw allow 7001
ufw allow 8453

七、常见 Debian 特有问题

1️⃣ 权限问题

chown -R weblogic:weblogic $DOMAIN_HOME
chmod +x *.sh

2️⃣ 系统参数

ulimit -n
ulimit -u

建议:

ulimit -n 65536
ulimit -u 4096

八、调试建议总结

✅ 启动失败 → 看 AdminServer.out
✅ 卡死 → jstack
✅ 内存溢出 → jmap + MAT
✅ 业务逻辑问题 → 远程调试
✅ 性能问题 → GC 日志 + VisualVM


如果你愿意,可以告诉我:

  • WebLogic 版本(12c / 14c)
  • Debian 版本
  • 报错信息或现象(启动失败 / 卡死 / 慢 / 报异常)

我可以给你 更精确的调试方案

0