未分類

tarball 的 apache 設定登錄檔輪替

一般我們在 /var/log 裡會找到一大堆 log 登錄檔, 如, messages messages.1 messages.2 messages.3
  messages.4,messages 是現行的登錄檔, 每當一段時間後, 預設是一個禮拜, messages 會變成 messages.1, 再一週後 messages.1, 變成 messages.2, 以此類推, 最後 messages.4 會刪掉, 因為如果不這樣的話 log 檔案會愈來愈大, 有可能一個檔案就到達了10G都有可能, 所以要做這樣的輪替。

如果您的 apache 是用 tarball 安裝的, log 預設是沒有輪替, 那就要來設定一下, 其實很簡單, 只要寫一個設定檔放在 /etc/logrotate.d 目錄裡就好了, 那 /etc/logrotate.conf 這裡寫的是預設值, 若 /etc/logrotate.d
  裡的檔案沒寫到都以 /etc/logrotate.conf 的設定為主, 以下是 apache 的範例:    

  # vi /etc/logrotate.d/httpd      

  /usr/local/apache/logs/access_log
  /usr/local/apache/logs/error_log {
      missingok
      notifempty
      sharedscripts
      postrotate
          /bin/kill -HUP `cat
  /usr/local/apache/logs/httpd.pid 2>/dev/null` 2> /dev/null ||
  true
      endscript
  }
          

  // 哪個 log 檔要輪替?   
  /usr/local/apache/logs/access_log 跟  /usr/local/apache/logs/error_log  

  // 輪替後要 restart 伺服器要產生新的 access_log 檔, 所以
  /usr/local/apache/logs/httpd.pid 是 apache 的 pid 檔位址。
dd  

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *