nginx日志切割

简介:

1. 编辑脚本

    说明:date -d "-1 day" 表示昨天; %F表示年月日以Y%-m%-d形式;[-d ]表示判断是否有这个目录,如果没有就或关系,创建该目录;将每日的access.log文件挪到创建的目录/tmp/nginx_log/中,并命名为d变量的格式;reload用于重新生成acces.log,并重定向清空;考虑到切割的日志比较大,gzip -f判断日志是否存在,如果存在,则进行强制压缩(如果一天执行多次,该文件已经存在并压缩过,则会同名,-f覆盖不提示)


   vim /usr/local/sbin/nginx_logrotate.sh

1
2
3
4
5
6
7
8
#! /bin/bash
# author by huangzhenping
d=` date  -d  "-1 day"  +%F`
[ -d  /tmp/nginx_log  ] ||  mkdir  /tmp/nginx_log
mv  /tmp/access .log  /tmp/nginx_log/ $d.log
/etc/init .d /nginx  reload >  /dev/null
cd  /tmp/nginx_log/
gzip  -f $d.log



2. 日志切割脚本加入crond任务计划列表

1
0 0 * * *  /bin/bash  /usr/local/sbin/nginx_logrotate .sh


3. 定期删除日志,crond计划列表

1
0 0 * * *  find  /tmp/nginx_log/  - type  f -mtime +10 | xargs  rm









本文转自 huangzp168 51CTO博客,原文链接:http://blog.51cto.com/huangzp/1900656,如需转载请自行联系原作者
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
3月前
|
存储 监控 Ubuntu
日志切割工具-Logrotate实现nginx日志切割
日志切割工具-Logrotate实现nginx日志切割
40 0
|
11月前
|
缓存 算法 应用服务中间件
一键部署nginx及日志切割脚本
一键部署nginx及日志切割脚本
|
缓存 应用服务中间件 Shell
Nginx实战(三) 日志配置与切割
Nginx实战(三) 日志配置与切割
136 0
|
应用服务中间件 nginx Shell
Nginx 日志切割脚本(学习笔记五)
#!/bin/bash #原nginx日志存放路径 log_files_path="/home/wwwlogs/" #nginx切割后存放路径 log_files_dir=${log_files_path}$(date -d "yesterd...
926 0
|
应用服务中间件 Apache nginx
nginx自己写日志切割脚本
转自本人的博客:http://blog.teier.cn
1437 0
|
应用服务中间件 nginx Shell
|
应用服务中间件 Shell nginx
|
应用服务中间件 nginx Perl
|
应用服务中间件 nginx Shell
|
应用服务中间件 nginx Shell