Linux nginx日志按天分割实例

nginx的日志有个小缺点,日志文件一直就是一个,不会自动地进行切割,如果访问量很大的话,将导致日志文件非常大,不便于管理 这就需要我们自己来实现了,按日期每天生产一个日志文件 思路

每天零点把默认日志文件改名为当天日期,再重新打开新的日志文件 使用定时任务来执行脚本,脚本中执行改名和重新打开日志文件的操作 向Nginx主进程发送 USR1 信号,就可以重新打开日志文件

实现

#/bin/bash #备份日志的路径 bakpath='/home/nginx/logs' #nginx日志路径 logpath='/usr/local/nginx/logs' #在备份路径下创建年月子目录 mkdir -p $bakpath/$(date +%Y)/$(date +%m) #移动日志文件到备份路径,并改名为日期格式 mv $logpath/access.log $bakpath/$(date +%Y)/$(date +%m)/access.$(date +%Y%m%d).log mv $logpath/error.log $bakpath/$(date +%Y)/$(date +%m)/error.$(date +%Y%m%d).log #用 USR1 信号让nginx重新打开日志文件 kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`

原文发布于微信公众号 - 性能与架构(yogoup)

原文发表时间:2016-01-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python与爬虫

如何获取小程序的源代码

准备工作 手机已经root adb.exe 已经放到了系统环境变量,也就是打开cmd 后输入 adb不会报错,如下图 ? 手机能连上电脑,并且手机开启us...

1.1K14
来自专栏张伟博客

netsh命令实现计算机本地端口转发(端口映射)

2144
来自专栏Angular&服务

解决mac上出现包损坏等情况,不能打开软件

936
来自专栏数据结构笔记

scrapy爬虫框架(一):scrapy框架简介

安装完成后,python会自动将 scrapy命令添加到环境变量中去,这时我们就可以使用 scrapy命令来创建我们的第一个 scrapy项目了。

1994
来自专栏数据和云

挖掘Oracle日志的“大杀器”

编辑手记: LogMiner是用于Oracle日志挖掘的利器,使用该工具可以轻松获得Oracle 重做日志文件(归档日志文件)中的具体内容,LogMiner分析...

2543
来自专栏女程序员的日常

Open-Drain&Push-Pull

在配置GPIO(General Purpose Input Output)管脚的时候,常会见到两种模式:开漏(open-drain,漏极开路)和推挽(push-...

1951
来自专栏lgp20151222

Cannot change version of project facet Dynamic Web Module to 2.5的解决

修改org.eclipse.wst.common.project.facet.core.xml文件

871
来自专栏河湾欢儿的专栏

webpack

npm install webpack -g npm init -y npm install webpack --save-dev

1021
来自专栏深度学习之tensorflow实战篇

linux (ubantu)安装最新版python3.6,以及直接安装anaconda

用Linux自带的下载工具wget下载(当前的最新版本python3.6.0),进入个人用户下面的Downloads下 cd ~/tmp/ wget https...

3605
来自专栏用户画像

idea git merge

当两个开发人员修改了同一个文件,A提交之后,B再获取或者提交代码时,就会产生冲突。

742

扫码关注云+社区

领取腾讯云代金券