すべてのプロダクト
Search
ドキュメントセンター

Server Load Balancer:CLBアクセスログの設定

最終更新日:Nov 14, 2024

このトピックでは、Classic Load Balancer (CLB) インスタンスのアクセスログを設定する方法について説明します。 CLBレイヤー7リスナーを使用する場合、アクセスログデータを使用して、エラーのデバッグ、問題の特定、ユーザーの動作の分析を行うことができます。 CLBはSimple Log Serviceと連携しており、CLBのアクセスログを記録および保存して、ログデータを効率的に分析してエラーを特定できるようにします。

制限事項

HTTPおよびHTTPSリスナーを含むレイヤー7 CLBリスナーのみがアクセスログをサポートしています。

前提条件

  • CLBインスタンスが作成されます。 詳細については、「CLBインスタンスの作成と管理」をご参照ください。

  • vServerグループが作成されます。 詳細については、「vServerグループの作成と管理」をご参照ください。 バックエンドサーバーがvServerグループに追加され、アプリケーションがバックエンドサーバーにデプロイされます。

  • CLBインスタンス用にHTTPまたはHTTPSリスナーが作成されます。 詳細については、「HTTPリスナーの追加」および「HTTPSリスナーの追加」をご参照ください。

  • Simple Log Serviceが有効化されています。 詳細については、「Simple Log Serviceの有効化」をご参照ください。

アクセスログの設定

  1. CLBコンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[ログ] > [アクセスログ] を選択します。

  3. 上部のナビゲーションバーで、CLBインスタンスがデプロイされているリージョンを選択します。

  4. アクセスログ機能を初めて使用するときは、アカウントに必要な権限を付与する必要があります。 [今すぐ権限を付与] をクリックします。 [クラウドリソースアクセス権限付与] ページで、[権限付与ポリシーの確認] をクリックします。

    説明

    承認は1回だけ実行する必要があります。

    RAM (Resource Access Management) ユーザーを使用する場合は、Alibaba Cloudアカウントから権限を取得する必要があります。 詳細については、「RAMユーザーにアクセスログ機能の使用許可」をご参照ください。

  5. [アクセスログ (レイヤー7)] ページで、管理するCLBインスタンスを見つけ、[操作] 列の [設定] をクリックします。

  6. [ログ設定] パネルで、[プロジェクト] および [ログストア] パラメーターを設定し、[OK] をクリックします。

    • Project: Simple Log Serviceでリソースを分離および管理するために使用されます。

    • Logstore: Simple log Serviceでログデータを収集、保存、クエリするために使用されます。

    説明

    プロジェクトの名前が一意であり、プロジェクトのリージョンがCLBインスタンスのリージョンと同じであることを確認してください。

    アクセスログを有効にすると、次の表に示すフィールドを使用してログデータを照会および検索できます。

    項目

    説明

    body_bytes_sent

    HTTPレスポンスボディのサイズ。 単位はバイトです。

    client_ip

    クライアント側の IP アドレス。

    client_port

    リクエストを送信するクライアントのポート番号。

    host

    デフォルトでは、値はリクエストパラメータから取得されます。 リクエストパラメーターでホストが指定されていない場合、システムはhostヘッダーから値を取得します。 この値をリクエストパラメーターまたはHostヘッダーから取得できない場合は、バックエンドサーバーのIPアドレスが使用されます。

    http_host

    HTTPリクエストのHostヘッダー。

    http_referer

    CLBが受信したHTTPリクエストのRefererヘッダー。

    http_user_agent

    HTTPリクエストのHttp_User_Agentヘッダー。

    http_x_forwarded_for

    HTTPリクエストのX-Forwarded-Forヘッダー。

    http_x_real_ip

    実際のクライアントIPアドレス。

    read_request_time

    CLBがリクエストを処理するのにかかる時間。 単位:ミリ秒。

    request_length

    開始行、リクエストヘッダー、およびリクエスト本文を含む、リクエストの長さ。

    request_method

    リクエスト方式。

    request_time

    CLBが最初のリクエストを受信してからCLBがレスポンスを返すまでの時間。 単位は秒です。

    request_uri

    CLBが受信したリクエストのURI。

    scheme

    リクエストのスキーム。 有効な値: HTTPおよびHTTPS。

    server_protocol

    CLBが受信するHTTPプロトコルのバージョン。 (例: HTTP/1.0 または HTTP/1.1)

    slb_vport

    CLBインスタンスのリスナーポート。

    slbid

    CLBインスタンスのID。

    ssl_cipher

    SSL接続を確立するために使用される暗号スイート。 例: ECDHE-RSA-AES128-GCM-SHA256。

    ssl_protocol

    SSL接続を確立するために使用されるプロトコル (TLS 1.2など) 。

    status

    CLBによって返されるレスポンスのステータス。

    tcpinfo_rtt

    TCP接続を確立するのにかかる時間。 単位:ミリ秒。

    time

    ログエントリが作成された時間。

    upstream_addr

    バックエンドサーバーの IP アドレスおよびポート

    upstream_response_time

    接続が確立されてから接続が閉じられるまでの時間。 単位は秒です。

    upstream_status

    バックエンドサーバーからCLBに送信されるHTTPステータスコード。

    vip_addr

    仮想IPアドレス。

    write_response_time

    書き込み要求に応答するのにかかる時間。 単位:ミリ秒。

