nginx預設的日誌在logs/access.log,並且是一直累加寫入,時間長了就會非常大,佔用過多的硬碟,如果強行刪除是很不友好的,需要重啟服務;
(1)、清空,進入到nginx 的logs資料夾下,執行命令
truncate -s 0 access.log
(2)關閉日誌(如果不需要日誌檔案就直接關閉,但是不建議不建議)
access_log off;
(3)進行分割
透過shell指令碼+linux的定時任務進行的一個平滑切分
#!/bin/bash log_path=/usr/local/nginx/logs/access.log save_path=/usr/local/nginx/logs/bak/access_$(date +%Y%m%d -d 'yesterday').log cp $log_path $save_path && echo > $log_path
設定定時任務
crontab -e #輸入 0 0 * * * /usr/bin/sh cut_logs.sh #每天的00:00執行日誌切分 crontab -l #檢視定時任務是否新增成功