rsyslog、logrotate切割保存日志日期不准确的问题
2017-06-22 09:06
337 查看
相信用过rsyslogd logrotate转存切割日志的同学,都会发现日志转存后的文件,会出现日期不准确的问题
例如:6月21号生成的日志,无缘无故转存到了6月22号的文件里,日期提前了一天。
又或者就算21号的日志转存到了21号的文件里,当你打开却发现里面的内容有20号。
经过几天的验证,终于发现有一种方法,几乎做到了安全按照每天来清晰的分隔日志。就在上篇文章中大致介绍了做法,在这详细说一下:
操作的配置文件:/etc/anacrontab
内容配置如下:
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=9 (这里是个最大随机延时时间)
# the jobs will be started during the following hours only
START_HOURS_RANGE=23-24 (这是日志切割时间点,即只在23点到24点开始切割,不出意外就是23点啦)
#period in days delay in minutes job-identifier command
1 50 cron.daily
nice run-parts /etc/cron.daily(这里设置一下延时时间,这里的作用本来是为了避免同时发生多个任务造成负载过重)
7 25 cron.weeklynice run-parts /etc/cron.weekly
@monthly 45 cron.monthlynice run-parts /etc/cron.monthly
这样设置的效果就是 日志会在每天的23:59 进行切割转存,当然要满足转存的条件,这样一整天(从上一天的23:59到今天的23:59)的日志就会保存在一个日志文件了。
例如:6月21号生成的日志,无缘无故转存到了6月22号的文件里,日期提前了一天。
又或者就算21号的日志转存到了21号的文件里,当你打开却发现里面的内容有20号。
经过几天的验证,终于发现有一种方法,几乎做到了安全按照每天来清晰的分隔日志。就在上篇文章中大致介绍了做法,在这详细说一下:
操作的配置文件:/etc/anacrontab
内容配置如下:
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=9 (这里是个最大随机延时时间)
# the jobs will be started during the following hours only
START_HOURS_RANGE=23-24 (这是日志切割时间点,即只在23点到24点开始切割,不出意外就是23点啦)
#period in days delay in minutes job-identifier command
1 50 cron.daily
nice run-parts /etc/cron.daily(这里设置一下延时时间,这里的作用本来是为了避免同时发生多个任务造成负载过重)
7 25 cron.weeklynice run-parts /etc/cron.weekly
@monthly 45 cron.monthlynice run-parts /etc/cron.monthly
这样设置的效果就是 日志会在每天的23:59 进行切割转存,当然要满足转存的条件,这样一整天(从上一天的23:59到今天的23:59)的日志就会保存在一个日志文件了。
相关文章推荐
- logrotate 日志清理后 rsyslog中断问题
- logrotate 日志清理后 rsyslog中断问题
- 日志切割工具logrotate解决Tomcat catalina.out日志过大的问题
- logrotate 日志清理后 rsyslog中断问题
- nginx日志切割工具logrotate若干问题
- Syslog-ng+Rsyslog收集日志:logrotate日志切割、轮询(七)
- logrotate切割日志rsyslog不重新上传,清空归零iCurrOffs
- debian使用 Logrotate 来切割日志
- logrotate日志管家来切割日志(tomcat,nginx,httpd的日志)
- 显示日期和时间,列出所有登录的用户,给出系统的更新时间,最后将所有信息保存到日志文件中
- Nginx日志按日期切割详解(按天切割)
- Tomcat 日志切割(logrotate)详细介绍
- logrotate日志切割、轮询、删除
- 使用logrotate工具切割MySQL日志与慢日志分析发送到邮箱
- tomcat日志切割-logrotate
- logrotate 日志切割
- linux 日志切割logrotate
- 修改归档日志目录后自动建立日期目录的问题
- nginx利用logrotate日志切割
- PyroCMS日志存档日期乱码问题