首页主机资讯centos中weblogic日志清理策略

centos中weblogic日志清理策略

时间2026-01-19 19:35:04发布访客分类主机资讯浏览874
导读:CentOS 中 WebLogic 日志清理策略 一 策略总览与优先级 优先使用 WebLogic 内置日志轮转(按大小/时间、保留数量、时间后缀),这是最安全、对运行影响最小的方式。 对 nohup.out、GC 日志、诊断日志 等由外...

CentOS 中 WebLogic 日志清理策略

一 策略总览与优先级

  • 优先使用 WebLogic 内置日志轮转(按大小/时间、保留数量、时间后缀),这是最安全、对运行影响最小的方式。
  • nohup.out、GC 日志、诊断日志 等由外部进程或 JVM 产生的文件,使用 logrotate 做系统级轮转与压缩归档。
  • 对历史归档与超大目录,使用 定时脚本 + find 做二次清理(按天/周/月保留),避免磁盘被占满。
  • 建议配合 集中化日志(如 rsyslog/ELK)与 审计(auditd),便于留痕与容量规划。

二 WebLogic 内置日志轮转配置

  • 典型日志路径(WebLogic 9+):
    • 服务器日志:$DOMAIN_HOME/servers//logs/.log
    • 访问日志:$DOMAIN_HOME/servers//logs/access.log
    • 域日志:$DOMAIN_HOME/servers/AdminServer/logs/.log
  • 控制台配置要点(Environment → Servers → → Logging → General):
    • Rotation Type:选择 By SizeBy Time
    • Rotation File Size:开发模式默认 500 KB,生产模式默认 5000 KB
    • Begin Rotation Time / Rotation Interval:按时间轮转时使用;
    • Limit Number of Retained Files:设置保留文件数,超出后循环覆盖最旧文件;
    • File Name:可加入时间格式占位符(如 %yyyy%%MM%%dd%%hh%%mm%)生成时间后缀;
    • Log File Rotation Directory:可指定轮转文件存放目录;
    • 系统存在 2,097,152 KB(约 2 GB) 的硬阈值,防止日志过度增长。
  • 建议值示例:生产环境按大小 50–100 MB、保留 30–90 个;按时间每日轮转并保留 7–30 天。

三 系统级 logrotate 配置示例

  • 适用对象:nohup.outGC 日志诊断日志 等外部/非 WebLogic 托管的日志。
  • 示例(/etc/logrotate.d/weblogic):
# 示例1:nohup.out(按日轮转,保留7天,压缩归档)
/opt/weblogic/user_projects/domains/mydomain/nohup.out {

    daily
    rotate 7
    missingok
    notifempty
    compress
    copytruncate
    create 0644 weblogic weblogic
}


# 示例2:GC 日志(按日轮转,保留30天)
/opt/weblogic/user_projects/domains/mydomain/servers/*/logs/gc*.log {

    daily
    rotate 30
    missingok
    notifempty
    compress
    copytruncate
    dateext
    dateformat -%Y%m%d
    create 0644 weblogic weblogic
}
    
  • 说明:
    • 使用 copytruncate 可避免重启进程;若进程支持信号轮转(如 log4j2),可改用 postrotate 发送 USR1。
    • 对按时间命名的轮转文件,建议开启 dateext 并使用 dateformat 统一后缀,便于清理。
    • 测试配置:logrotate -d /etc/logrotate.d/weblogic;强制运行:logrotate -f /etc/logrotate.d/weblogic。

四 定时脚本清理历史归档

  • 场景:清理超过 N 天 的轮转归档(如 .gz、.zip、.log.YYYYMMDD 等)。
  • 示例脚本(保留最近 30 天):
#!/bin/bash
LOG_DIR="/opt/weblogic/user_projects/domains/mydomain"
find "$LOG_DIR" -type f \( -name "*.gz" -o -name "*.zip" -o -name "*.log.*" \) \
  -mtime +30 -delete
  • 加入 crontab(每天 02:10 执行):
10 2 * * * /opt/weblogic/scripts/cleanup_logs.sh >
    >
     /var/log/weblogic_cleanup.log 2>
    &
    1
  • 安全提示:
    • 先用 -print 验证匹配文件,再改为 -delete
    • 避免对正在写入的 .log 主文件使用 find -delete;如需清空运行中文件,使用 : > filetruncate -s 0 file,更稳妥。

五 安全与运维注意事项

  • 清理前先 备份 关键日志;变更通过 变更窗口 执行,保留 回滚方案
  • 避免误删:不要一次性 rm -rf $DOMAIN_HOME/servers//logs/;如确需清理,先停服务或仅清理归档与历史子目录。
  • 运行期清空文件优先用 : > filetruncate,避免删除后句柄失效导致日志中断。
  • 建议开启 日志集中(rsyslog/ELK)与 审计(auditd),便于追踪与容量预警。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos中weblogic日志清理策略
本文地址: https://pptw.com/jishu/786125.html
centos hbase索引优化方法 centos下weblogic网络设置指南

游客 回复需填写必要信息