全部產品
Search
文件中心

Server Load Balancer:訪問日誌

更新時間:Jun 05, 2026

在使用CLB的七層負載平衡時,如果您需要進行業務開發測試、故障處理或使用者行為資料分析,您可使用CLB訪問日誌功能。CLB訪問日誌功能結合阿里雲Log Service,可協助您大幅提升日誌資料分析、故障定位處理的效率。

功能簡介

什麼是CLB訪問日誌

CLB訪問日誌功能收集所有發送到CLB的請求詳細資料,包括請求時間、用戶端IP地址、延遲、請求路徑和伺服器響應等。作為公網訪問入口,CLB承載海量訪問請求。您可以通過訪問日誌分析使用者行為、瞭解地區分布、進行問題排查等。

在開啟CLB訪問日誌後,您可以將訪問日誌儲存在Log Service(SLS)的日誌庫(Logstore)中,採集分析訪問日誌。您可以隨時刪除訪問日誌的配置。

CLB訪問日誌功能無需額外付費,您僅需支付Log Service的費用。計費可參考Log Service計費概述

重要
  • 四層監聽(TCP/UDP)不支援訪問日誌功能,訪問日誌僅記錄七層(HTTP/HTTPS)請求資訊。

  • 確保HTTP header的值不包含||,否則可能導致日誌分割錯位。

使用限制

僅CLB的七層負載平衡(HTTP/HTTPS監聽)支援訪問日誌功能。

訪問日誌主要記錄七層請求資訊,故四層監聽(TCP/UDP)不支援開啟訪問日誌。

前提條件

設定訪問日誌

  1. 登入傳統型負載平衡CLB控制台

  2. 在左側導覽列,選擇日誌管理 > 訪問日誌

  3. 在頂部功能表列,選擇CLB執行個體所屬地區。

  4. 如果您是首次使用該功能,需要進行帳號授權。單擊立即授權,在彈出的雲資源訪問授權頁面單擊同意授權

    說明

    該操作只有在首次配置時需要執行。

    如果您使用的是RAM使用者,需要阿里雲帳號進行授權。具體操作,請參見授權RAM使用者(子帳號)使用CLB訪問日誌

  5. 访问日志(7层)頁面,找到目標CLB執行個體,在操作列單擊設定

  6. 日誌設定面板,設定項目Project日誌庫Logstore,然後單擊確定

    • 項目Project專案(Project)是Log Service的資源嵌入式管理單元,用於資源隔離和控制。建議使用不同的Project管理不同的應用、產品或專案中的資料。

    • 日誌庫Logstore日誌庫(Logstore)是Log Service中日誌資料的採集、儲存和查詢單元。建議同個應用中不同類型的日誌建立獨立的Logstore。

      • 選擇現有 Logstore:該功能會預設開啟選中的Logstore的分析儀錶盤,如果該Logstore已配置索引,配置會被覆蓋。

    說明

    確保Project的名稱全域唯一,且Project的地區和Server Load Balancer執行個體的地區相同。

    配置負載平衡訪問日誌後,您可以在Log Service中查詢、檢索以下欄位的日誌資訊。

    欄位

    說明

    body_bytes_sent

    發送給用戶端的http body的位元組數。

    client_ip

    請求用戶端IP地址。

    client_port

    請求用戶端連接埠。

    host

    優先從請求參數中擷取host,如果擷取不到則從host header取值,如果還是擷取不到則以處理請求的後端伺服器IP地址作為host。

    http_host

    請求報文host header的內容。

    http_referer

    負載平衡收到的請求報文中HTTP的referer header的內容。

    http_user_agent

    負載平衡收到的請求報文中http_user_agent header的內容。

    http_x_forwarded_for

    負載平衡收到的請求報文中x-forwarded-for header的內容。

    http_x_real_ip

    負載平衡收到的請求報文中HTTP的x-real-ip的內容。

    read_request_time

    負載平衡讀取請求的時間,單位:毫秒。

    request_length

    請求報文的長度,包括startline、http header和http body。

    request_method

    請求報文的方法。

    request_time

    負載平衡收到第一個請求報文的時間到SLB返回應答之間的間隔時間,單位:秒。

    request_uri

    負載平衡收到的請求報文的URI。

    scheme

    請求的scheme,包括http、https。

    server_protocol

    負載平衡收到的HTTP協議的版本,例如HTTP/1.0或HTTP/1.1。

    slb_vport

    負載平衡的監聽連接埠。

    slbid

    Server Load Balancer執行個體ID。

    ssl_cipher

    建立SSL串連使用的密碼,例如ECDHE-RSA-AES128-GCM-SHA256等。

    ssl_protocol

    建立SSL串連使用的協議,例如TLSv1.2。

    status

    負載平衡應答報文的狀態。

    tcpinfo_rtt

    用戶端TCP連線時間,單位:微秒。

    time

    日誌記錄時間。

    upstream_addr

    後端伺服器的IP地址和連接埠。

    upstream_response_time

    從與後端建立串連開始到接受完資料然後關閉串連為止的時間,單位:秒。

    upstream_status

    負載平衡收到的後端伺服器的響應狀態代碼。

    vip_addr

    虛擬IP地址。

    write_response_time

    負載平衡寫的回應時間,單位:毫秒。

