ログと指標

このページでは、Secure Web Proxy がオペレーションに関するさまざまな種類の情報をログに記録する方法と、Cloud Monitoring API 指標を使用してプロキシのパフォーマンスを分析する方法について説明します。

ログ

Secure Web Proxy は Cloud Logging を使用して、次の主要な領域で情報をキャプチャし、さまざまなタスクを実行できるようにします。

  • モニタリングとコンプライアンス

    • 規制の遵守を徹底し、ネットワーク セキュリティを強化し、許可された外部宛先に送信されるアウトバウンド ウェブ トラフィックの可視性を提供します。
    • ワークロード トラフィックに対する制御と可視性の貴重なレイヤを取得します。
    • 効果的なセキュリティ オペレーション センター(SOC)のモニタリングに不可欠な分析情報を取得します。
    • ログを使用してセキュリティ イベントを検出して追跡し、脅威に予防的に対応します。
  • デプロイメントと構成

    • 初期インフラストラクチャの設定、ユーザー アカウントの作成、構成の変更を追跡します。
    • 潜在的なエラーをモニタリングして、スムーズで安全なデプロイを確保します。
    • ポリシー調整による影響を把握し、保護を最適化します。

ログの種類

Secure Web Proxy は、Logging を使用して次のタイプのログをキャプチャして保存します。

  • Cloud Audit Logs: Secure Web Proxy リソースに対する管理上の変更とデータアクセスをキャプチャします。これらのログには次のものが含まれます。

  • プロキシ トランザクション ログ: Secure Web Proxy が処理する特定のウェブ リクエストに関する詳細をキャプチャします。これらのログは、Secure Web Proxy インスタンスのトラフィック フロー、ポリシーの適用、パフォーマンスに関する分析情報を提供します。

ログアラートを構成する

トラフィックの拒否や特定ルールの照合など、Secure Web Proxy が Logging に書き込むイベントに対するアラートを構成できます。これらのアラートの設定方法に関する一般的な手順については、ログベースのアラートを構成するをご覧ください。

Secure Web Proxy のログベースのアラートを構成するために使用できるクエリの例を次に示します。

Secure Web Proxy ポリシーによって拒否されたトラフィックのアラート

次のクエリを使用して、Secure Web Proxy ポリシーがリクエストを拒否したときにアラートをトリガーします。

logName="projects/PROJECT_ID/logs/networkservices.googleapis.com%2Fgateway_requests"
resource.type="networkservices.googleapis.com/Gateway"
jsonPayload.enforcedGatewaySecurityPolicy.matchedRules.action="DENIED"

PROJECT_ID は、ターゲットGoogle Cloud プロジェクトの ID に置き換えます。

Secure Web Proxy ルールによって拒否されたトラフィックに関するアラート

次のクエリを使用して、特定の Secure Web Proxy ルール(my-specific-deny-rule など)がリクエストを拒否したときにアラートをトリガーします。

logName="projects/PROJECT_ID/logs/networkservices.googleapis.com%2Fgateway_requests"
resource.type="networkservices.googleapis.com/Gateway"
jsonPayload.enforcedGatewaySecurityPolicy.matchedRules.action="DENIED"
AND jsonPayload.enforcedGatewaySecurityPolicy.matchedRules.name=~"projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/my-specific-deny-rule$"

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

  • PROJECT_ID: ターゲット Google Cloud プロジェクトの ID
  • REGION: Secure Web Proxy インスタンスのリージョン
  • POLICY_NAME: Secure Web Proxy ポリシーの名前

レイテンシの高いリクエストに関するアラート

次のクエリを使用して、リクエストが特定のレイテンシ(5 秒など)を超えたときに通知を受け取ります。

logName="projects/'PROJECT_ID'/logs/networkservices.googleapis.com%2Fgateway_requests"
resource.type="networkservices.googleapis.com/Gateway"
latency >= "5s"

PROJECT_ID は、ターゲットGoogle Cloud プロジェクトの ID に置き換えます。

Cloud Logging でログを確認する

  1. Google Cloud コンソールで、[ログ エクスプローラ] ページに移動します。

    [ログ エクスプローラ] に移動

  2. Google Cloud プロジェクトを選択します。

  3. プルダウン メニューを使用して、networkservices.googleapis.com/Gateway リソースまたは Secure Web Proxy インスタンスを選択します。

詳細については、ログ エクスプローラの使用をご覧ください。

ログエントリの例

Secure Web Proxy は、リクエストを処理するたびに詳細なログエントリを生成し、アクションと適用されたポリシーを追跡します。次の例は、Secure Web Proxy ログの仕組みを示しています。

許可ログエントリの例

次のログエントリは、Secure Web Proxy インスタンスが www.example.com の HTTPS トラフィックをインターセプトして検査し、宛先ウェブサイトへの続行を許可したことを示しています。ポリシー名とルール名はそれぞれ swp-policyallow-port-443 です。

フィールド
enforcedGatewaySecurityPolicy
{
        "requestWasTlsIntercepted": true,
        "hostname": "www.example.com",
        "matchedRules": [
          {
            "action": "ALLOWED",
            "name": "projects/76537/locations/us-central1/gatewaySecurityPolicies/swp-policy/rules/allow-port-443"
          }
        ]
      }
