5 nginx日誌切割和刪除

2021-09-21 05:36:45 字數 913 閱讀 6450

5、nginx日誌切割和日誌定期刪除

logdir=/data/logs/nginx   #日誌存放目錄

logdate=`date +%y%m%d`    #日誌名稱字尾

keeplogdays=30   #保留的天數(看自己的需求)

deldate=`date -d "-$ days" +%y%m%d` #當前時間的前三十天時間戳(是乙個具體的日期)

(-d引數是刪除 語法:date -d 3days 雙引號引用的話中間可以有空格  否則會報錯)

(+%y%m%d引數是列印日期的格式 語法:date +%y%m%d  )

logs=`ls -l /data/logs/nginx/*.log|awk -f'/' ''`   #日誌存放目錄下以.log結尾的日誌名稱

[ -d $logdir/$logdate ] || mkdir $logdir/$logdate    #判斷日誌存放目錄下當前時間戳的是否為目錄  沒有的話新建目錄

for i in $logs;

doif [ -f $logdir/$i ];then

touch $logdir/$logdate/$i

ln -sf $logdir/$logdate/$i $logdir/$i

fidone

#把所有的logs都新建在當前時間戳的目錄裡面,並且在上層目錄下建立軟鏈檔案

kill -usr1 `cat /dir/nginx.pid`#你的nginx.pid存放路徑  看配置檔案

if  [ x$keeplogdays != x0 ];then

rm -rf $logdir/$deldate

fi#變數keeplogdays不為零的時候刪除deldate變數代表

ps:把這個指令碼寫成定時任務,每天00:00執行一次即可

5 Nginx 效能優化

系統優化 cat etc sysctl.conf net.ipv4.tcp max syn backlog 65536 net.core.netdev max backlog 36768 net.core.somaxconn 36768 net.core.wmem default 8588608 n...

nginx日誌詳解和日誌切割

我們觀察nginx的server段,可以看到如下類似資訊 access log logs host.access.log main 這說明 該server,它的訪問日誌的檔案是 logs host.access.log 使用的 格式 main 格式.除了main格式,你可以自定義其他格式.main格...

NGINX訪問日誌和日誌切割

當我們訪問nginx服務時,nginx會記錄日誌,nginx日誌分兩種,一種是訪問日誌,一種是錯誤日誌,訪問日誌記錄在 access.log 檔案中,錯誤日誌記錄在 error.log 檔案中 編譯安裝了nginx,預設情況下,access.log日誌會放在nginx安裝路徑的logs目錄中 roo...