查詢訪問日誌

訪問日誌配置完成後,您可以通過Log Service控制台查詢日誌。

  1. 登入傳統型負載平衡CLB控制台

  2. 在左側導覽列,選擇日誌管理 > 訪問日誌

  3. 在頂部功能表列,選擇CLB執行個體所屬地區。

  4. 访问日志(7层)頁面,在目標執行個體操作列單擊查看日誌,跳轉到Log Service頁面。

  5. Log Service配置完成後,如有用戶端訪問過CLB執行個體可查看到對應的日誌資訊。

  6. 輸入SQL語句查詢特定的訪問日誌。

    例如,輸入如下SQL語句查詢Top20的用戶端,用於分析請求訪問來源,輔助商業決策。

    * | select http_user_agent, count(*) as pv group by http_user_agent order by pv desc limit 20

    例如,輸入如下SQL語句按來源IP和響應狀態代碼篩選日誌,用於查詢特定IP段的訪問請求。

    * | select * where client_ip like '172.17.%' and status=200

通過訪問日誌識別異常外部請求

CLB訪問日誌會記錄所有經過Server Load Balancer執行個體的外部請求。當您在日誌中發現不明來源的請求時,可以通過以下關鍵字段判斷請求是否為異常外部存取,並採取相應的防護措施。

識別異常請求的關鍵字段

您可以結合以下日誌欄位綜合判斷請求是否來自異常外部客戶端:

  • client_ip:請求用戶端的IP地址。如果該IP不屬於您的業務系統或阿里雲內網IP段,則說明該請求來自外部客戶端。您可以通過IP歸屬地查詢工具進一步確認來源。

  • request_uri:請求的URI路徑。如果出現與您業務無關的路徑(例如掃描探測類路徑、其他雲端服務的API路徑等),通常表明該請求為異常外部存取。

  • request_method:請求的HTTP方法。如果您的業務僅使用GET請求,但日誌中出現大量PUT、DELETE等方法的請求,需要關注是否為異常行為。

  • http_user_agent:請求的User-Agent標識。自動化工具或爬蟲通常使用特定的User-Agent(例如curlpython-requests等),與正常瀏覽器訪問不同。

例如,您可以在Log Service中使用以下SQL語句查詢來自非預期IP的異常請求:

* | select client_ip, request_method, request_uri, count(*) as cnt group by client_ip, request_method, request_uri order by cnt desc limit 50

限制異常來源IP

確認異常請求的來源IP後,您可以通過CLB的存取控制功能配置黑名單,阻止這些IP的後續訪問。具體操作步驟如下:

  1. 在CLB控制台左側導覽列,選擇存取控制

  2. 建立存取控制策略組,將從日誌中識別出的異常來源IP添加到策略組中。

  3. 在CLB執行個體的監聽配置中,將該策略組綁定為黑名單。綁定後,來自黑名單中IP的請求將被CLB直接拒絕,不再轉寄到後端伺服器。

分析訪問日誌

您可以通過Log Service的儀錶盤分析訪問日誌,儀錶盤提供更豐富的資料資訊。

  1. 在上述Log Service頁面,在左側導覽列選擇image.png,然後單擊儀錶盤列表

  2. 單擊CLB對應訪問日誌的名稱slb_layer7_access_center_en,查看分析報表。

關閉訪問日誌

您可以通過關閉訪問日誌,不再收集CLB的訪問日誌。

說明

CLB執行個體關閉日誌記錄後,對應的日誌Project和Logstore不會被刪除,該執行個體的歷史日誌資訊也不會立即刪除,您仍可以在SLS中管理歷史日誌。

  1. 登入傳統型負載平衡CLB控制台

  2. 在左側導覽列,選擇日誌管理 > 訪問日誌

  3. 在頂部功能表列,選擇CLB執行個體所屬地區。

  4. 访问日志(7层)頁面,找到目標執行個體,然後在目標執行個體操作列單擊關閉日志記錄

  5. 在彈出的對話方塊中,單擊確定,關閉該執行個體的訪問日誌。

相關文檔