Tomcat定義日誌
阿新 • • 發佈:2021-08-30
定義日誌格式
[root@node3 ~]# vim /usr/local/apache-tomcat-9.0.52/conf/server.xml .... .... <!-- Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" --> ========================= 定義日誌格式 開始================================ <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".log" pattern="%h %l %u %t "%r" %s %b" /> ========================= 定義日誌格式 結束================================ </Host> </Engine> </Service> </Server> 引數詳解: className:官方說明必須按照預設配置不可更改。 directory:日誌檔案位置。 prefix:日誌檔案字首。 suffix:日誌檔案字尾。 pattern:日誌模式引數,設定引數很豐富,引數說明見下表。 resolveHosts:如果這個值是true的話,tomcat會將這個伺服器IP地址通過DNS轉換為主機名,如果是false,就直接寫伺服器IP地址。 pattern 引數: %a - 遠端IP地址 %A - 本地IP地址 %b - 傳送的位元組數,不包括HTTP頭,如果為0,使用”-” %B - 傳送的位元組數,不包括HTTP頭 %h - 遠端主機名(如果resolveHost=false,遠端的IP地址) %H - 請求協議 %l - 從identd返回的遠端邏輯使用者名稱(總是返回 ‘-‘) %m - 請求的方法(GET,POST,等) %p - 收到請求的本地埠號 %q - 查詢字串(如果存在,以 ‘?’開始) %r - 請求的第一行,包含了請求的方法和URI %s - 響應的狀態碼 %S - 使用者的session ID %t - 日誌和時間,使用通常的Log格式 %u - 認證以後的遠端使用者(如果存在的話,否則為’-‘) %U - 請求的URI路徑 %v - 本地伺服器的名稱 %D - 處理請求的時間,以毫秒為單位 %T - 處理請求的時間,以秒為單位
定義日誌等級和日誌位置目錄
[root@node3 ~]# vim /usr/local/apache-tomcat-9.0.52/conf/logging.properties 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 = 90 1catalina.org.apache.juli.AsyncFileHandler.encoding = UTF-8 ===>字符集 2localhost.org.apache.juli.AsyncFileHandler.level = FINE 2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost. 2localhost.org.apache.juli.AsyncFileHandler.maxDays = 90 2localhost.org.apache.juli.AsyncFileHandler.encoding = UTF-8 3manager.org.apache.juli.AsyncFileHandler.level = FINE 3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 3manager.org.apache.juli.AsyncFileHandler.prefix = manager. 3manager.org.apache.juli.AsyncFileHandler.maxDays = 90 3manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8 4host-manager.org.apache.juli.AsyncFileHandler.level = FINE 4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs 4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager. 4host-manager.org.apache.juli.AsyncFileHandler.maxDays = 90 4host-manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8 java.util.logging.ConsoleHandler.level = FINE java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter java.util.logging.ConsoleHandler.encoding = UTF-8
日誌等級
Log level Description SEVERE:(highest) Captures exception and Error WARNING:Warning messages INFO:Informational message, related to the server activity CONFIG: Configuration message FINE:Detailed activity of the server transaction (similar to debug) FINER:More detailed logs than FINE FINEST:(least) Entire flow of events (similar to trace)