全部產品
Search
文件中心

Simple Log Service:分析IIS日誌

更新時間:Jul 17, 2024

Log Service支援採集IIS日誌,並進行多維度分析。本文通過PV、UV、訪問地區分布、錯誤請求、要求方法等維度分析IIS日誌,以評估網站訪問情況。

前提條件

已採集IIS日誌。具體操作,請參見使用IIS配置模式採集日誌

說明

在採集過程中,Log Service已根據日誌內容自動產生索引。如果您要修改索引,請參見建立索引

背景資訊

IIS是一款主流的網站伺服器,具備簡單易用、安全效能高等優勢。當您選用IIS搭建網站時,IIS日誌是營運網站的重要訊息。

Log Service推薦選用W3C日誌格式,W3C配置格式如下所示:

logExtFileFlags="Date, Time, ClientIP, UserName, SiteName, ComputerName, ServerIP, Method, UriStem, UriQuery, HttpStatus, Win32Status, BytesSent, BytesRecv, TimeTaken, ServerPort, UserAgent, Cookie, Referer, ProtocolVersion, Host, HttpSubStatus"

IIS日誌範例如下所示:

#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2020-09-08 09:30:26
#Fields: date time s-sitename s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken
2009-11-26 06:14:21 W3SVC692644773 125.67.67.* GET /index.html - 80 - 10.10.10.10 Baiduspider+(+http://www.example.com)200 0 64 185173 296 0
  • 欄位首碼說明

    首碼

    說明

    s-

    伺服器操作

    c-

    用戶端操作

    cs-

    用戶端到伺服器的操作

    sc-

    伺服器到用戶端的操作

  • 各個欄位說明

    欄位

    說明

    date

    用戶端發送請求的日期。

    time

    用戶端發送請求的時間。

    s-sitename

    用戶端所訪問的網站的Internet服務和執行個體的號碼。

    s-computername

    組建記錄檔的伺服器名稱。

    s-ip

    組建記錄檔的伺服器的IP地址。

    cs-method

    請求​方法,例如:GET、POST。

    cs-uri-stem

    ​URI資源,表示請求訪問的地址。

    cs-uri-query

    URI查詢,表示查詢HTTP請求中半形問號(?)後的資訊。

    s-port

    伺服器連接埠號碼。

    cs-username

    通過驗證的域或使用者名稱。

    • 如果是通過身分識別驗證的使用者,格式為域\使用者名稱

    • 如果是匿名使用者,顯示短劃線(-)。

    c-ip

    訪問伺服器的用戶端真實IP地址。

    cs-version

    協議版本,例如:HTTP 1.0、HTTP 1.1。

    cs(User-Agent)

    用戶端使用的瀏覽器。

    Cookie

    發送或接受的Cookie內容,如果沒有Cookie,則顯示短劃線(-)。

    referer

    表示使用者訪問的前一個網站。

    cs-host

    主機資訊。

    sc-status

    ​HTTP協議返回狀態。

    sc-substatus

    HTTP子協議的狀態。

    sc-win32-status

    ​使用Windows術語表示的操作狀態。

    sc-bytes

    ​伺服器發送的位元組數。

    cs-bytes

    ​伺服器接收的位元組數。

    time-taken

    ​請求所花費的時間,單位:毫秒。

操作步驟

  1. 登入Log Service控制台

  2. 在Project列表地區,單擊目標Project。

    image

  3. 在控制台左側,單擊日誌儲存,在日誌庫列表中單擊目標Logstore。

    image

  4. 輸入查詢和分析語句,然後單擊最近15分鐘,設定查詢和分析的時間範圍。

    更多資訊,請參見步驟一:輸入查詢和分析語句

    • 通過IP地址分析訪問地區。

      *| select ip_to_geo("c-ip") as country, count(1) as c group by ip_to_geo("c-ip") limit 100
    • 統計PV和UV。

      *| select approx_distinct("c-ip") as uv ,count(1) as pv , date_format(date_trunc('hour', __time__), '%m-%d %H:%i') as time group by date_format(date_trunc('hour', __time__), '%m-%d %H:%i') order by time limit 1000

      pv/uv統計

    • 統計HTTP請求狀態代碼的佔比。

      *| select count(1) as pv ,"sc-status" group by "sc-status"

      請求狀態佔比

    • 統計流量的流入和流出情況。

      *| select sum("sc-bytes") as net_out, sum("cs-bytes") as net_in ,date_format(date_trunc('hour', time), '%m-%d %H:%i') as time group by date_format(date_trunc('hour', time), '%m-%d %H:%i') order by time limit 10000

      出入流量統計

    • 統計各種要求方法的佔比。

      *| select count(1) as pv ,"cs-method" group by "cs-method"

      要求方法佔比

    • 統計各種瀏覽器的佔比。

      *| select count(1) as pv, case when "user-agent" like '%Chrome%' then 'Chrome' when "user-agent" like '%Firefox%' then 'Firefox' when "user-agent" like '%Safari%' then 'Safari' else 'unKnown' end as "user-agent" group by case when "user-agent" like '%Chrome%' then 'Chrome' when "user-agent" like '%Firefox%' then 'Firefox' when "user-agent" like '%Safari%' then 'Safari' else 'unKnown' end order by pv desc limit 10

      請求UA佔比

    • 統計訪問數量前十的地址。

      *| select count(1) as pv, split_part("cs-uri-stem",'?',1) as path group by split_part("cs-uri-stem",'?',1) order by pv desc limit 10

      訪問前十地址