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

Server Load Balancer:ALB のアクセスログ

最終更新日:Dec 13, 2025

Application Load Balancer (ALB) と Simple Log Service (SLS) のアクセスログ機能を利用して、ユーザーの動作分析、地理的分布の把握、問題のトラブルシューティングを行うことができます。

背景情報

ALB は、大量のリクエストを処理するアクセスエントリポイントとして機能し、アクセスログを Simple Log Service に配信できます。これらのアクセスログと Simple Log Service の強力なビッグデータコンピューティング機能を組み合わせることで、ユーザーの動作分析、ユーザーの地理的分布の把握、問題のトラブルシューティングが可能です。ALB のアクセスログ機能には、以下の利点があります。

  • シンプルさ:開発者や運用保守 (O&M) エンジニアを、手間と時間のかかるログ処理から解放します。これにより、ビジネス開発や技術探求に集中できます。

  • 大規模対応:ALB のアクセスログは非常に大規模になる可能性があります。これらのログを処理するには、パフォーマンスとコストを考慮する必要があります。Simple Log Service は、1秒あたり1億件のログを分析でき、自社構築のオープンソースソリューションと比較して、コストとパフォーマンスの面で大きな利点を提供します。

  • リアルタイム処理:DevOps、モニタリング、アラートなどのシナリオでは、リアルタイムのログデータが必要です。Simple Log Service の強力なビッグデータコンピューティング機能により、リアルタイムログを数秒で分析・処理できます。

  • 伸縮性:各 ALB インスタンスのアクセスログ機能を有効または無効にできます。Logstore の容量は、ビジネスの成長に合わせて動的に拡張できます。

課金

ALB は Simple Log Service にログを配信します。Simple Log Service は、ストレージ容量、読み取りトラフィック、リクエスト数、データ変換、データ転送に対して課金します。詳細については、「Simple Log Service の課金」をご参照ください。

前提条件

アクセスログ機能を使用する前に、Simple Log Service を有効化しておく必要があります。詳細については、「Simple Log Service を有効化する」をご参照ください。

アクセスログの作成

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

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

  3. インスタンス ページで、対象インスタンスの ID をクリックします。

  4. インスタンス詳細ページで、アクセスログ タブをクリックし、さらに アクセスログ タブで アクセスログの作成 をクリックします。

  5. アクセスログの作成 ダイアログボックスで、[プロジェクト][Logstore] を設定し、[OK] をクリックします。

    設定

    説明

    プロジェクト

    Simple Log Service におけるリソース管理単位で、リソースの隔離と制御に使用されます。

    • [既存のプロジェクトを選択]:ドロップダウンリストからプロジェクトを選択します。

    • [新規プロジェクトを作成]:テキストボックスに新しいプロジェクトの名前を入力します。

    [Logstore]

    Simple Log Service におけるログデータの収集、ストレージ、クエリの単位です。

    • [既存の Logstore を選択]:ドロップダウンリストから Logstore を選択します。

    • [新規 Logstore を作成]:テキストボックスに新しい Logstore の名前を入力します。新規プロジェクトを作成する場合は、新規 Logstore も作成する必要があります。

    [サービスリンクロールの作成に関する通知]

    この操作を実行すると、システムは自動的にサービスリンクロールを作成し、対応する機能を完了します。

  6. 表示されたダイアログボックスで情報を確認し、[OK] をクリックします。

    • 新規 Logstore を作成した場合、設定完了後、Simple Log Service はデフォルトで Logstore のインデックスを作成し、ダッシュボードを有効にします。

    • 既存の Logstore を選択した場合、設定完了後、Simple Log Service は自動的にダッシュボードを有効にします。Logstore に既にインデックスがある場合、設定は上書きされません。新しいインデックスを追加するには、Simple Log Service コンソールに移動して設定します。

