日志切割工具logrotate使用
[ 2020-09-29 14:49:16 | 作者: admin ]
Logrotate 程序是一个日志文件管理工具。用于分割日志文件,压缩转存、删除旧的日志文件,并创建新的日志文件,下面就对logrotate日志轮转的记录:
Logrotater提供日志文件切割策略,logrotate.conf配置文件: /etc/logrotate.conf
Logrotater会自动导入 /etc/logrotate.d/ 下的其他相关配置文件,所以有应用的日志需要处理,都可以单独写个配置放在这个目录下。
配置演示
保留半年配置为:
NGINX日志的配置实例参考:
配置文件地址:/etc/logrotate.d/nginx
PHP-FPM日志的配置实例参考:
配置文件地址:/etc/logrotate.d/phpfpm
文章来源:https://blog.csdn.net/qq_38814358/article/details/106117225
Logrotater提供日志文件切割策略,logrotate.conf配置文件: /etc/logrotate.conf
Logrotater会自动导入 /etc/logrotate.d/ 下的其他相关配置文件,所以有应用的日志需要处理,都可以单独写个配置放在这个目录下。
配置演示
weekly //默认每一周执行一次rotate轮转工作,可以改为 monthly 月切割
rotate 4 //保留多少个日志文件(轮转几次).默认保留四个.就是指定日志文件删除之前轮转的次数,0 指没有备份
create //自动创建新的日志文件,新的日志文件具有和原来的文件相同的权限;因为日志被改名,因此要创建一个新的来继续存储之前的日志
dateext //这个参数很重要!就是切割后的日志文件以当前日期为格式结尾,如xxx.log-20131216这样,如果注释掉,切割出来是按数字递增,即前面说的 xxx.log-1这种格式
compress //是否通过gzip压缩转储以后的日志文件,如xxx.log-20131216.gz ;如果不需要压缩,注释掉就行
include /etc/logrotate.d //导入/etc/logrotate.d/ 目录中的各个应用配置
/var/log/wtmp { //仅针对 /var/log/wtmp 所设定的参数
monthly //每月一次切割,取代默认的一周
minsize 1M //文件大小超过 1M 后才会切割
create 0664 root utmp //指定新建的日志文件权限以及所属用户和组
rotate 1 //只保留一个日志.
}
rotate 4 //保留多少个日志文件(轮转几次).默认保留四个.就是指定日志文件删除之前轮转的次数,0 指没有备份
create //自动创建新的日志文件,新的日志文件具有和原来的文件相同的权限;因为日志被改名,因此要创建一个新的来继续存储之前的日志
dateext //这个参数很重要!就是切割后的日志文件以当前日期为格式结尾,如xxx.log-20131216这样,如果注释掉,切割出来是按数字递增,即前面说的 xxx.log-1这种格式
compress //是否通过gzip压缩转储以后的日志文件,如xxx.log-20131216.gz ;如果不需要压缩,注释掉就行
include /etc/logrotate.d //导入/etc/logrotate.d/ 目录中的各个应用配置
/var/log/wtmp { //仅针对 /var/log/wtmp 所设定的参数
monthly //每月一次切割,取代默认的一周
minsize 1M //文件大小超过 1M 后才会切割
create 0664 root utmp //指定新建的日志文件权限以及所属用户和组
rotate 1 //只保留一个日志.
}
保留半年配置为:
monthly
rotate 6
rotate 6
NGINX日志的配置实例参考:
配置文件地址:/etc/logrotate.d/nginx
/var/log/weblog/*.log {
daily //指定转储周期为每天
compress //通过gzip 压缩转储以后的日志
rotate 7 //保存7天的日志
missingok //如果日志文件丢失,不要显示错误
notifempty //当日志文件为空时,不进行轮转
dateext //使用当期日期作为命名格式,exp: nginx_access.log-20190120
sharedscripts //运行postrotate脚本
postrotate //执行的指令
if [ -f /run/nginx.pid ]; then
kill -USR1 `cat /run/nginx.pid`
fi
endscript //结束指令
}
daily //指定转储周期为每天
compress //通过gzip 压缩转储以后的日志
rotate 7 //保存7天的日志
missingok //如果日志文件丢失,不要显示错误
notifempty //当日志文件为空时,不进行轮转
dateext //使用当期日期作为命名格式,exp: nginx_access.log-20190120
sharedscripts //运行postrotate脚本
postrotate //执行的指令
if [ -f /run/nginx.pid ]; then
kill -USR1 `cat /run/nginx.pid`
fi
endscript //结束指令
}
PHP-FPM日志的配置实例参考:
配置文件地址:/etc/logrotate.d/phpfpm
/usr/local/php/var/log/*.log {
daily
compress
rotate 7
missingok
notifempty
dateext
sharedscripts
postrotate
if [ -f /usr/local/php/var/run/php-fpm.pid ]; then
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`
fi
endscript
}
daily
compress
rotate 7
missingok
notifempty
dateext
sharedscripts
postrotate
if [ -f /usr/local/php/var/run/php-fpm.pid ]; then
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`
fi
endscript
}
文章来源:https://blog.csdn.net/qq_38814358/article/details/106117225
[最后修改由 admin, 于 2020-11-23 19:59:44]
评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2717
这篇日志没有评论。
此日志不可发表评论。