WebLogic日志分析技巧有哪些
导读:WebLogic日志分析实用技巧 一 日志类型与存放路径 先明确三类核心日志及其用途,便于快速定位问题来源: Server 日志:记录单个服务器从启动到关闭的运行信息与错误,路径通常为:$MW_HOME/user_projects/do...
WebLogic日志分析实用技巧
一 日志类型与存放路径
- 先明确三类核心日志及其用途,便于快速定位问题来源:
- Server 日志:记录单个服务器从启动到关闭的运行信息与错误,路径通常为:$MW_HOME/user_projects/domains/< domain_name> /servers/< server_name> /logs/< server_name> .log。
- HTTP 访问日志:记录客户端请求明细,路径通常为:…/servers/< server_name> /logs/access.log,常见格式包含客户端IP、时间、请求行、状态码、字节数。
- Domain 日志:汇聚域内各 Server 的重要事件,路径通常为:…/servers/< server_name> /logs/< domain_name> .log。域日志的时间戳来自各自服务器,且不按时间戳顺序写入(网络分区恢复后会补发)。
- 补充要点:
- Server 日志常见伴随 .out(标准输出/错误)文件,可一并查看启动与异常堆栈。
- 在控制台可调整日志级别与输出方式(如 HTTP 日志缓冲设为0可实时落盘)。
二 命令行快速定位与统计
- 实时查看与关键字定位
- 实时跟踪:tail -f server.log
- 按关键字检索并高亮上下文:grep -C 5 “ERROR” server.log
- 时间窗与计数统计
- 按日期筛选错误并提取时间:awk ‘/ERROR/ { print $1, $2, $3} ’ server.log | grep “2025-11-16”
- 统计某分钟内错误数:awk ‘/ERROR/ { split($2, t, “:”); if (t[2]== “10” & & t[3]< = “30”) c++} END { print c} ’ server.log
- 多文件与对比
- 同时查看多个实例日志:tail -f server1.log server2.log
- 对比两个时间段的错误差异(结合 sort/uniq):先抽取时间+级别,再排序去重对比增量。
- 小技巧
- 使用 -n 精确控制显示行数;结合 sort | uniq -c 做频次统计;对 access.log 用 awk ‘{ print $1} ’ | sort | uniq -c | sort -nr | head 快速找出 Top N IP。
三 常见故障与日志特征对照
| 现象 | 日志特征关键词 | 常见根因 | 排查要点 |
|---|---|---|---|
| 节点无法启动 | BEA-000386、java.net.UnknownHostException | 主机名解析失败 | 检查 /etc/hosts 是否包含本机IP与主机名映射 |
| 被管节点注册/拉取配置失败 | BEA-141196、download files 异常 | 管理/被管间安全文件不一致 | 对比并同步 SerializedSystemIni.dat 等安全文件 |
| 数据库连接池初始化失败 | BEA-149205、ORA-12505 | SID/服务名错误或监听未就绪 | 核对 JDBC URL、TNS、网络连通性与监听状态 |
| 内存溢出 | java.lang.OutOfMemoryError | 堆/永久代不足 | 调整 -Xms/-Xmx/-XX:PermSize,开启 HeapDumpOnOutOfMemoryError |
| HTTP 请求处理超时 | CompleteMessageTimeout 超时 | 客户端提前关闭或后端处理慢 | 适当增大 CompleteMessageTimeout,优化后端逻辑 |
| 访问异常与性能问题 | access.log 中 4xx/5xx、长时延 | 资源瓶颈或应用错误 | 结合 access.log 状态码与响应时间做 Top URL/来源分析 |
四 性能与安全的日志化排查
- 性能瓶颈联动分析
- 将 Server 日志的错误/GC/线程阻塞与系统指标关联:用 top/htop、mpstat、free、iostat 观察 CPU、内存、I/O,定位是计算密集、内存回收还是 I/O 限制。
- 访问层指标与可视化
- 从 access.log 统计 请求数、成功率、响应时间分布、Top URL/来源 IP,并用 GoAccess 生成 HTML/JSON 报告,便于趋势与峰值分析。
- 安全事件线索
- 关注反序列化攻击常见线索:Server/Domain 日志出现 ClassCastException、ClassNotFoundException 等异常;HTTP 层可能无“上传/写入”痕迹,需结合网络流量与落地文件检查(如临时目录异常文件)。
- 集中化与告警
- 使用 Logstash/Graylog/ELK/Splunk 做日志采集、解析与实时告警,统一视图下做跨实例/跨集群问题追踪。
五 日志治理与排错流程
- 日志轮转与容量控制
- 使用 logrotate 对 Server/HTTP/GC 等日志做按日轮转、压缩与保留策略,避免磁盘被占满导致实例异常。
- 标准路径与命名
- 统一 $MW_HOME/domains 下日志目录结构,规范 server.log、access.log、gc.log 的命名与落盘位置,便于自动化采集与归档。
- 保留与清理策略
- 制定按日/按大小滚动与定期清理策略,保留可供审计与回溯的窗口期数据(如近 7–30 天),并建立变更留痕。
- 排错流程建议
- 明确现象 → 定位实例 → 先看 server.log/.out 的错误与堆栈 → 查 access.log 的请求与状态码 → 必要时联动 Domain 日志 与系统指标 → 复现并验证修复,更新告警阈值与基线。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: WebLogic日志分析技巧有哪些
本文地址: https://pptw.com/jishu/749128.html