アクセスログの表示

  1. アクセスログ タブで、保存先パス の右側にあるリンクをクリックして Simple Log Service を開き、生ログやその他の情報を表示します。

  2. アクセスログ タブで、モニタリングセンターアクセスセンター、または 詳細モニタリング タブをクリックし、フィルター条件を入力して関連メトリックをクエリします。

    モジュール

    メトリックの説明

    モニタリングセンター

    ALB インスタンスのリアルタイムモニタリングデータを表示します。メトリックには、ページビュー (PV)、リクエスト成功率、平均レイテンシー、4xx リクエスト数、ステータス分布、トラフィック、P50 レイテンシー、P90 レイテンシー、P99 レイテンシー、P9999 レイテンシー、リクエストホスト Top、レイテンシーホスト Top、失敗率ホスト Top、リクエスト URL Top、レイテンシー URL Top、失敗率 URL Top、リクエストバックエンド Top、レイテンシーバックエンド Top、失敗率バックエンド Top が含まれます。

    アクセスセンター

    ALB インスタンスのアクセスステータスデータを表示します。メトリックには、PV (昨日比)、PV (先週比)、UV (昨日比)、UV (先週比)、PV 分布、UV 分布、本日の PV、7日間の PV、アクセス Top 10 (省別)、モバイルクライアント比率、アクセスホスト Top 10、アクセス User-Agent Top 10、アクセス IP Top が含まれます。

    高精度監視

    秒レベルの粒度でモニタリング情報を表示し、一時的なジッターや異常の特定を支援します。メトリックには、QPS、アクセスレイテンシー、アップストリームレイテンシー、成功率、リクエストトラフィック、レスポンスボディトラフィック、2xx ステータスコード、3xx ステータスコード、エラーステータスコード、アップストリーム 2xx ステータスコード、アップストリーム 3xx ステータスコード、アップストリームエラーステータスコードが含まれます。

    • モニタリングセンターアクセスセンター、または 詳細モニタリング タブの右上隅で、その他のグラフ をクリックして [CloudLens for ALB] ページに移動し、より多くの ALB データレポートを表示できます。詳細については、「データレポートの表示」をご参照ください。

    • モニタリングセンターアクセスセンター、または 詳細モニタリング タブの右上隅で、アラートルールの設定 をクリックして [CloudLens for ALB] ページを開き、ALB インスタンスのアラートトランザクションを表示できます。

    • モニタリングセンターアクセスセンター、または 詳細モニタリング タブの右上隅で、さらに多くの機能が利用可能です。

カスタムヘッダーの記録

共通のヘッダーに加えて、`slb_headers` フィールドはリクエスト内の他のヘッダーの名前と値を記録するために使用されます。これにより、より完全なリクエストロギングとログ分析の向上が可能になります。

アクセスログのカスタムヘッダーのデフォルト長は 1 KB です。これは最大 4 KB まで増やすことができます。増加をリクエストするには、アカウントマネージャーにご連絡ください。詳細については、「ALB によって転送されるリクエストの長さ制限はどのくらいですか。制限を変更できますか。」をご参照ください。

  1. アクセスログ タブの 基本情報 エリアで、カスタムヘッダーの記録 をクリックします。

  2. カスタム HTTP ヘッダーのログへの記録 ダイアログボックスで、ドロップダウンリストから ALB インスタンスのリスナーを選択します。

    リスナーを作成するには、ドロップダウンリストから [リスナーの作成] をクリックします。詳細については、「HTTP リスナーと HTTPS リスナー」、「HTTPS リスナーの追加」、および「QUIC リスナーの追加」をご参照ください。

  3. 表示されたダイアログボックスで情報を確認し、[OK] をクリックします。

    設定が完了すると、ログの `slb_headers` フィールドには、以下を除くリクエスト内のすべてのヘッダーの `header_name` と `header_value` が記録されます。

    # 次のヘッダーフィールドはカスタムヘッダーに記録されません。
    host
    referer
    user-agent
    x-forwarded-for
    x-readtime
    x-real-ip
    uber-trace-id
    X-B3-TraceId
    X-B3-SpanId
    X-B3-ParentSpanId
    X-B3-Sampled

