網站服務器(Apache)的日志與監視(1)
發表于:2007-06-13來源:作者:點擊數:
標簽:
默認的Apache日志文件 Apache提供很多檢測和日志工具來追蹤 服務器 的正確運行。默認的Apache配置提供兩個日志文件,放置在安裝目錄下的日志目錄里面。access_log這個文件(在 windows 下對應access.log文件)包含了服務器已經處理過的請求的信息,比如說請
默認的Apache日志文件
Apache提供很多檢測和日志工具來追蹤服務器的正確運行。默認的Apache配置提供兩個日志文件,放置在安裝目錄下的日志目錄里面。aclearcase/" target="_blank" >ccess_log這個文件(在windows下對應access.log文件)包含了服務器已經處理過的請求的信息,比如說請求的URL,客戶端的IP地址,請求是否被成功完成等。error_log 這個文件(在windows下對應error.log文件)包含了與錯誤情況相關的信息,以及服務器生命周期中不同的大事件。
創建日志格式
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%h %l %u %t \"%r\" %>s %b"
\"%{Referer}i\" \"%{User-agent}i\"" combined
|
LogFormat指令允許你告訴Apache你想要記錄請求的哪些方面。而你仍需附加的指令來告訴Apache在哪里記錄那些信息,這在下一章中將會介紹。下面的例子顯示了兩種最受歡迎的格式的配置:普通日志格式和整合日志格式。當Apache收到一個請求,他將會用相應的請求屬性來替代以%為前綴的每一個域。如果您正在使用普通日志格式,您的日志文件里的每一項輸入看起來都將是這樣的:
192.168.200.4 - someuser [12/Jun/2005:08:33:34
+0500] "GET /example.png HTTP/1.0" 200 1234
|
如果您正在使用整合日志格式,您的日志文件里的每一項輸入看起來則都將是這樣的:
192.168.200.4 - someuser [12/Jun/2005:08:33:34
+0500] "GET /example.png HTTP/1.0" 200 1234
http://www.example.com/index.html "Mozilla/5.0
(Windows; U; Windows NT 5.1; en-US; rv:1.7.7)" |
盡管有附件提供日志格式的詳盡索引,下表描述了一些最為重要的域:
# %h: 客戶端(例如,瀏覽器)向服務器發出連接請求時自己的當時的IP地址或域名(需開啟HostNameLookups)。
# %u: 使用HTTP方式認證用戶時,記錄下的用戶的編號。
# %t: 服務器接受到連接請求的時間。
# %r: 客戶端發出的原始連接請求中的文本信息,包含所使用的HTTP方法。
# %>s: 服務器應答瀏覽器后的返回狀態代碼,200表示請求成功。.
# %b: 服務器應答瀏覽器發出的單個請求的回傳對象的內容大?。ㄗ止潪閱挝唬?,不統計數據包頭部字節。
整合日志格式在普通日志格式的基礎上擴展出了兩個附加的域。定義為:
# %{Referer}i: 連接請求數據包包頭,包含指向當前頁面的文檔關聯信息。
# %{User-agent}i: 用戶代理連接請求數據包包頭,包含客戶瀏覽器的信息。
創建一個自定義日志文件
CustomLog logs/access_log common
TransferLog logs/sample.log |
您可能會想創建Apache自帶以外的新的日志文件。下面的例子將運用CustomLog來創建一個新的日志文件,并保存由一個之前定義好的日志格式,即前一章提到的common,所定義的信息。您還可以用格式本身的定義來替換昵稱。一個附加的,更為簡單的指令是Transferlog,它只接受最后一個LogFormat指令提供的定義。