Cloud Load Balancing コールアウトのロギングとモニタリング

このページでは、Cloud Load Balancing の Service Extensions コールアウトで Cloud LoggingCloud Monitoring を構成して使用する方法について説明します。

ロギング

このセクションでは、アプリケーション ロードバランサのコールアウトのロギングについて説明します。

バックエンド サービスでロギングを有効にする

アプリケーション ロードバランサのコールアウトのロギングを有効にするには、リクエストのターゲットであるバックエンド サービスでロギングを有効にします(拡張機能に関連付けられているバックエンド サービスではありません)。

ターゲット バックエンド サービスのロギングを有効にするには、gcloud compute backend-services update コマンドを使用します。

gcloud compute backend-services update BACKEND_SERVICE \
    --enable-logging \
    --logging-sample-rate=RATE \
    --region=REGION \
    --logging-optional=LOGGING_OPTIONAL_MODE \
    --logging-optional-fields=OPTIONAL_FIELDS

次のように置き換えます。

  • BACKEND_SERVICE: バックエンド サービスの名前。
  • RATE: 0.0 から 1.0 までの値。0.0 はリクエストがログに記録されていないことを意味し、1.0 はリクエストの 100% がログに記録されることを意味します。デフォルト値は 1.0 です。この設定は、enable-logging パラメータと組み合わせて使用する場合にのみ有効です。enable-logging を省略すると、ロギングは無効になります。
  • REGION: バックエンドのリージョン
  • LOGGING_OPTIONAL_MODE: 次のいずれかのモードでオプション フィールドのロギングを有効にします。

    • INCLUDE_ALL_OPTIONAL には、すべてのオプション フィールドが含まれます。
    • EXCLUDE_ALL_OPTIONAL(デフォルト): すべてのオプション フィールドを除外します。
    • CUSTOM には、オプション フィールドのカスタムリストが含まれます。
  • OPTIONAL_FIELDS: CUSTOM モードを選択した場合のオプション フィールドのカンマ区切りのリスト

バックエンド サービスでロギングを有効にすると、Cloud Logging が HTTP または HTTPS リクエストをログに記録します。

ログを表示するには、 Google Cloud コンソールで [ログ エクスプローラ] ページに移動します。

詳細については、アプリケーション ロードバランサのドキュメントの「モニタリングとトラブルシューティング」のページ(内部アプリケーション ロードバランサのロギングとモニタリングなど)をご覧ください。

バックエンド サービスのメッセージをログに記録する

一般に、アプリケーション ロードバランサのログエントリには、HTTP または HTTPS トラフィックのモニタリングとデバッグに役立つ情報が含まれています。ログエントリには次のタイプの情報が含まれています。

  • 重大度、プロジェクト ID、プロジェクト番号、タイムスタンプなど、ほとんどの Google Cloud ログに表示される情報(LogEntry ログの説明を参照)。
  • HttpRequest ログフィールド。

HTTP ロードバランサと HTTPS ロードバランサのリクエストログには、次の情報を含むロードバランサ ログエントリ JSON ペイロードの service_extension_info オブジェクトが含まれています。

フィールド タイプ 説明
backend_target_name 文字列 拡張機能のバックエンド ターゲットの名前。
backend_target_type 文字列 バックエンド ターゲットのタイプ。
chain 文字列 リクエストと一致するサービス拡張機能リソース内の拡張機能チェーンの名前。
extension 文字列 拡張機能チェーン内の拡張機能の名前。
grpc_status enum gRPC ストリームの最新のステータス。詳細については、 gRPC ステータス コードをご覧ください。
per_processing_request_info 配列 gRPC ストリームで発生する ext_proc 拡張機能の ProcessingRequest 統計情報または ext_authz 拡張機能の CheckRequest 統計情報のリスト。
per_processing_request_info[].event_type enum ProcessingRequest のイベントタイプ。REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODY のいずれかになります。
per_processing_request_info[].latency duration ProcessingRequest メッセージの最初のバイトが拡張機能に送信された時点から、ProcessingResponse メッセージの最後のバイトが受信された時点までの時間。
resource 文字列 拡張機能リソースの名前

モニタリング

このセクションでは、Cloud Load Balancing 用にサービス拡張機能を使用して構成されたコールアウトをモニタリングする方法について説明します。

Monitoring ダッシュボードを表示する

アプリケーション ロードバランサは、モニタリング データを Cloud Monitoring にエクスポートします。

Monitoring 指標は、次の目的で使用します。

  • ロードバランサの構成、使用状況、パフォーマンスの評価
  • 問題のトラブルシューティング
  • リソースの使用率とユーザー エクスペリエンスの改善

事前定義されたダッシュボードを表示する手順は次のとおりです。

  1. Google Cloud コンソールで、[ダッシュボードの概要] ページに移動します。

    ダッシュボードの概要に移動

  2. [カテゴリ] セクションで、[GCP] をクリックします。
    • すべてのロードバランサのダッシュボードのリストを表示するには、[GCP ダッシュボード] リストで、[Google Cloud ロードバランサ] というダッシュボードをクリックします。特定のロードバランサのダッシュボードを表示するには、リストでロードバランサを見つけて、その名前をクリックします。
    • ロードバランサ専用の事前定義ダッシュボードを表示するには、適切なダッシュボードを選択します。

Monitoring の事前定義されたダッシュボードに加えて、カスタム ダッシュボードを作成して、アラートをセットアップし、Cloud Monitoring API を使用して指標をクエリできます。

詳細については、アプリケーション ロードバランサのドキュメントの「モニタリングとトラブルシューティング」のページ(内部アプリケーション ロードバランサのロギングとモニタリングなど)をご覧ください。

コールアウトのモニタリング指標

コールアウト バックエンド サービスでは、次の指標をモニタリングできます。

これらの指標には接頭辞 loadbalancing.googleapis.com/ が付いています。表中の項目では、この接頭辞は省略されています。

指標タイプ 表示名
種類、タイプ、単位
説明
https/backend_request_count
https/external/regional/backend_request_count
https/internal/backend_request_count
バックエンド リクエスト数
DELTAINT641
アプリケーション ロードバランサからコールアウト バックエンド サービスが呼び出された回数。
https/backend_request_bytes_count
https/external/regional/backend_request_bytes_count
https/internal/backend_request_bytes_count
バックエンド リクエストのバイト数
DELTAINT64By
ロードバランサからコールアウト バックエンド サービスに送信されたバイト数。
https/backend_response_bytes_count
https/external/regional/backend_response_bytes_count
https/internal/backend_response_bytes_count
バックエンド レスポンスのバイト数
DELTAINT64By
ロードバランサが拡張機能のバックエンドから受信したバイト数。
https/backend_latencies
https/external/regional/backend_latencies
https/internal/backend_latencies
バックエンド レイテンシ
DELTADISTRIBUTIONms
ロードバランサとコールアウト バックエンド サービス間の各拡張機能呼び出しのレイテンシの合計から計算された分布。60 秒ごとにサンプリングされます。

次のステップ