ログの削除

  1. アクセスログ タブの 基本情報 エリアで、[ロギングの無効化] をクリックします。

  2. ダイアログボックスで情報を確認し、[OK] をクリックします。

ログフィールドの説明

フィールド

説明

app_lb_id

Server Load Balancer インスタンスの ID。

__topic__

ログトピック。値は `alb_layer7_access_log` に固定されます。

body_bytes_sent

クライアントに送信された HTTP ボディのバイト数。

client_ip

リクエスト元のクライアントの IP アドレス。クライアントの実際の送信元 IP を見つける機能が無効な場合、このフィールドはロードバランサーの前のホップの IP アドレスになります。有効な場合、このフィールドはクライアントの実際の送信元 IP アドレスになります。

host

ドメイン名または IP アドレス。値はまずリクエストパラメーターから取得されます。取得できない場合は、`host` ヘッダーから値が取得されます。それでも取得できない場合は、リクエストを処理するバックエンドサーバーの IP アドレスがホストとして使用されます。

http_host

リクエストメッセージの `host` ヘッダーの内容。

http_referer

ロードバランサーが受信した HTTP リクエストメッセージの `referer` ヘッダーの内容。

http_user_agent

ロードバランサーが受信した HTTP リクエストメッセージの `user-agent` ヘッダーの内容。

http_x_forwarded_for

ロードバランサーが受信した HTTP リクエストメッセージの `x-forwarded-for` ヘッダーの内容。

http_x_real_ip

ロードバランサーが受信した HTTP リクエストメッセージの `x-real-ip` ヘッダーの内容。

read_request_time

ロードバランサーがリクエストを読み取るのにかかった時間 (ミリ秒)。

request_length

開始行、HTTP ヘッダー、HTTP ボディを含むリクエストメッセージの長さ (バイト)。

request_method

リクエストメッセージのメソッド。

request_time

ロードバランサーが最初のリクエストメッセージを受信してからレスポンスを返すまでの時間間隔 (秒)。

request_uri

ロードバランサーが受信したリクエストメッセージの URI。

scheme

リクエストのスキーマ:HTTP または HTTPS。

server_protocol

ロードバランサーが受信した HTTP プロトコルのバージョン (例:HTTP/1.0、HTTP/1.1)。

slb_vport

ロードバランサーのリスナーポート。

slb_xtrace

ロードバランサーの Tracing Analysis のコールチェーンのトレース ID。

xtrace_type

ロードバランサーの Tracing Analysis の Xtrace データのタイプ。現在、Zipkin のみがサポートされています。

ssl_cipher

SSL 接続の確立に使用される暗号スイート (例:ECDHE-RSA-AES128-GCM-SHA256)。

ssl_protocol

SSL 接続の確立に使用されるプロトコル (例:TLSv1.2)。

status

ロードバランサーからのレスポンスメッセージのステータス。

tcpinfo_rtt

クライアントの TCP 接続時間 (マイクロ秒)。

time

ログが記録された時間。時間フォーマットは YYYY-MM-DDThh:mm:ssZ です。

upstream_addr

バックエンドサーバーの IP アドレスとポート。

upstream_response_time

ロードバランサーがバックエンドサーバーへの接続を確立してから、データの受信を完了して接続を閉じるまでの時間 (秒)。

upstream_status

ロードバランサーがバックエンドサーバーから受信したレスポンスステータスコード。

vip_addr

仮想 IP アドレス。

write_response_time

ロードバランサーによって書き込まれた応答時間 (ミリ秒)。

client_port

リクエスト元のクライアントポート。

slb_headers

カスタムヘッダー。この機能を使用するには有効化する必要があります。リクエストのカスタムヘッダーを格納します。

よくある質問

アクセスログを作成する前のアクセスログデータを表示できますか。

いいえ、できません。

表示できるのは、アクセスロギングを有効にした後に収集されたログデータのみです。Simple Log Service は、機能が有効になる前の ALB からのアクセスデータを収集しません。したがって、機能を有効にする前に生成されたログデータを表示することはできません。