- 首页 >
- 问答 >
-
智能运维 >
- Ubuntu上WebLogic日志如何查看与分析
Ubuntu上WebLogic日志如何查看与分析
小樊
34
2025-12-18 16:39:28
Ubuntu上WebLogic日志查看与分析
一 日志位置与类型
- 服务器日志:位于**$DOMAIN_HOME/servers/<Server_Name>/logs/<Server_Name>.log**,记录启动/关闭、部署、运行异常等核心事件。
- 域日志:位于**$DOMAIN_HOME/servers/<AdminServer_Name>/logs/<Domain_Name>.log**,汇聚域内各服务器的重要告警,便于集中监控。
- HTTP访问日志:常见为access.log(位置依配置,常在服务器实例 logs 目录或 HTTP 子目录),用于分析访问量、状态码分布、客户端来源等。
- 标准输出/错误:常见为stdout.log / stderr.log(或 <Server_Name>.out),用于查看启动脚本输出、未捕获异常等。
- 提示:可用
echo $DOMAIN_HOME确认域根目录;若使用系统服务启动,stdout/stderr 可能由服务管理器重定向到其日志目录。
二 命令行快速查看与检索
- 实时查看:
- 查看服务器日志:
tail -f $DOMAIN_HOME/servers/<Server_Name>/logs/<Server_Name>.log
- 查看标准输出:
tail -f logs/stdout.log
- 按时间定位:
- 查看最近100行:
tail -n 100 <Server_Name>.log
- 从第1000行开始:
tail -n +1000 <Server_Name>.log
- 关键字检索与上下文:
- 精确匹配:
grep 'ERROR' <Server_Name>.log
- 显示匹配行及前后5行:
grep -C 5 'NullPointerException' <Server_Name>.log
- 显示匹配行及前5行:
grep -B 5 'OutOfMemoryError' <Server_Name>.log
- 显示匹配行及后5行:
grep -A 5 'timeout' <Server_Name>.log
- 辅助定位:
- 列出并排序日志文件(按修改时间):
ls -lt $DOMAIN_HOME/servers/<Server_Name>/logs
- 交互式查看:
less <Server_Name>.log(支持/关键字搜索、n/N跳转)
三 日志格式与关键信息解读
- 服务器日志格式(WebLogic 传统格式):
- 以**####<时间戳> <严重级别> <子系统> <主机名> <服务器名> <线程> … <消息ID> <消息文本>**开头;若包含堆栈,会紧随其后。
- 示例:
####<Sept 22, 2004 10:46:51 AM EST> <Notice> <WebLogicServer> ... <BEA-000360> <Server started in RUNNING mode>
- 标准输出格式:
- 不含**####前缀及服务器/线程等字段,更接近应用或容器的原始输出**,便于排查启动期问题。
- HTTP访问日志:
- 典型条目:
192.168.220.1 - - [27/Oct/2022:09:43:40 +0800] "GET /index.jsp HTTP/1.1" 200 1976
- 可据此统计HTTP状态码分布、热点资源、错误请求占比等。
四 日志轮转与输出控制
- 日志轮转:WebLogic提供按大小/时间的日志轮转能力,可在控制台或 WLST 中配置滚动策略,避免单文件过大、便于归档与检索。
- 输出过滤与级别:
- 通过LogMBean对Handler(如标准输出、服务器日志文件)设置严重级别阈值与过滤器,实现按级别、子系统、来源等维度控制输出量。
- 例如:默认Stdout Handler的阈值为NOTICE,因此INFO/DEBUG不会输出到控制台;可在控制台或 WLST 中调整为INFO/WARNING等。
- 亦可在启动命令行设置:
Dweblogic.log.StdoutSeverity=Debug(示例)。
五 常见问题排查路径
- 启动失败或刚崩溃:优先查看stdout.log / <Server_Name>.out,捕获JVM 启动参数、类加载错误、未捕获异常等早期信息。
- 运行中异常:检索服务器日志中的ERROR/WARNING及堆栈,结合时间戳定位触发链路;必要时扩大相关Logger/Handler级别以获取更多上下文。
- 访问异常与性能:分析access.log的4xx/5xx比例、响应时间、热点 URI,并与服务器日志的部署/重启时间点交叉验证。
- 集群/多实例:除单实例日志外,查看域日志获取跨服务器的重要告警与集中事件。