nginx日誌切片

2022-10-10 07:03:07 字數 768 閱讀 4470

上面給了乙個任務,說是每日nginx訪問日誌量都有幾個g,又不願意關閉訪問日誌。要實現nginx訪問日誌每日切片,並刪除7日前的日誌。

先寫乙個切片的cron.sh檔案

#!/bin/bash

# description: rotate nginx access logs

# nginx程序的pid

ngx_pid=`cat /usr/local/nginx/logs/nginx.pid`

# nginx所在目錄

logs_dir="/usr/local/nginx"

# 日誌名

log_name="access"

cd $logs_dir

#移動日誌到新的目錄 並新檔案以日期命名

/usr/bin/mv $log_name ./logs/$(date +%f -d 'yesterday')_$log_name

#重啟nginx

/bin/kill -usr1 $ngx_pid

#刪除7天前的檔名帶有「log」的檔案

find $logs_dir/logs -type f -name "*log*" -mtime +7 -exec rm -rf {} \

然後,將檔案加入定時任務中 ,每日0時執行

echo "0 0 * * * /usr/local/nginx/cron.sh > /dev/null 2>&1" >> /var/spool/cron/root

Nginx 日誌切片 windows linux

nginx 預設不採用日誌切片進行日誌儲存,這樣就有乙個弊端 日誌檔案都放在同乙個檔案中,長時間執行後日誌檔案很大,可能達到幾個g,甚至十幾個g大小,檢視起來很不方便。為了解決這個問題就需要進行日誌切片,如每小時或者每天的日誌放在乙個單獨的檔案中。怎麼實現呢?windows 系統可通過簡單的配置實現...

Nginx 日誌配置 日誌切割

設定error log 日誌切割 前置文章 nginx 的配置檔案 nginx.conf nginx日誌對於統計 系統服務排錯很有用。nginx日誌主要分為兩種 access log 訪問日誌 和error log 錯誤日誌 通過訪問日誌我們可以得到使用者的ip位址 瀏覽器的資訊,請求的處理時間等資...

Nginx系列(八 nginx日誌)

remote addr,http x forwarded for 記錄客戶端ip位址 remote user 記錄客戶端使用者名稱 request 記錄請求的url和http協議 status 記錄請求狀態 body bytes sent 傳送給客戶端的位元組數,不包括響應頭的大小 該變數與apac...