溫馨提示×

centos tomcat日志格式說明

小樊
46
2025-10-19 21:29:29
欄目: 智能運維

一、Tomcat日志分類(CentOS環境)
Tomcat的日志主要分為兩類:訪問日志(記錄客戶端請求詳情)和運行日志(記錄服務運行狀態、錯誤信息等)。

1. 訪問日志(Access Log)

訪問日志用于記錄客戶端的HTTP請求信息,如IP地址、請求方法、URI、響應狀態碼等。

  • 配置文件$CATALINA_HOME/conf/server.xmlCATALINA_HOME為Tomcat安裝目錄)。
  • 配置項:通過<Valve>標簽啟用,關鍵屬性說明如下:
    • directory:日志文件存儲路徑(如logs目錄);
    • prefix:日志文件前綴(如localhost_access_log);
    • suffix:日志文件后綴(如.txt);
    • pattern:日志格式模板(決定日志內容的字段);
    • resolveHosts:是否將遠程IP解析為主機名(true為解析,false為直接顯示IP,默認false)。
  • 常見pattern參數(用于自定義日志格式):
    %h:遠程IP地址;%l:遠程邏輯用戶名(始終為-);%u:認證后的遠程用戶(未認證則為-);%t:請求時間(默認格式為dd/MMM/yyyy:HH:mm:ss Z);%r:請求的第一行(包含方法、URI和協議,如GET /index.html HTTP/1.1);%s:響應狀態碼(如200、404);%b:發送的字節數(不包括HTTP頭,0則顯示-);%{Referer}i:請求來源頁面的URL(Referer頭);%{User-Agent}i:客戶端瀏覽器信息(User-Agent頭)。
  • 示例配置server.xml中啟用訪問日志并設置格式):
    <Valve className="org.apache.catalina.valves.AccessLogValve" 
           directory="logs" 
           prefix="localhost_access_log." 
           suffix=".txt" 
           pattern="%h %l %u %t "%r" %s %b %{Referer}i %{User-Agent}i" 
           resolveHosts="false"/>
    
    上述配置會生成類似以下的日志條目:
    192.168.1.100 - - [19/Oct/2025:10:30:00 +0800] "GET /index.html HTTP/1.1" 200 1024 "http://example.com" "Mozilla/5.0 (Windows NT 10.0; Win64; x64)"。

2. 運行日志(Running Log)

運行日志記錄Tomcat服務的啟動、停止、運行時錯誤及應用部署等信息,主要包括以下幾類:

  • catalina.out:綜合日志,包含Tomcat的標準輸出(stdout)和標準錯誤(stderr),記錄服務啟動/停止時間及關鍵事件(如部署應用、端口綁定);
  • localhost.date.log(如localhost.2025-10-19.log):本地主機活動日志,記錄默認虛擬主機的錯誤信息(如Servlet異常、JSP編譯錯誤);
  • manager.date.log(如manager.2025-10-19.log):Tomcat Manager應用的日志,記錄應用部署、卸載等操作;
  • host-manager.date.log(如host-manager.2025-10-19.log):虛擬主機管理應用的日志,記錄虛擬主機的配置變更。
  • 配置文件$CATALINA_HOME/conf/logging.properties(控制日志級別、輸出格式及文件路徑)。
  • 日志級別(從低到高):SEVERE(最高,嚴重錯誤)、WARNING(警告)、INFO(信息,默認級別)、CONFIG(配置信息)、FINE(詳細調試信息)、FINER(更詳細)、FINEST(最低,最詳細)。
  • 示例配置(修改logging.properties中的日志級別):
    # 設置catalina日志級別為FINE(更詳細的調試信息)
    1catalina.org.apache.juli.FileHandler.level = FINE
    # 設置localhost日志級別為INFO(默認)
    2localhost.org.apache.juli.FileHandler.level = INFO
    # 設置日志輸出格式(簡單格式)
    java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
    
    修改后需重啟Tomcat使配置生效:sudo systemctl restart tomcat。

二、日志管理技巧(CentOS環境)

  • 查看實時日志:使用tail -f命令實時查看catalina.out文件的內容(如tail -f $CATALINA_HOME/logs/catalina.out),按Ctrl+C停止。
  • 日志輪轉
    • logrotate工具:通過/etc/logrotate.d/tomcat配置文件實現自動輪轉(如每天生成一個新日志文件,保留7天)。示例配置:
      /usr/local/tomcat/logs/catalina.out {
          daily
          rotate 7
          compress
          missingok
          notifempty
          create 640 tomcat tomcat
          postrotate
              /bin/kill -HUP `cat /var/run/tomcat.pid`
          endscript
      }
      
    • 手動分割:若catalina.out過大,可通過mv命令重命名后重啟Tomcat生成新文件(如mv $CATALINA_HOME/logs/catalina.out $CATALINA_HOME/logs/catalina.bak,然后systemctl restart tomcat)。

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