nginx日志切割

1.源码安装一个nginx(我的shell脚本执行的 )

#!/bin/bash
ceshi_yemian() {
        http_code=`curl -I -s http://10.0.0.43:80|awk 'NR==1{print $2}'`
        if [ $http_code -eq 200 ]; then
                echo "可以正常访问页面"
        else
                echo "不可以访问页面"
        fi
}
#echo "安装依赖"
yum -y install gcc pcre-devel zlib-devel
# "创建存放nginx压缩包的目录"
if [ -d /usr/locan/nginx ]; then
        echo "存放nginx压缩包的目录已经存在了"
else
        mkdir /usr/local/nginx
fi
#下载nginx的压缩包
ls -la /usr/local/nginx/nginx-1.16.1.tar.gz
if [ $? -eq 0 ]; then
        echo "压缩包已经存在"
else
        cd /usr/local/nginx && wget  http://nginx.org/download/nginx-1.16.1.tar.gz
fi
#判断解压出来的压缩包是否已经存在了
if [ -d /usr/local/nginx/nginx-1.16.1]; then
        echo "解压出来的压缩包已经存在"
else
        cd /usr/local/nginx  && tar -zxf nginx-1.16.1.tar.gz
fi
#检查环境 编译 安装
cd /usr/local/nginx/nginx-1.16.1 && ./configure --prefix=/usr/local/nginx  && make && make install
ss -ntlp | grep -w nginx
if [ $? -eq 0 ]; then
        echo "服务已经开启"
        ceshi_yemian
else
        kill -9 `cat /usr/local/nginx/log/nginx.pid`
        /usr/local/nginx/sbin/nginx
        ceshi_yemian
fi
/bin/bash /root/shell/nginx_log.sh

 

2.开始切割日志  是按日期切割的 每天的凌晨开始执行这个脚本

#/bin/bash
logs_path="/usr/local/nginx/logs/"

mv ${logs_path}access.log ${logs_path}access_$(date  +"%Y-%m-%d").log
ss -ntlp | grep nginx
if [ $? -eq 0 ]; then
        /usr/local/nginx/sbin/nginx -s reload
else

        /usr/local/nginx/sbin/nginx
        /usr/local/nginx/sbin/nginx -s reload
fi
echo "" > /var/spool/cron/root
cat >>/var/spool/cron/root<<eof 
00 00 00 00 00 /bin/bash /root/shell/yace.sh
00 00 00 00 00 /bin/bash /root/shell/nginx_log.sh
eof

3.写一个压测脚本 给nginx生产一些数据

#!/bin/bash
for i in {1..10}
do
        curl -I -m 10 -o /dev/null -s -w %{http_code} http://10.0.0.43
done
posted @ 2020-01-07 19:13  陈豆豆鸭  阅读(93)  评论(0)    收藏  举报