温馨提示×

Debian系统WebLogic日志如何管理

小樊
50
2026-01-09 14:08:38
栏目: 智能运维

Debian系统下WebLogic日志管理

一 日志位置与类型

  • 常见目录结构为:$MW_HOME/user_projects/domains/<domain_name>/servers/<server_name>/logs/。该目录下通常包含:
    • server.log / <server_name>.log:服务器运行日志,记录启动、关闭及运行期重要事件。
    • access.log:HTTP访问日志,记录请求来源、时间、方法与返回状态等。
    • <domain_name>.log:域日志,汇聚域内各服务器的关键告警与错误。
  • 若通过管理控制台或启动脚本自定义了域/服务器目录,请以实际配置为准。以上路径与文件名在WebLogic 9及以上版本具有通用性。

二 查看与检索

  • 实时查看与关键字检索(示例):
    • 实时跟踪:tail -f $DOMAIN_HOME/servers/<server_name>/logs/server.log
    • 错误检索:grep -i “error” $DOMAIN_HOME/servers/<server_name>/logs/server.log
    • 访问日志分析:结合awk/sed统计某时间段错误数或响应码分布,例如按日期过滤后统计“error”出现次数。
  • 辅助工具:可使用系统日志查看器(如gnome-system-log/ksystemlog)浏览文本日志,或用Logstash/Graylog做集中化收集与告警。

三 轮转策略与配置

  • WebLogic内置轮转(控制台设置)
    • 运行模式差异:开发模式默认按大小500 KB轮转;生产模式默认按大小5000 KB轮转,且启动时不会立即轮转。
    • 关键参数:
      • Rotation Type:按大小(By Size)或按时间(By Time)。
      • Rotation File Size / Rotation Interval:触发阈值或间隔。
      • Limit Number of Retained Files:最大保留文件数,超出后循环覆盖最旧文件。
      • Log File Rotation Directory:轮转文件存放目录(相对或绝对路径)。
      • File Name:可在文件名中嵌入时间格式占位符(如**%yyyy%%MM%%dd%%hh%%mm%**),便于归档检索。
    • 安全阈值:当文件增长接近2,097,152 KB时,WebLogic会强制执行“硬轮转”,以防日志过大。
  • 操作系统层轮转(logrotate)
    • 建议对access.log等高频写入文件使用logrotate做压缩与清理,避免与WebLogic内置轮转冲突。
    • 示例配置(/etc/logrotate.d/weblogic):
      /u01/app/weblogic/domains/*/servers/*/logs/*.log {
          daily
          rotate 7
          missingok
          notifempty
          compress
          create 0644 weblogic weblogic
          copytruncate
      }
      
      • 说明:使用copytruncate可在不中断应用写入的前提下轮转;如采用postrotate发送信号,请确保与WebLogic的日志框架协调,避免重复轮转或句柄失效。

四 清理与归档实践

  • 运行期安全清理
    • 不建议直接删除正在写入的日志文件;如需释放空间,可采用“复制后清空”的方式:
      • 备份并清空:cp /path/to/file.log /bak/file_$(date -d yesterday +%F).log && cat /dev/null > /path/to/file.log
      • 定时任务示例(每日零点备份、每周打包清理):
        0 0 * * * cp /var/log/weblogic/app.log /backup/app_$(date -d yesterday +\%F).log && > /var/log/weblogic/app.log
        0 1 * * 0 cd /backup && tar czf app_$(date -d yesterday +\%U).tar.gz app_*.log && find . -mtime +91 -delete
        
    • 如存在nohup.out等外部输出文件,也可用同样方法安全清空。
  • 归档与长期保留
    • 结合logrotatecompressrotate N策略,或将历史日志定期打包迁移至对象存储/归档存储,满足合规与审计要求。

五 监控与告警

  • 集中化方案:将server.log / access.log通过Logstash/Filebeat采集至Elasticsearch,使用Kibana可视化与告警;也可接入Splunk/Graylog实现统一检索、报表与阈值告警。
  • 关键指标:关注ERROR/WARN数量、HTTP5xx比例、平均响应时间、线程与JDBC连接池使用率等,结合阈值触发通知,缩短故障发现与恢复时间。

0