WebLogic在Linux上如何管理日志
导读:Linux上WebLogic日志管理实操指南 一 日志位置与分类 常见目录结构:WebLogic 9及以上版本的日志默认位于域目录下的 $DOMAIN_HOME/servers/$SERVER_NAME/logs。该目录通常包含: SE...
Linux上WebLogic日志管理实操指南
一 日志位置与分类
- 常见目录结构:WebLogic 9及以上版本的日志默认位于域目录下的 $DOMAIN_HOME/servers/$SERVER_NAME/logs。该目录通常包含:
- SERVER_NAME.log:服务器运行日志(启动、关闭、运行信息)。
- access.log:HTTP 访问日志(按时间、来源IP、请求路径、状态码记录)。
- DOMAIN_NAME.log:域日志,汇聚域内各服务器的重要事件(默认转发级别为 NOTICE 及以上)。
- 常见还有 SERVER_NAME.out(标准输出/错误输出重定向)。
- 快速定位示例:
- 查看目录:ls -l $DOMAIN_HOME/servers/AdminServer/logs
- 实时查看:tail -f $DOMAIN_HOME/servers/AdminServer/logs/AdminServer.log
- 访问日志:tail -f $DOMAIN_HOME/servers/AdminServer/logs/access.log
- 域日志:tail -f $DOMAIN_HOME/servers/AdminServer/logs/DOMAIN_NAME.log
- 提示:路径中的 $DOMAIN_HOME 为域根目录,$SERVER_NAME 为服务器实例名(如 AdminServer)。
二 常用查看与检索命令
- 实时跟踪:tail -f server.log
- 查看末尾N行:tail -n 100 server.log
- 关键字检索:grep “ERROR” server.log;grep -C 5 “Exception” server.log(显示匹配行及前后5行)
- 行号+检索:cat -n server.log | grep “keyword”
- 分页查看:less server.log
- 以上命令适合快速定位错误堆栈、异常、访问异常等场景。
三 日志轮转与保留策略
- 方式一 WebLogic内置JDK日志轮转(推荐优先)
- 配置文件:$DOMAIN_HOME/config/logging.properties
- 关键参数示例:
- java.util.logging.FileHandler.pattern = %h/weblogic.%g.log
- java.util.logging.FileHandler.limit = 10485760(单文件约10MB)
- java.util.logging.FileHandler.count = 5(保留5个历史文件)
- java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
- 生效方式:修改后重启服务器(或使用 WLST 在线更新日志配置)。
- 方式二 操作系统级 logrotate(与WebLogic解耦,便于统一运维)
- 新建配置:/etc/logrotate.d/weblogic
- 示例(按日轮转、保留30天、压缩、延迟压缩、轮转后通知应用重新打开日志):
/u01/oracle/user_projects/domains/*/servers/*/logs/*.log { daily missingok rotate 30 compress delaycompress copytruncate notifempty dateext dateformat -%Y%m%d postrotate # 如使用 systemd 管理的 WebLogic 服务,可按需执行: # systemctl reload weblogic.service > /dev/null 2> & 1 || true endscript } - 测试与生效:
- 手动测试:logrotate -d /etc/logrotate.d/weblogic(干跑)
- 强制执行:logrotate -f /etc/logrotate.d/weblogic
- 定时执行:已随系统 cron 每日运行(无需额外配置)。
- 方式三 访问日志的保留策略
- 在 WebLogic 控制台或通过 WLST 调整访问日志的保留文件数与回滚规则,控制磁盘占用。
- 方式四 启动日志重定向
- 使用 nohup 启动并将标准输出/错误重定向到指定日志文件,便于与系统日志策略协同管理。
四 集中化与监控告警
- 集中收集与转发
- 使用 rsyslog/syslog-ng 将 WebLogic 日志发送到远程日志服务器,统一存储与审计。
- 检索分析与可视化
- 部署 ELK Stack(Elasticsearch, Logstash, Kibana) 对 WebLogic 日志进行结构化、检索、可视化与告警。
- 安全与审计
- 通过控制台进行日志相关安全配置;使用 auditd 记录关键系统调用,辅助安全审计与追踪。
五 常见问题与最佳实践
- 避免重复轮转:若已启用 WebLogic 内置轮转,建议让 logrotate 使用 copytruncate,或在应用内配合信号/接口完成日志句柄切换,防止日志写入失败。
- 轮转后确保可读性:压缩策略建议启用 delaycompress,避免正在写入的日志被压缩导致分析困难。
- 统一目录与权限:将域日志统一到专用目录,设置合适的 owner:group 与 权限(如 640),便于 rsyslog/ELK 采集。
- 保留周期与容量规划:结合磁盘容量设置合理的 rotate 天数或 count,并定期归档到对象存储/备份系统。
- 变更生效方式:JDK 日志配置需重启或在维护窗口内通过 WLST 热更新;系统级 logrotate 可在线执行,建议先在测试环境验证。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: WebLogic在Linux上如何管理日志
本文地址: https://pptw.com/jishu/773219.html
