WebLogic“宕机”(进程消失、无响应、OOM、被 OS kill 等)在 Linux 上常见原因很多,需要结合日志和现象判断。下面按「最常见 → 如何排查」给你一个系统性的说明。
表现:
原因:
排查:
# 查看是否被 OS 杀掉
dmesg | grep -i "killed process"
grep -i "out of memory" /var/log/messages
# JVM 参数
ps -ef | grep weblogic
看是否有:
-XX:HeapDumpOnOutOfMemoryError
-XX:MaxPermSize / -XX:MetaspaceSize
表现:
java.lang.OutOfMemoryError常见类型:
Java heap spaceGC overhead limit exceededMetaspace(JDK8+)日志位置:
$DOMAIN_HOME/servers/AdminServer/logs/
看:
server.log*.out表现:
排查:
# 获取线程栈
kill -3 <pid>
# 或
jstack <pid> > thread.txt
重点看:
BLOCKEDdeadlock表现:
Too many open files检查:
ulimit -a
重点:
open filesmax user processes解决示例:
vi /etc/security/limits.conf
weblogic soft nofile 65536
weblogic hard nofile 65536
表现:
检查:
df -h
du -sh $DOMAIN_HOME/*
kill -9排查:
history | grep kill
last
/var/log/secure
请补充:
server.log*.outdmesg 输出如果你愿意,把宕机时的日志贴一部分,我可以直接帮你定位是哪一种宕机。