温馨提示×

weblogic在centos上的日志轮转如何配置

小樊
46
2025-09-18 03:05:17
栏目: 智能运维

WebLogic在CentOS上的日志轮转配置指南

1. 确定WebLogic日志文件位置

WebLogic的日志文件默认存储在域目录servers子目录下,主要包含以下类型:

  • Server日志DOMAIN_HOME/servers/SERVER_NAME/logs/SERVER_NAME.log(记录服务器启动、关闭及运行时错误);
  • 访问日志DOMAIN_HOME/servers/SERVER_NAME/logs/access.log(记录HTTP/HTTPS访问请求);
  • 域日志DOMAIN_HOME/servers/SERVER_NAME/logs/domain.log(记录域级别的运行信息)。
    需根据实际需求选择需要轮转的日志文件。

2. 安装logrotate工具

logrotate是CentOS系统自带的日志轮转工具,若未安装,可通过以下命令安装:

sudo yum install logrotate -y

3. 创建logrotate配置文件

/etc/logrotate.d/目录下创建WebLogic专属配置文件(如weblogic),内容示例如下:

/u01/app/weblogic/domain/servers/AdminServer/logs/*.log {
    daily                   # 每天轮转一次(可选:weekly/monthly)
    rotate 7                # 保留7个轮转后的日志文件(可根据磁盘空间调整)
    compress                # 压缩轮转后的文件(如.gz格式)
    missingok               # 若日志文件不存在,不报错
    notifempty              # 若日志文件为空,不轮转
    create 640 root adm     # 创建新日志文件,权限640,属主root,属组adm
    sharedscripts           # 所有日志轮转完成后统一执行postrotate脚本
    postrotate
        /bin/kill -HUP `cat /u01/app/weblogic/domain/servers/AdminServer/tmp/AdminServer.pid 2>/dev/null` 2>/dev/null || true
    endscript
}

参数说明

  • daily:轮转频率(支持weekly/monthly);
  • rotate 7:保留最近7个日志文件(避免占用过多磁盘空间);
  • compress:使用gzip压缩旧日志(节省空间);
  • postrotate:轮转后执行的脚本,通过kill -HUP向WebLogic进程发送信号,使其重新打开日志文件(避免日志写入中断)。

4. 测试logrotate配置

手动触发logrotate以验证配置是否正确,执行以下命令:

sudo logrotate -vf /etc/logrotate.d/weblogic
  • -v:显示详细执行过程;
  • -f:强制立即轮转(即使未到轮转时间)。
    若无报错,说明配置生效。

5. 监控logrotate执行情况

logrotate的执行日志默认记录在/var/log/messages/var/log/syslog中,可通过以下命令实时查看:

tail -f /var/log/messages | grep logrotate

或查看logrotate自身的日志文件:

tail -f /var/log/logrotate.log

6. 可选:通过WebLogic内部配置实现日志轮转

若需更细粒度的控制(如按文件大小轮转),可通过修改WebLogic的logging.properties文件实现:

  • 定位配置文件:DOMAIN_HOME/config/logging.properties
  • 修改以下参数(以AdminServer为例):
    java.util.logging.FileHandler.pattern = /u01/app/weblogic/domain/servers/AdminServer/logs/AdminServer.%g.log
    java.util.logging.FileHandler.limit = 10485760  # 单个文件大小限制(10MB)
    java.util.logging.FileHandler.count = 5         # 最大保留文件数(5个)
    
  • 保存后重启WebLogic服务器使配置生效。

通过以上步骤,可实现WebLogic在CentOS上的日志轮转,有效管理日志文件大小并保留历史记录。需根据实际环境调整路径、频率及保留数量等参数。

0