nginx日志定時備份


1、nginx服務必須起着,服務啟動了才會有nginx.pid

2、nginx日志目錄下的簡介

  •  nginx的產生的相關的日志默認是在/usr/local/nginx/logs的目錄里面

注意:日志的開關在Nginx的配置文件nginx.conf文件中設置,產生的日志都是可以選擇性關閉的,但是默認是打開的。

  • access.log:該日志文件是用來記錄客戶在訪問該nginx時產生的每一個請求,格式可以自定義,通過訪問日志就可以得到用戶地域來源跳轉來源,使用終端,某個URL訪問等相關信息。

  • error.og:錯誤日志,主要是記錄客戶端訪問Nginx錯誤時產生的日志,格式不支持自定義,通過錯誤日志。可以得到系統的某個服務或者server的性能瓶頸。因此將錯誤日志好好利用,可以得到很多有價值的信息。

  • nginx.pid:該日志文件主要是用來記錄nginx的master進程的pid,當nginx服務啟動時,會自動在該目錄下生成該進程的pid文件。

 

3、日志及其日志備份

1.日志的自動生成

  • 默認的在每次啟動nginx服務的時候,都會在/usr/local/nginx/los目錄下生成access.log日志,但是在每次對服務reopen重新打開時也會在nginx重新生成access.log日志文件。

驗證如下:

 

 此時我已經編輯了backup.sh、生成了oldlogs,這兩步在下面的操作

 

 

2.實現在每日的凌晨自動備份nginx產生的日志

編寫腳本實現nginx日志的自動備份:

vim backup.sh編輯內容如下:

#!/bin/bash

LOG_PATH=/usr/local/nginx/logs/oldlogs

CUR_LOG_PATH=/usr/local/nginx/logs

YESTERDAY=$(date +%F -d -1day)

mv $CUR_LOG_PATH/access.log $LOG_PATH/${YESTERDAY}_access.log

mv $CUR_LOG_PATH/error.log $LOG_PATH/${YESTERDAY}_error.log

kill -USR1 $( cat /usr/local/nginx/logs/nginx.pid)

 

 

 

 

 

 

 添加定時命令文件實現每天凌晨的nginx服務的自動備份

 

 如果在執行crontab -e后編輯內容如下:

 

編輯完成之后保存退出報錯    no crontab for root - using an empty one

解決辦法可以是crontab -e編輯后強制保存退出就可以了

 

4、每天檢查/usr/local/nginx/logs/oldlogs是否自動備份每日日志

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM