vim ``/root/runscript/cut_nginx_log``.sh

1、说明
乘机岁月的充实,Nginx 的拜会日志会愈加大,下图是新铺排的线上 Zabbix
监察和控制网址运行了十几天左右发出的访问日志达到二1叁M。

在Linux下,大家能够透过crontab,定时把access.log移动到备份目录,同时,发时限信号US哈弗1给nginx主进程,让其再度生成个日志文件。

一、创造脚本/usr/local/webserver/nginx/sbin/cut_nginx_Linux下Nginx怎么样切割访问日志,编写每一天定时切割Nginx日志的本子。log.sh

#!/bin/bash
# nginx日志切割脚本
# This script run at 00:00
logs_path=”/usr/local/nginx/logs/”
target_path=”/usr/local/nginx/logs/cut_log/”
mv ${logs_path}beauty.access.log ${target_path}beauty.access.$(date -d
“yesterday” +”%Y%m%d”).log
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`

澳门金沙国际 1

在开始展览编辑脚本在此之前,先举办以下假如:

vi /usr/local/webserver/nginx/sbin/cut_nginx_log.sh
  输入以下内容:引用#!/bin/bash
# This script run at 00:00

 

澳门金沙国际 ,之所以必须开始展览日志分割,要求如下:

日记文件是:/usr/local/nginx/logs/access.log

# The Nginx logs path
logs_path=”/usr/local/webserver/nginx/logs/”

crontab -e

一、每日的日志单独生成2个文书
二、保留30天的访问日志

nginx主进度id保存在文书:/usr/local/nginx/logs/nginx.pid

mkdir -p ${logs_path}$(date -d “yesterday” +”%Y”)/$(date -d “yesterday”
+”%m”)/
mv ${logs_path}access.log ${logs_path}$(date -d “yesterday”
+”%Y”)/$(date -d “yesterday” +”%m”)/access_$(date -d “yesterday”
+”%Y%m%d”).log
kill -USR1 `cat /usr/local/webserver/nginx/nginx.pid`

#重启cron

二、编写脚本
vim
/usr/local/nginx/logs/nginx_log_rotate.sh

切割后备份文件目录:/usr/local/nginx/logs/bak/

  2、设置crontab,每一天凌晨00:00切割nginx访问日志crontab
-e
  输入以下内容:引用00
00 * * * /bin/bash
 /usr/local/webserver/nginx/sbin/cut_nginx_log.sh

service crond restart

#! /bin/bash
 
logs_path=”/usr/local/nginx/logs/”
log_name=”access.log”
pid_path=”/usr/local/nginx/logs/nginx.pid”
 
#日志文件集中存放的路径
[ -d /usr/local/nginx/logs/access_log ] || mkdir
/usr/local/nginx/logs/access_log
access_logs_path=”/usr/local/nginx/logs/access_log/”
 
#移动日志
mv ${logs_path}${log_name} ${access_logs_path}$(date
–date=”yesterday”+”%Y-%m-%d”)_${log_name}
 
#变更新的access.log文件
kill -USR1 `cat ${pid_path}`
 
#删去3个月在此以前的日记
cd ${access_logs_path}
find . -ctime +30 -name “*access.log” |xargs rm -f
exit 0
本子扩充可实施权限

切割详细步骤,请参阅下边操作:

正文出自 “FlyHome”
博客,请务必保留此出处

chmod a+x /usr/local/nginx/logs/nginx_log_rotate.sh
 
三、加入安插职责
每一日凌晨运营脚本
crontab -e

1、创造文件cut_access_log.sh:

vi /usr/local/webserver/nginx/sbin/cut_nginx_log.sh 输入以下内容:
引用#!/bin/bash # This script run at 00…

00 00 * * * /usr/local/nginx/logs/nginx_log_rotate.sh
 
重启crond服务

vim /.bin/cut_access_log.sh  vim /.bin/cut_access_log.sh

service crond restart

二、输入文件cut_access_log.sh内容

运行脚本会生成 access_log 文件夹,下图是到后天结束的有着日志

#! /bin/bash

澳门金沙国际 2

org_path=”/usr/local/nginx/logs/”

上边关于Nginx的稿子您也只怕喜欢,不要紧参考下:

dest_path=”/usr/local/nginx/logs/bak/”

CentOS
七.二下编写翻译安装PHP7.0.10+MySQL伍.7.1四+Nginx1.10.一 
http://www.linuxidc.com/Linux/2016-09/134804.htm

if [ ! -d “$dest_path” ]; then

Nginx达成集群的载荷均衡配置进程详解
http://www.linuxidc.com/Linux/2017-02/140549.htm

mkdir “$dest_path”

Nginx高级应用–负载均衡与rewrite规则 
http://www.linuxidc.com/Linux/2017-02/140476.htm

fi

CentOS 6.4安装配备Nginx+Pcre+php-fpm
http://www.linuxidc.com/Linux/2013-08/88984.htm

mv ${org_path}access.log ${dest_path}access$(date +%Y%m%d).log

CentOS 陆.八下源码安装 Nginx 一.1一.拾 
http://www.linuxidc.com/Linux/2017-03/141908.htm

kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`

CentOS 七 编写翻译安装Nginx一.拾.二 脚本运行战败消除思路
http://www.linuxidc.com/Linux/2017-01/139794.htm

3、保存cut_access_log.sh之后,赋可进行权限

Nginx简单完结网址的载荷均衡 
http://www.linuxidc.com/Linux/2017-02/140351.htm

chmod +x /.bin/cut_access_log.sh

Nginx
的详尽介绍
:请点那里
Nginx
的下载地址
:请点这里

4、编写crontab文件:

正文永久更新链接地址:http://www.linuxidc.com/Linux/2017-04/142965.htm

vim /.cron

澳门金沙国际 3

五、输入crontab文件内容,并维持

59 23 * * * /bin/bash /.bin/cut_access_log.sh

6、添加到crontab中

crontab /.cron

经过上述陆步,假使全数充足的权限话,访问日志会在天天二3:57分,举办切割。

澳门金沙国际 4

相关文章