Nginx服务器关于日志切割这一项它没有去解决,我不知道它们的开发人员是怎么想的,但是我想这是没必要的,我在本节一开始就说过,在生产环境下的访问者日志都是关闭的,即设置为“ access_log off ”。但是作为日志管理的一部分,我们仍然要将其完善,在系统级完成这个功能,那么也就是我们的shell脚本了。
这是一个LNMP套装中的一个日志切割脚本:
#!/bin/bash #function:cut nginx log files for lnmp v0.5 and v0.6 #author: http://lnmp.org
#set the path to nginx log files log_files_path="/home/wwwlogs/" log_files_dir=${log_files_path}$(date -d "yesterday" +"%Y")/$(date -d "yesterday" +"%m") #set nginx log files you want to cut log_files_name=(access vpser licess) #set the path to nginx. nginx_sbin="/usr/local/nginx/sbin/nginx" #Set how long you want to save save_days=30
############################################ #Please do not modify the following script. # ############################################ mkdir -p $log_files_dir
log_files_num=${#log_files_name[@]}
#cut nginx log files for((i=0;i mv ${log_files_path}${log_files_name[i]}.log ${log_files_dir}/${log_files_name[i]}_$(date -d "yesterday" +"%Y%m%d").log done
#delete 30 days ago nginx log files find $log_files_path -mtime +$save_days -exec rm -rf {} \;
$nginx_sbin -s reload |
根据实际的需要进行修改使用就可以了,我没有使用过该脚本。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27043155/viewspace-736458/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/27043155/viewspace-736458/