httpRequest
{
        "requestMethod": "GET",
        "requestUrl": "https://www.example.com/",
        "requestSize": "41",
        "status": 200,
        "responseSize": "1446",
        "userAgent": "curl/7.74.0",
        "remoteIp": "10.128.0.12:35418",
        "serverIp": "93.184.216.34:443",
        "latency": "0.051800s",
        "protocol": "HTTP/2"
      }
resource
{
        "type": "networkservices.googleapis.com/Gateway",
        "labels": {
          "gateway_name": "multi-level-tlds",
          "network_name": "projects/76537/global/networks/default",
          "location": "us-central1",
          "resource_container": "",
          "gateway_type": "SECURE_WEB_GATEWAY"
        }
      }
timestamp "2024-02-15T16:56:19.570534Z"
severity "INFO"
logName "projects/76537/logs/networkservices.googleapis.com%2Fgateway_requests"
receiveTimestamp "2024-02-15T16:56:20.714988329Z"

拒否ログエントリの例

このログエントリは、Secure Web Proxy インスタンスが www.example.com:443 のトラフィックを検査し、Secure Web Proxy ポリシーの default_denied ルールにより HTTPS リクエストを拒否したことを示しています。

フィールド
enforcedGatewaySecurityPolicy
{
        "hostname": "www.example.com:443",
        "matchedRules": [
          {
            "name": "default_denied",
            "action": "DENIED"
          }
        ]
      }
httpRequest
{
        "requestMethod": "CONNECT",
        "requestSize": "122",
        "status": 403,
        "responseSize": "141",
        "userAgent": "curl/7.74.0",
        "remoteIp": "10.128.0.12:36338",
        "latency": "0.000133s",
        "protocol": "HTTP/1.1"
      }
resource
{
        "type": "networkservices.googleapis.com/Gateway",
        "labels": {
          "gateway_type": "SECURE_WEB_GATEWAY",
          "resource_container": "",
          "location": "us-central1",
          "network_name": "projects/gcp-1768/global/networks/default",
          "gateway_name": "high-latency-repro"
        }
      }
timestamp "2024-02-15T16:55:00.089727Z"
severity 「WARNING」
logName "projects/gcp-1768/logs/networkservices.googleapis.com%2Fgateway_requests"
receiveTimestamp "2024-02-15T16:55:04.456901833Z"

指標

Cloud Monitoring API の指標を使用すると、Secure Web Proxy インスタンスのパフォーマンス、健全性、使用状況をモニタリングできます。

モニタリング対象リソース

Secure Web Proxy の指標は、次のモニタリング対象リソースにエクスポートされます。

  • networkservices.googleapis.com/Gateway: Secure Web Proxy ゲートウェイ インスタンスを表します。

次の表に、networkservices.googleapis.com/Gateway で使用可能なリソースを示します。これらのリソースを使用して、モニタリング データをフィルタして集計できます。

ラベル 説明
resource_container Secure Web Proxy ゲートウェイ インスタンスに関連付けられているプロジェクトの ID。
location Google Cloud : ゲートウェイがデプロイされているリージョン。
gateway_id Secure Web Proxy ゲートウェイ インスタンスの一意の名前。
gateway_type ゲートウェイのタイプ。SECURE_WEB_GATEWAY に設定されています。
network_name ゲートウェイに関連付けられている Virtual Private Cloud(VPC)ネットワークの名前。

利用可能な指標

Gateway リソースで使用できる指標は次のとおりです。すべての指標には networkservices.googleapis.com/https/ という接頭辞が付いています。

指標タイプ 表示名 種類、型、単位 説明
networkservices.googleapis.com/https/request_count リクエスト数 DELTAINT641 プロキシで処理されたリクエストの合計数。
networkservices.googleapis.com/https/request_bytes_count リクエスト バイト数 DELTAINT64By リクエストで受信したバイト数の合計。
networkservices.googleapis.com/https/response_bytes_count レスポンス バイト数 DELTAINT64By レスポンスで送信されたバイト数の合計。
networkservices.googleapis.com/https/total_latencies 総レイテンシ DELTADISTms リクエストの最初のバイトが受信されてから、レスポンスの最後のバイトが送信されるまでの時間。
networkservices.googleapis.com/https/backend_latencies バックエンド レイテンシ DELTADISTms リクエストがバックエンドに送信されてから、レスポンスの最初のバイトが受信されるまでの時間。

カスタム ダッシュボードを作成する

Secure Web Proxy インスタンスのパフォーマンスとトラフィックの傾向を可視化するカスタム ダッシュボードを作成するには、次の操作を行います。

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

    ダッシュボードに移動する

  2. [カスタム ダッシュボードを作成] をクリックします。

  3. [ウィジェットを追加] をクリックし、[] グラフ オプションを選択します。

  4. [指標] フィールドで「networkservices.googleapis.com/https/request_count」を検索します。

  5. 複数の Secure Web Proxy インスタンスを構成している場合は、[フィルタ] フィールドで gateway_id でフィルタできます。

  6. [集計] セクションで、[アライメント期間] を 1 minute に設定し、[整列指定子] で rate を選択します。

    これにより、未加工のリクエスト データが 1 秒あたりのリクエスト数に変換され、トラフィックの傾向を時間の経過とともに一貫して確認し、分析しやすくなります。

  7. ウィジェットを保存するには、[適用] をクリックします。

次のステップ