看了好几个网上的例子,写得不清不楚。于是决定自己写一个,说不定哪天忘记了可以再次打开学习学习。
但愿我写得比较清楚,下次看的时候或者别人看的时候不再费神。
1.编写日志分割程序nginx-log.sh
#/bin/bash
#日志将要存放的路径
savepath_log='/logs/nginx/logs'
#nginx的日志路径
nglogs='/usr/local/nginx/logs'mkdir -p $savepath_log/$(date +%Y)/$(date +%m)
mv $nglogs/access.log %savepath_log/$(date +%Y)/$(date +%m)/access.$(data +%Y%m%d).log
mv $nglogs/error.log %savepath_log/$(date +%Y)/$(date +%m)/error.$(data +%Y%m%d).log
kill -USR1 'cat /usr/local/nginx/logs/nginx.pid'
# kill -USR1 $(cat /usr/local/nginx/logs/nginx.pid)
#将这段脚本保存后加入到linux的crontab守护进程,让此脚本在每天凌晨0点执行,就可以实现日志的每天分割功能。
2.修改文件权限,使其可以被执行。
chmod 755 nginx-log.sh
3.可以看一下有哪些计划任务
crontab -l
4.打开守护进程,进入编程模式
crontab -e #如用vi按i键
5.在守护进程中增加要执行的任务,通常日志在0点分割
0 0 * * * /logs/nginx/nginx-log.sh #执行文件存放路径
好了,就等着明天到日志目录下去看看实现结果吧。。