隨著Internet的速度發展,幾乎各個政府部門、公司、大專院校、科研院所等都在打算構建或正在建設自己的網站。在這個過程中,大家會遇到各種各樣的問題。對Web服務器的運行和訪問情況進行詳細和周全地分析,可以及時了解網站運行情況,發現網站存在的不足,促進網站更好地發展,它的重要性是不言而喻的。 對于所有的管理員來說,保證網站穩定正常運行只是一個最基本的工作,管理Web網站不只是監視Web的速度和Web的內容傳送。它不僅要關注服務器每天的吞吐量,還要了解這些Web網站的訪問,了解網站各頁面的訪問情況。根據各頁面的點擊頻率來改善網頁的內容和質量,提高內容的可讀性,以及跟蹤包含有商業交易的步驟及管理Web網站的一些可怕數據等(如入侵行為)。但這一切的一切都要依據WEB日志,所以WEB日志的存放就是一個很重要的內容。
可以為單個網站或 FTP 站點選擇日志格式。如果站點已啟用日志記錄,可以為該站點的單獨目錄禁用或啟用日志。
日志文件格式
可使用下列格式在 Web 服務器上記錄用戶活動:
W3C 擴展日志文件格式
IIS 日志文件格式
NCSA 公用日志文件格式
ODBC 日志記錄
集中的二進制日志記錄
W3C 擴展日志文件格式、IIS 日志文件格式和 NCSA 公用日志文件格式都是 ASCII 文本格式(除非為網站啟用了 UTF-8)。W3C 擴展和 NCSA 公用格式用四位年份的格式來記錄日志數據。IIS 格式對于 1999 年和以前的年份使用兩位年份格式,對于 1999 年以后的年份使用四位年份格式。對于 NCSA 和 IIS 日志文件格式,為每個請求記錄的數據是固定的。但是,W3C 擴展允許您選擇要為每個請求記錄的屬性。
W3C 擴展日志文件格式
W3C 擴展格式是一個包含多個不同屬性、可自定義的 ASCII 格式。可以記錄對您來說重要的屬性,同時通過省略不需要的屬性字段來限制日志文件的大小。屬性以空格分開。時間以 UTC 形式記錄。
以下示例顯示了使用下列屬性的文件語句:時間、客戶端 IP 地址、方法、URI 資源、協議狀態和協議版本。
#Software: Internet Information Services 6.0
#Version: 1.0
#Date: 2001-05-02 17:42:15
#Fields: time c-ip cs-method cs-uri-stem sc-status cs-version
17:42:15 172.16.255.255 GET /default.htm 200 HTTP/1.0
上面所示的項目表明:2001 年 5 月 2 日下午 5:42 (UTC),HTTP 版本為 1.0、IP 地址為 172.16.255.255 的用戶針對 /Default.htm 文件發出了 HTTP GET 命令。該請求正確無誤地返回。#Date: 屬性字段表明了第一個日志項目建立的時間,也就是創建日志的時間。#Version: 屬性字段指出使用的是 W3C 擴展日志記錄格式。
可以選擇任何屬性,但某些屬性可能沒有可用于某些請求的信息。對于那些選中了但其中沒有信息的屬性,連字符 (-) 作為占位符出現在日志文件的屬性字段中。
IIS 日志文件格式
IIS 格式是固定的(不能自定義的) ASCII 格式。IIS 格式比 NCSA 公用格式記錄的信息多。IIS 格式包括一些基本項目,如用戶的 IP 地址、用戶名、請求日期和時間、服務狀態碼和接收的字節數。另外,IIS 格式還包括詳細的項目,如所用時間、發送的字節數、動作(例如,GET 命令執行的下載)和目標文件。這些項目用逗號分開,使得格式比使用空格作為分隔符的其他 ASCII 格式更易于閱讀。時間記錄為本地時間。
當在文本編輯器中打開 IIS 格式的文件時,項目與下面的示例相似:
192.168.114.201, -, 03/20/01, 7:55:20, W3SVC2, SALES1, 172.21.13.45, 4502, 163, 3223, 200, 0, GET, /DeptLogo.gif, -,
172.16.255.255, anonymous, 03/20/01, 23:58:11, MSFTPSVC, SALES1, 172.16.255.255, 60, 275, 0, 0, 0, PASS, /Intro.htm, -,
上面所示的項目將在下面的表中加以說明。每個表的頂行來自第二個網站實例(以 W3SVC2 形式出現在“服務”下面),底行來自第一個 FTP 站點實例(以 MSFTPSVC1 形式出現在“服務”下面)。由于頁寬所限,該示例出現在三個表中。
在上面的示例中,第一個項目表明:2001 年 3 月 20 日上午 7:55,IP 地址為 192.168.114.201 的匿名用戶發出一條 HTTP GET 命令,從 IP 地址為 172.21.13.45、名為 SALES1 的服務器請求圖像文件 /DeptLogo.gif。163 字節的 HTTP 請求有 4502 毫秒(4.5 秒)的處理時間來完成,并將 3223 個字節的數據毫無錯誤地返回給匿名用戶。
在日志文件中,所有屬性字段都以逗號 (,) 結束。如果某個屬性值無效,則連字符 (-) 起占位符的作用。
NCSA 公用日志文件格式
(美國)國家超級計算技術應用中心 (NCSA) 公用格式是一種固定的(不能自定義的)ASCII 格式,可用于網站但不能用于 FTP 站點。NCSA 公用格式記錄了關于用戶請求的基本信息,如遠程主機名、用戶名、日期、時間、請求類型、HTTP 狀態碼和服務器發送的字節數。項目之間用空格分開;時間記錄為本地時間。
當在文本編輯器中打開 NCSA 公用格式文件時,項目與下面的示例相似:
172.21.13.45 - Microsoftfred [08/Apr/2001:17:39:04 -0800] "GET /scripts/iisadmin/ism.dll?http/serv HTTP/1.0" 200 3401
注意 在前面的項目中,第二個屬性字段(顯示用戶的遠程登錄名)是空的,它由 IP 地址 172.21.13.45 后面的連字符表示。
以上示例的項目在下面的表中說明。由于頁寬所限,該示例顯示在兩個表中。
上面的項目表明:Microsoft 域中 IP 地址為 172.21.13.45、名為 Fred 的用戶在 2001 年 4 月 8 日下午 5:39 分發出一條 HTTP GET 命令(即,下載一個文件)。該請求將 3401 個字節的數據正確無誤地返回給名為 Fred 的用戶。
集中的二進制日志記錄
集中的二進制日志記錄是多個網站向單個日志文件中寫入不帶格式的二進制日志數據的過程。每個運行 IIS 的 Web 服務器都為該服務器上的所有站點創建了一個日志文件。集中的二進制日志記錄可節省寶貴的內存資源。根據您的配置,利用集中的二進制日志記錄可以大大提高性能和可伸縮性。
ODBC 日志記錄
ODBC 日志記錄格式是對符合開放式數據庫連接 (ODBC) 的數據庫(Microsoft Access 或 Microsoft SQL Server™)中一組固定的數據屬性的記錄。記錄的某些項目中包含有用戶的 IP 地址、用戶名、請求日期和時間(記錄為本地時間)、HTTP 狀態碼、接收字節、發送字節、執行的操作(例如,GET 命令執行的下載)和目標(例如,下載的文件)。對于 ODBC 日志記錄,必須指定要登錄的數據庫,并且設置數據庫接收數據。
當啟用 ODBC 日志記錄時,IIS 會禁用內核模式緩存。因此,執行 ODBC 日志記錄可能會降低服務器的總體性能。
下面我們來詳細看一下如何將WEB服務器的日志存放到SQL SERVER2005中
將IIS站點日志記錄到數據庫中的方法如下:
1,在目標服務器的SQL里建個數據庫,例如,WEBLOG
3,在IIS服務器上,打開ODBC管理器,建立一個系統DSN,DSN名叫WEBLOG,驅動選擇SQL SERVER,服務器就輸入SQL SERVER服務器的IP地址,驗證,SQL SERVER驗證,輸入用戶名和密碼,數據庫選擇剛建好的WEBLOG數據庫,最后,測試,通過了就OK.
再到SQL SERVER中查看數據表中應該已經有數據了: |