nginx日誌檔案切分

2022-06-20 04:33:08 字數 752 閱讀 6959

定義cut_nginx_log.sh
日誌檔案指令碼如下

#!/bin/bash

#logs_path為日誌存放路徑

logs_path=/weblog/nginx/logs

yesterday=$(date -d "yesterday" +%y-%m-%d)

keeptime=$(date -d "-30 days" +%y-%m-%d)

#切分日誌檔案

mv $/access.log $/access_$.log

mv $/error.log $/error_$.log

#通過nginx訊號量控制重讀日誌,/web/nginx/為nginx安裝目錄

kill -usr1 $(cat /web/nginx/logs/nginx.pid)

#刪除30天前的日誌檔案

rm -f $/access_.log

rm -f $/error_.log

echo 0

如果sh指令碼是從其他地方複製過來要轉成unix格式:

yum install dos2unix -y

dos2unix 指令碼.sh

新增系統定時任務

crontab -e

#每天0時1分進行日誌分割

01 00 * * * /web/nginx/logs/cut_nginx_log.sh

#重啟linux定時任務

crond restart

Nginx 日誌檔案切分

bin bash 切分nginx日誌 目錄base dir usr local nginx 檔名base file name access.log 原日誌目錄 home path base dir logs 備份日誌目錄 bak path base dir datalogs 原檔案 home fil...

Nginx 日誌檔案切分

bin bash 切分nginx日誌 目錄base dir usr local nginx 檔名base file name access.log 原日誌目錄 home path base dir logs 備份日誌目錄 bak path base dir datalogs 原檔案 home fil...

Nginx日誌切分(簡單案例)

停機備份操作。只複製了access.log。沒有複製error.log。base dir usr local nginx base file name uzong.access.log current path base dir logs bak path base dir datalogs cur...