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

#! /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任务计划列表

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

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

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

时间: 2024-08-01 10:45:52

nginx日志切割配置的相关文章

nginx日志切割,日志格式,静态文件不记录日志,配置缓存

我是直接写的一个简单的shell实现的,内容如下: #! /bin/bash datedir=`date +%Y%m%d` /bin/mkdir  /home/logs/$datedir >/dev/null 2>&1 /bin/mv /home/logs/*.log /home/logs/$datedir /bin/kill -HUP `cat /var/run/nginx.pid` 这样执行以后,就会在/home/logs/$datedir目录下生成日志文件,你可以在/etc/cr

Nginx日志切割并计划任务自动上传到FTP服务器

枫城浪子原创,转载请标明出处! 微信bh19890922 QQ445718526,490425557 更多技术博文请见个人博客: https://fengchenglangzi.000webhostapp.com http://fengchenglangzi.blog.51cto.com 一.简述 Nginx WEB服务器每天会产生大量的访问日志,而且不会自动地进行切割,如果持续天数访问,将会导致该access.log日志文件容量非常大,不便于SA查看相关的网站异常日志,并且后期进行分割非常不易

nginx日志切割并使用flume-ng收集日志

nginx的日志文件没有rotate功能.如果你不处理,日志文件将变得越来越大,还好我们可以写一个nginx日志切割脚本来自动切割日志文件.第一步就是重命名日志文件,不用担心重命名后nginx找不到日志文件而丢失日志.在你未重新打开原名字的日志文件前,nginx还是会向你重命名的文件写日志,linux是靠文件描述符而不是文件名定位文件.第二步向nginx主进程发送USR1信号.nginx主进程接到信号后会从配置文件中读取日志文件名称,重新打开日志文件(以配置文件中的日志名称命名),并以工作进程的

logrotate日志切割配置

1 logrotate介绍 logrotate软件是一个日志管理工具,用于非分隔日志,删除旧的日志文件,并创建新的日志文件,起到"转储作用",可以为系统节省磁盘空间.一般centos系统已经自带安装好了. logrotate是基于crontab运行的,其脚本是/etc/cron.daily/logtotate,日志轮转是系统自发完成的,实际运行时,logrotate会调用配置文件/etc/logrotate.conf.可以在/etc/logrotate.d目录里放置自定义好的配置文件,

Nginx访问日志、Nginx日志切割、静态文件不记录日志和过期时间介绍

Nginx访问日志 1. 进入配置文件 [[email protected] src]# vim /usr/local/nginx/conf/nginx.conf  //搜索log_format 参考更改配置成如下: log_format aming '$remote_addr $http_x_forwarded_for [$time_local]' 如图: 日志格式字段含义如下: combined_realip为日志格式的名字,后面可以调用它. 2.到虚拟主机配置文件中指定访问日志的路径 [[

48.Nginx访问日志、Nginx日志切割、静态文件不记录日志和过期时间

一.Nginx访问日志 日志格式 vim /usr/local/nginx/conf/nginx.conf //搜索log_format combined_realip //规则名字 除了在主配置文件nginx.conf里定义日志格式外,还需要在虚拟主机配置文件中增加 vim /usr/local/nginx/conf/vhost/test.com.conf 添加 access_log /tmp/1.log combined_realip; 这里的combined_realip就是在nginx.

十二周三课 Nginx访问日志、 Nginx日志切割、 静态文件不记录日志和过期时间

Nginx访问日志 Nginx的文件格式存在于主配置文件中./usr/local/nginx/conf/nginx.conf然后搜索log_format找到他的配置文件这样我们就可以进行日志的格式配置了. 我们常用如下配置.$remote_addr客户端IP(公网IP)$http_x_forwarded_for代理服务器的IP$time_local服务器本地时间$host访问主机名(域名)$request_uri访问的url地址$status状态码$http_refererreferer$htt

四十八、Nginx访问日志、Nginx日志切割、静态文件不记录日志和过期时间

一.Nginx访问日志 日志格式 # pwd /usr/local/nginx/conf [[email protected] conf]# vim nginx.conf log_format ELA '$remote_addr $http_x_forwarded_for [$time_local]' ' $host "$request_uri" $status' ' "$http_referer" "$http_user_agent"'; 解析

Nginx访问日志 Nginx日志切割 静态文件不记录日志和过期时间

一.Nginx访问日志#vim /usr/local/nginx/conf/nginx.conf日志格式的名字combined_realip可以自定义,例如将它修改为aming,注意,这里定义为什么,后面引用的时候就定义为什么(nginx配置文件看见分号才是这一行结束)#vim /usr/local/nginx/conf/vhost/test.com.conf //增加如下一行#/usr/local/nginx/sbin/nginx -t#/usr/local/nginx/sbin/nginx