アクセスログデータの照会

アクセスログ機能を有効にすると、CLBコンソールまたはlog Serviceコンソールでアクセスログデータを照会できます。

  1. CLBコンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[ログ] > [アクセスログ] を選択します。

  3. 上部のナビゲーションバーで、CLBインスタンスがデプロイされているリージョンを選択します。

  4. [アクセスログ (レイヤー7)] ページで、管理するCLBインスタンスを見つけ、[操作] 列の [ログの表示] をクリックします。

  5. クライアントがCLBにアクセスすると、ログエントリが生成されます。 Simple log Serviceでログデータを表示できます。

  6. 指定したログデータを照会するSQL文を入力します。

    たとえば、次のSQL文を入力して、上位20の最もアクティブなクライアントを照会できます。 リクエストソースを分析し、情報に基づいたビジネス上の意思決定を行うことができます。

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

アクセスログデータの分析

Simple Log Serviceダッシュボードには、ログデータが複数のディメンションで表示されます。 ダッシュボードを使用して、アクセスログデータを分析できます。

  1. CLBインスタンスが使用するプロジェクトのページで、左側のナビゲーションウィンドウのimage.pngアイコンの上にポインターを移動し、[ダッシュボード] をクリックします。

  2. などのアクセスログの名前をクリックします。

    slb_layer7_access_center_enを使用して、ログデータを表示します。

アクセスログの無効化

CLBインスタンスのアクセスデータを収集する必要がなくなった場合は、アクセスログを無効にできます。

説明

CLBインスタンスのアクセスログを無効にしても、ログプロジェクトとLogstore、および履歴ログは削除されません。 Simple Log Serviceのデータに引き続きアクセスできます。

  1. CLBコンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[ログ] > [アクセスログ] を選択します。

  3. 上部のナビゲーションバーで、CLBインスタンスがデプロイされているリージョンを選択します。

  4. [アクセスログ (レイヤー7)] ページで、管理するインスタンスを見つけ、[操作] 列の [ログの無効化] をクリックします。

  5. 表示されたメッセージボックスで、[OK] をクリックします。

関連ドキュメント

  • Simple Log Serviceの詳細については、Simple Log Serviceとはをご参照ください。

  • CLBアクセスログの詳細については、「CLBアクセスログの概要」をご参照ください。

  • CLBレイヤー7リスナーを使用し、バックエンドサーバーのエラーをトラブルシューティングする場合は、アクセスログデータを分析してエラーを特定できます。 CLBはSimple Log Serviceと連携しており、CLBのアクセスログを記録および保存して、ログデータを効率的に分析してエラーを特定できるようにします。 詳細については、「CLBアクセスログを使用して異常なバックエンドサーバーを特定する」をご参照ください。