溫馨提示×

Ubuntu Tomcat日志清理技巧有哪些

小樊
51
2025-06-12 19:00:43
欄目: 智能運維

在Ubuntu系統中,清理Tomcat日志可以通過以下幾種方法進行:

  1. 手動清理

    • 查找日志文件:使用命令 find / -type f -name "catalina.out" 來查找Tomcat的日志文件。
    • 清空日志文件:可以使用以下命令清空日志文件內容,而不刪除文件本身:
      echo -n "" > /path/to/tomcat/logs/catalina.out
      
    • 禁止日志文件輸出:編輯Tomcat的 catalina.sh 文件,注釋掉日志輸出的路徑:
      if [ -z "$CATALINA_OUT" ]; then CATALINA_OUT="/dev/null" fi
      
  2. 使用Logrotate進行日志輪轉

    • 安裝Logrotate(如果尚未安裝):
      sudo apt-get install logrotate
      
    • 創建或編輯Logrotate配置文件,例如 /etc/logrotate.d/tomcat
      /usr/local/tomcat/logs/catalina.out {
          daily
          rotate 7
          compress
          missingok
          notifempty
          copytruncate
      }
      
    • 測試配置并設置定時任務:
      sudo logrotate -f /etc/logrotate.d/tomcat
      sudo crontab -e
      
      在crontab文件中添加以下行以每天執行日志輪轉:
      0 0 * * * root /usr/sbin/logrotate /etc/logrotate.d/tomcat
      
  3. 使用腳本自動化清理

    • 創建一個Shell腳本,例如 clean_tomcat_logs.sh
      #!/bin/bash
      LOG_DIR="/path/to/tomcat/logs"
      find "$LOG_DIR" -mtime 30 -name "*.log" -exec rm -rf {} \;
      find "$LOG_DIR" -mtime 30 -name "catalina.*.out" -exec rm -rf {} \;
      
    • 給腳本添加執行權限并配置定時任務:
      chmod +x /path/to/tomcat/logs/clean_tomcat_logs.sh
      crontab -e
      
      在crontab文件中添加以下內容,每天凌晨執行腳本:
      0 0 * * * /path/to/tomcat/logs/clean_tomcat_logs.sh
      
  4. 使用Tomcat本身的日志管理功能

    • 編輯 conf/logging.properties 文件,設置日志文件的最大保留天數:
      handlers = 1catalina.org.apache.juli.AsyncFileHandler, 2localhost.org.apache.juli.AsyncFileHandler, 3manager.org.apache.juli.AsyncFileHandler, 4host-manager.org.apache.juli.AsyncFileHandler
      1catalina.org.apache.juli.AsyncFileHandler.level = FINE
      1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
      1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
      1catalina.org.apache.juli.AsyncFileHandler.maxDays = 7
      

通過以上方法,可以有效地管理Tomcat日志,避免磁盤空間被過多占用。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女