Server.xml
Tomcat目錄下的conf目錄下找 server..xml文件 找到。
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="access_log." suffix=".txt"
rotatable="true"
pattern="common" resolveHosts="false"
fileDateFormat="yyyy-MM-dd"/>
屬性詳解
Access Log Valve用來創建日志文件,格式與標準的web server日志文件相同??梢允褂糜萌罩痉治龉ぞ邔θ罩具M行分析,跟蹤頁面點擊次數、用戶會話的活動等。Access Log Valve的很多配置和行為特性與File Logger相同,包括每晚午夜自動切換日志文件。Access Log Valve可以和任何Catalina容器關聯,記錄該容器處理的所有請求。
屬性
Access Log Valve支持如下配置屬性:
屬性 描述
className 實現的Java類名。必須被設置成org.apache.catalina.valves.AccessLogValve。
directory 存放日志文件的目錄,可以是相對路徑或者絕對路徑。如果使用相對路徑,是指相對于 $CATALINA_HOME的路徑。如果不指定directory屬性,缺省值是“logs”(相對于 $CATALINA_HOME)
pattern 需要記錄的請求/響應不同信息域的格式布局。如果是“common”或者“combine”,說明選擇標準格式。
prefix 日志文件名的前綴。如果沒有指定,缺省值是“access_log.”。如果不想使用前綴,使用長度為0的字符串。
resolveHosts 將遠端主機的IP地址通過DNS查詢轉換成主機名,設為true。如果為false,忽略DNS查詢,報告遠端的IP地址。
suffix 日志文件名的后綴。如果沒有指定,缺省值是“”。如果不想使用后綴,使用長度為0的字符串。
rotatable 缺省值為true,用來決定日志是否翻轉的標志。如果為false,日志文件永遠不翻轉,并且忽略fileDataFormat。要謹慎使用。
condition 打開條件日志。如果設置了這個屬性,只有在ServletRequest.getAttribute()是null的時候,才會為請求創建日志。比如,如果condition設為junk,則只有在Servlet.getAttribute("junk")==null的時候,才會記錄這個請求。使用過濾器,可以很容易設置(或者取消設置)不同請求的屬性。
fileDateFormat 允許在日志文件名稱中使用定制的日期格式。日志的格式也決定了日志文件翻轉的頻率。如果想每個小時翻轉一次,將這個值設為yyyy-MM-dd.HH
pattern屬性值由字符串常量和pattern標識符加上前綴"%"組合而成。pattern標識符加上前綴"%",用來代替當前請求/響應中的對應的變量值。目前支持如下的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 - 處理請求的時間,以秒為單位
Access Log Valve還可以記錄cookie,消息頭,Session或者ServletRequest中的信息。使用與apache類似的語法:
· %{xxx}i消息頭
· %{xxx}c特定的cookie
· %{xxx}r xxx 是ServletRequest中的某個屬性
· %{xxx}s xxx 是HttpSession中的某個屬性
上面提到"common"模式(也是缺省的模式)實際上是"%h %l %u %t %r %s %b"的一種簡單表示方法
"common"模式后面加上"Referer"和用戶代理頭(User-Agent headers)的信息,就是前面提到的"combined"模式。
"combined"模式比"common"記錄更詳細。
Tomcat 沒有可以設置日志大小的地方,但是再Tomcat(5.5)最新的版本的conf目錄下有個logging.properties,可以配置日志參數,刪除不需要的日志,或者自己調整記錄級別。
Tomcat-users.xml設置
定義用戶名和用戶所屬的角色,再安全性訪問中起作用,如Basic,Form等加密方式
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/WEB_CEO_INFO/archive/2007/09/07/1775895.aspx