nginx 定时分割日志
2014-09-18 17:07
309 查看
nginx 是没有自动分割日志的,所以就需要自己实现日志分割
原 站点所有日志都放在一个目录里(文件名即站点名)
分割方式:每个站点一个目录,每天生成一个日志文件,根据文件名称生成目录
呆狐狸.凨
语 法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]
补充说明:cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序。只要用户会编辑计时器的配置文件,就可以使 用计时器的功能。其配置文件格式如下:
Minute Hour Day Month DayOFWeek Command
参 数:
-e 编辑该用户的计时器设置。
-l 列出该用户的计时器设置。
-r 删除该用户的计时器设置。
-u<用户名称> 指定要设定计时器的用户名称。
* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列 表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
crontab -e然后输入
1 0 * * * /root/lanmps_cut_log.sh完成
原 站点所有日志都放在一个目录里(文件名即站点名)
分割方式:每个站点一个目录,每天生成一个日志文件,根据文件名称生成目录
呆狐狸.凨
1.lanmps_cut_log.sh shell文件
#!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin:~/bin export PATH # Check if user is root if [ $UID != 0 ]; then echo "Error: You must be root to run the install script, please use root to install lanmps";exit;fi #日志目录 IN_WEB_LOG_DIR="/www/wwwLogs" YESTERDAY=`date -d "yesterday" +%Y-%m-%d` [ ! -d $IN_WEB_LOG_DIR/logs ] && mkdir $IN_WEB_LOG_DIR/logs for filename in `ls $IN_WEB_LOG_DIR` do if [ -f $IN_WEB_LOG_DIR/$filename ] ; then #echo $IN_WEB_LOG_DIR/$filename #echo $IN_WEB_LOG_DIR/logs/${filename%.log}/${YESTERDAY}.log tmpPath=$IN_WEB_LOG_DIR/logs/${filename%.log} [ ! -d $tmpPath ] && mkdir $tmpPath mv $IN_WEB_LOG_DIR/$filename $tmpPath/${YESTERDAY}.log rm -rf $IN_WEB_LOG_DIR/$filename fi done #nginx pid 文件位置 kill -USR1 `cat /www/lanmps/nginx/logs/nginx.pid`保存位置 例如:/root/lanmps_cut_log.sh
2.定时任务
#在 每天凌晨00:01运行 1 0 * * * /root/lanmps_cut_log.sh
3.设置
3.1 crontab命令
功能说明:设置计时器。语 法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]
补充说明:cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序。只要用户会编辑计时器的配置文件,就可以使 用计时器的功能。其配置文件格式如下:
Minute Hour Day Month DayOFWeek Command
参 数:
-e 编辑该用户的计时器设置。
-l 列出该用户的计时器设置。
-r 删除该用户的计时器设置。
-u<用户名称> 指定要设定计时器的用户名称。
3.2 crontab 格式
基本格式 :* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列 表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
3.3 案例
首先,输入crontab -e然后输入
1 0 * * * /root/lanmps_cut_log.sh完成
相关文章推荐
- 【nginx运维基础(4)】Nginx的日志管理(日志格式与定时分割日志)
- nginx 日志按天分割并定时匹配404访问链接
- CentOS 7.0下nginx实现每天定时分割日志
- Windows下nginx定时分割日志
- Windows下nginx定时分割日志
- Linux下自动分割Nginx日志文件(一)-----自定义脚本和定时任务
- Windows下nginx定时分割日志
- nginx日志分割与crontab用法
- Centos下Nginx配置WEB访问日志并结合shell脚本定时切割
- nginx日志配置及进行日志分割
- linux下定时分割日志文件
- nginx日志自动分割的完美实现
- Nginx的定时切割日志脚本
- Nginx日志定时切割脚本
- nginx日志每日定时写入Hdfs
- 使用linux自带的logrotate对nginx日志进行分割
- windows下nginx的安装、配置和日志分割
- 05 nginx定时任务完成日志切割
- Nginx日志定时切割脚本
- Linux下定时切割nginx日志并删除指定天数前的日志记录 推荐