CentOS 7 Logrotate Redis Log 定期歸檔 - IT 484

CentOS 7 Logrotate Redis Log 定期歸檔 – IT 484

日誌檔案增長不斷地累積,所佔空間越來越大,最終導致磁碟空間不足,發出告警訊息,使用工具,定期打包壓縮檔案。

在此之前,可以先暫時手動清空檔案,不過經過一段時間後,又會成長到一定程度,雖然這不是很好的方法,不過可以嘗試採用下面這個指令。

cat /dev/null > /var/log/redis/redis.log

echo '' > /var/log/redis/redis.log

功能簡介

是一個 Centos 系統日誌的管理工具,可以對特定檔案或者指定目錄下的檔案按時間,大小進行切割,壓縮操作指定日誌保存數量。

CentOS 7 Logrotate Redis Log

查看 Redis log

查看日誌所在目錄

vim /etc/redis.conf
logfile /var/log/redis/redis.log

設定 Redis Logrotate Config

新增檔案。

  1. daily # 每日為單位
  2.  rotate 30 # 保留 30 天
  3.  copytruncate # 先複製再清空
  4.  delaycompress # 延後壓縮
  5.  compress # 壓縮日誌,預設 gzip 格式
  6.  notifempty # 忽略空檔
  7.  missingok # 略過不存在檔案

編輯 Redis Log Rotate

vim /etc/logrotate.d/redis
/var/log/redis/*.log {
    daily
    rotate 30
    copytruncate
    delaycompress
    compress
    notifempty
    missingok
}

執行 Redis Log File Rotation​

執行指令後,會立即產生壓縮檔案

logrotate -f /etc/logrotate.d/redis

狀態驗證

Centos Rotate 查看所產生出來的檔案.

ll /var/log/redis/

-rw-r–r– 1 root root    0 Jan 24 16:02 redis.log
-rw-r–r– 1 root root 1640 Jan 24 16:02 redis.log.1

重啟服務

當新增或有修改設定檔時,重新啟動服務

systemctl restart rsyslog

心得分享

使用工具,可以很方便地將日誌檔案,按照自訂規則定期歸檔,而規則該如何設定,可以參考以上範例,視情況各自調整,如此一來磁碟空間就能節省更多空間。

發佈留言