【运维实战】一次linux日志分割之路——将日志按照每小时进行分割,并按照“日期-小时”格式保存

是这样的,现在需要对nginx的access.log进行按照每小时进行分割,并且最好还要能够以 “日期+时间”的形式,命名保存。

两点,一个是按照每小时进行分割,一个是将日志以“日期+时间”的形式进行保存。

1.将日志按照每小时进行分割:

利用crontab

输入crontab -e,手动添加一个定时任务

0 */1 * * * /bin/bash /root/tools/log_per_hour.sh

那么这种是我最终需要的,是在每个整点都执行写好的log_per_hour脚本。

肯定有一些大兄弟需要的是“从现在开始每隔一个小时进行执行”,这个时候的crontab定时任务应该这么写:

*/60 * * * * /bin/bash /root/tools/log_per_hour.sh

是“每隔60分钟执行一次”,这样会从任务生效时开始计算间隔。

2.将日志以“日期+时间”的形式进行保存:

 

其中,为了保证能够及时发现如果文件或者目录异常,中间做了条件判定。

并且为了让最后的access.log文件能够自动重新生成(等于是之前每个小时的都已经分割好了,nginx重载之后日志文件会重新生成并记录,这样就避免到时候把文件mv了之后,原先运行的nginx日志没地方写入尴尬的境地)

 

 

运行了两天,看一下成果~

小百万的访问量,每个日志还是很大~

下一步得要做威胁分析,进一步挖掘日志中的内容,祝我好运~

posted @ 2019-02-17 22:58  黄烤鸭  阅读(4585)  评论(0编辑  收藏  举报