Access Log Valve用來建立記錄檔,格式與標準的web server記錄檔相同。可以使用用日誌分析工具對日誌進行分析,跟蹤頁面點擊次數、使用者會話的活動等。Access Log Valve的很多配置和行為特性與File Logger相同,包括每晚午夜自動切換記錄檔。Access Log Valve可以和任何Catalina容器關聯,記錄該容器處理的所有請求。
例子如下:
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="%{X-Forwarded-For-Pound}i %l %u %t "%r" %s %b %T "%{HTTP_X_UP_CALLING_LINE_ID}i" "%{x-up-calling-line-id}i" "%{User-Agent}i"" resolveHosts="false"/>
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 - 處理請求的時間,以秒為單位
結果舉例如下:
- - - [29/Aug/2005:09:34:48 +0800] "GET /waptest/server?productid=qqportal&actionid=index&user_type=1&station=tencent&mid=12345678908888&mobile_no=13724179457&qazxcdew=1 HTTP/1.1" 404 710 0.015 "-" "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Opera 7.11 [zh-cn]"
- - - [29/Aug/2005:10:27:29 +0800] "OPTIONS / HTTP/1.1" 404 668 0.203 "-" "-" "Microsoft-WebDAV-MiniRedir/5.1.2600"