nginx日誌分割

2021-05-28 05:07:16 字數 1412 閱讀 3330

以下這個指令碼實施的核心是:

每天凌晨將日誌檔案壓縮並移動到相應的年份月份目錄下,然後重新生成日誌檔案,同時記錄日誌 

#!/bin/bash

logs_path="/home/wwwlog/"  #日誌存放位置

year=`date +%y`            #年份

month=`date +%m`           #月份

day=`date +%y%m%d`         #日期

time=`date +%y%m%d-%h:%m:%s`   #時間

weblog="www.pcstars.com_access"   #web訪問日誌

cutnginxlog="/home/sysadmin/zhaoyj/cutnginx.log"    #分割nginx日誌的記錄

if [ $day -eq 1 ];then        #判斷是不是月初1號,如果條件成立則建立目錄/home/wwwlog/年/月   

mkdir -p $$year/$month/

ficd $logs_path           #進入當前目錄

tar jcf  access_$day.log.tar.bz2 access.log     #壓縮日誌檔案

echo -n > access.log                                           #清空檔案,重新開始記錄日誌

duaccess=`du -sh access_$day.log.tar.bz2 |awk ''`            #統計tar的大小,以便記錄日誌

mv access_$day.log.tar.bz2 $$year/$month/                 #將日誌檔案移動到相應的目錄下

echo "access_$day.log.tar.bz2 : $duaccess     $time" >> $cutnginxlog    #記錄日誌

tar jcf  $_$day.tar.bz2 $weblog.log

echo -n > $weblog.log

dupcstars=`du -sh $_$day.tar.bz2 |awk ''`

mv $_$day.tar.bz2 $$year/$month/

echo "$_$day.tar.bz2 : $dupcstars     $time" >> $cutnginxlog

dupcstars=`du -sh $_$day.tar.bz2 |awk ''`

mv $_$day.tar.bz2 $$year/$month/

echo "$_$day.tar.bz2 : $dupcstars     $time" >> $cutnginxlog

echo "" >> $cutnginxlog

echo "" >> $cutnginxlog

Nginx 日誌分割

usr bin bash 日誌檔案存放目錄 logs path var log nginx nginx程序pid nginx pid cat var run nginx.pid 日誌名稱 logs name date d yesterday y m d 改名 mv logs path access....

NGINX日誌分割

nginx日誌分割 nginx 日誌分割 主要用到的命令是 usr local nginx sbin nginx s reopen nginx s reopen 意思是重新生成日誌檔案。所以我們可以每天定時把當天的日誌問價mv 成帶日期的,然後再生成新的檔案 usr local nginx 是我的n...

NGINX日誌分割

nginx 日誌分割 主要用到的命令是 usr local nginx sbin nginx s reopen usr local nginx 是我的nginx目錄 利用上面命令我們可以寫乙個指令碼每天定時執行,就可以做到切割日誌 我簡單用php寫的指令碼如下 僅供測試使用 test.php 我的p...