Skip to content

logrotate配置参数一览 #153

@anaer

Description

@anaer

logrotate配置参数一览

参数 作用说明
daily 日志每天轮转
weekly 日志每周轮转
monthly 日志每月轮转
yearly 日志每年轮转
rotate N 仅保留 N 个历史文件,超过自动删除
maxage DAYS 仅保留最近 DAYS 天内日志
size SIZE 日志达到指定大小时轮转(如:50M, 500k)
compress 对旧日志进行压缩
nocompress 不压缩轮转后的旧日志
delaycompress 最近一次轮转日志暂不压缩,等下次轮转时再压缩
missingok 日志文件不存在时不报错
notifempty 如果日志为空则不轮转
ifempty 即使日志为空也轮转
create MODE OWNER GROUP 以指定权限/用户/组创建新日志文件
copytruncate 针对被进程占用的日志,先拷贝后截断
nocopytruncate 备份日志但不截断
mail ADDRESS 轮转后的日志发送到指定邮箱
nomail 不发送备份到邮箱
olddir DIR 轮转文件移动到指定目录,须与当前日志同文件系统
noolddir 轮转文件与当前日志同目录
dateext 轮转后的日志文件名带日期后缀
dateformat 配合 dateext 使用,自定义日期格式(如 -%Y%m%d%s)
tabooext [+] LIST 指定不轮转某些扩展名的文件
prerotate/endscript 轮转前执行脚本(单独成行)
postrotate/endscript 轮转后执行脚本(单独成行)
sharedscripts 全部日志文件轮转完再统一执行一次脚本

配置实例

/log/*.log
{
    daily
    rotate 3
    nocompress
    missingok
    notifempty
    copytruncate
    create 0640 root root
}

测试配置

  • 检查语法(debug模式,仅校验不实际轮转):

    logrotate -d /path/to/your_rule_file
    
  • 强制执行轮转(真正进行日志分割):

    logrotate -f /path/to/your_rule_file
    
  • 加详细输出(可选):

    logrotate -vf /path/to/your_rule_file
    

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions