マルチキャスト グループ メンバーシップ イベントログを表示する

このページでは、IGMP 参加などのマルチキャスト グループ メンバーシップ イベントのモニタリングに使用できるログについて説明します。また、これらのログを有効にして表示する方法についても説明します。

これらのログを使用すると、マルチキャスト グループのアクティビティ(マルチキャスト コンシューマーが参加した時間、離脱した時間、グループ内のマルチキャスト コンシューマーの数など)を把握できます。

グループ メンバーシップのイベントログについて

Google Cloud は、マルチキャストのグループ メンバーシップ イベントログを Cloud Logging に書き込みます。

次の表に、各リソースタイプで使用できるログの概要を示します。これには、ログを受信するプロジェクトも含まれます。ロギングされるイベントとログ形式の詳細については、次のセクションをご覧ください。

リソース ログの説明
マルチキャスト グループ範囲

グループ範囲のすべてのマルチキャスト コンシューマーのグループ メンバーシップ イベントログ。

これらのログは、マルチキャスト管理者プロジェクトでのみ使用できます。

ロギングは、グローバル マルチキャスト グループ範囲とゾーン マルチキャスト グループ範囲の有効化の両方で構成できます。マルチキャスト グループ範囲のロギングを有効にするをご覧ください。

マルチキャスト グループ コンシューマーの有効化

グループ範囲とゾーンで有効になっている特定のマルチキャスト コンシューマー VPC ネットワーク内のマルチキャスト コンシューマーのグループ メンバーシップ イベントログ。

これらのログは、マルチキャスト コンシューマー リソースを含むプロジェクトで使用できます。マルチキャスト ドメインのトポロジに応じて、マルチキャスト管理者プロジェクトまたは個別のマルチキャスト コンシューマー プロジェクトのいずれかになります。

マルチキャスト グループ コンシューマーの有効化のロギングを有効にするをご覧ください。

記録されるイベント

このセクションでは、Cloud Logging でマルチキャスト用にロギングされるグループ メンバーシップ イベントについて説明します。

マルチキャスト コンシューマーがグループに参加するために IGMP メンバーシップ レポートを送信すると、次のようなログ メッセージが生成されます。

  • IGMP 参加が成功すると、2 つのログ メッセージが生成されます(「IGMP join request received」の後に「IGMP consumer joined」が生成されます)。
  • IGMP 参加が失敗すると、2 つのログメッセージが生成されます(「IGMP join request received」の後に「IGMP join request rejected due to *」が生成されます)。
  • グループにすでに正常に参加しているマルチキャスト コンシューマーの場合、キープアライブ IGMP 参加リクエストは 1 つの IGMP join request received メッセージになります。

ログに記録されるイベントとその説明の完全なリストについては、次の表をご覧ください。

イベント 説明
IGMP join request received

Google Cloud コントロール プレーンが参加リクエストを受信しました。このメッセージは、参加が正常に完了したことを確認するものではありません。

各参加リクエストは、マルチキャスト コンシューマーが IGMP プロトコルの一部として定期的に送信するキープアライブ リクエストを含めて、ログに記録されます。

IGMP consumer joined

Google Cloud コントロール プレーンがマルチキャスト コンシューマーをグループに正常に追加しました。このイベントがドメインのマルチキャスト インフラストラクチャに伝播されると、マルチキャスト コンシューマーはマルチキャスト トラフィックの受信を開始します。

このイベントの前に必ず IGMP join request received イベントが発生します。

IGMP consumer left

Google Cloud コントロール プレーンは、マルチキャスト コンシューマーから明示的な IGMP 離脱リクエストを受信し、リクエストを適用しました。

IGMP consumer timed out

マルチキャスト コンシューマーがキープアライブ リクエストへの応答を停止したため、 Google Cloud コントロール プレーンがマルチキャスト コンシューマーをグループから削除しました。

Consumer removed due to configuration change

コンシューマー エンドポイントが削除されたため、 Google Cloud コントロール プレーンがマルチキャスト コンシューマーをグループから削除しました。たとえば、コンシューマー インスタンスまたはプロジェクトが削除された可能性があります。

IGMP join request rejected due to full tree

Google Cloud コントロール プレーンは参加リクエストを受信しましたが、マルチキャスト グループがすでに最大容量に達しているため、リクエストを拒否しました。

IGMP join request rejected due to missing quota

Google Cloud コントロール プレーンは参加リクエストを受信しましたが、マルチキャスト コンシューマー VPC ネットワークが VPC ネットワークあたりのマルチキャスト コンシューマー VM の割り当てをすべて使用しているため、リクエストを拒否しました。

IGMP join request rejected due to unknown reason

Google Cloud コントロール プレーンは参加リクエストを受信しましたが、特定の理由がない障害のため、リクエストを拒否しました。

IGMP entitlement rejected

Google Cloud コントロール プレーンは参加リクエストを受信しましたが、必要なマルチキャスト コンシューマー構成が完了していないため、リクエストを拒否しました。次のような状況が考えられます。

  • マルチキャスト コンシューマー VPC ネットワークの構成が完了していない。
  • マルチキャスト コンシューマー VPC ネットワーク構成が、ドメインのマルチキャスト インフラストラクチャに伝播されていない。
  • マルチキャスト コンシューマーが IGMP 用に構成されていない。

このイベントは、マルチキャスト グループ コンシューマーの有効化リソースのログでのみ利用できます。

Consumer network activated

マルチキャスト グループ範囲に対してマルチキャスト コンシューマー VPC ネットワークが有効になりました。これは、マルチキャスト グループ コンシューマーの有効化リソースの作成に対応します。

このイベントは、マルチキャスト グループ範囲リソースのログでマルチキャスト管理者のみが利用できます。

Consumer network deactivated

マルチキャスト グループ範囲のマルチキャスト コンシューマー VPC ネットワークが無効になりました。これは、マルチキャスト グループ コンシューマーの有効化リソースが削除されたか、ステータスが OBSOLETE に変更されたことを意味します。

このイベントは、マルチキャスト グループ範囲リソースのログでマルチキャスト管理者のみが利用できます。

マルチキャスト グループ範囲のログ形式

このセクションでは、マルチキャスト ドメインとグループ範囲リソースを含むマルチキャスト管理者プロジェクトで使用可能なグループ メンバーシップ イベントログの形式について説明します。

これらのログは、特定のマルチキャスト グループ範囲のすべてのマルチキャスト コンシューマーのメンバーシップ イベントに対して書き込まれます。マルチキャスト グループ範囲のロギングを有効にするで説明されているように、グローバル マルチキャスト グループ範囲とゾーン マルチキャスト グループ範囲の両方の有効化リソースでロギングを構成できます。

Cloud Logging のモニタリング対象リソースタイプとログ名は次のとおりです。

  • リソースタイプ: networkservices.googleapis.com/MulticastGroupRange
  • ログ名: networkservices.googleapis.com%2Fmulticast_memberships

ログ形式は、記録されるイベントの種類によって異なります。詳しくは、以下の各タブの表をご覧ください。

IGMP イベント

ログに記録されたイベントが IGMP イベントの場合、ログには次のフィールドが含まれます。

フィールド タイプ 説明
consumerIp 文字列 マルチキャスト コンシューマーのプライマリ内部 IPv4 アドレス。例: 10.0.0.1
consumerLocation 文字列 マルチキャスト コンシューマー VPC のゾーン。例: us-east5-a
consumerNetwork リソース マルチキャスト コンシューマー VPC ネットワーク。整数 ID のみが入力されます。例:
      consumerNetwork {
       id: "1234"
      }
      
consumerProject プロジェクト マルチキャスト コンシューマー VPC ネットワークを含むプロジェクト。プロジェクト番号のみが入力されます。例:
      consumerProject {
       number: "5678"
      }
      
consumerResource リソース マルチキャスト コンシューマー VM インスタンス。整数 ID のみが入力されます。例:
      consumerResource {
       id: "1111"
      }
      
consumerResourceProject プロジェクト マルチキャスト コンシューマー VM インスタンスを含むプロジェクト。これは、共有 VPC を使用する場合など、マルチキャスト コンシューマーの VPC ネットワークを含むプロジェクトとは異なる場合があります。プロジェクト番号のみが入力されます。例:
      consumerResourceProject {
       number: "4321"
      }
      
eventDescription 文字列 ログに記録されたイベントに記載されているイベントのいずれか。例: IGMP consumer joined
eventTime 文字列 イベントのタイムスタンプ(RFC 3339 のテキスト形式)。例: 2024-10-21T06:46:42.990162973Z
multicastDomain 文字列 マルチキャスト ドメインの名前。例: my-domain-name
multicastGroupRange 文字列 マルチキャスト グループ範囲の名前。例: my-group-range-name
multicastIp 文字列 マルチキャスト グループの IP アドレス。例: 224.0.0.1

有効化 / 無効化

ログに記録されたイベントがマルチキャスト コンシューマー VPC ネットワークの有効化または無効化の場合、ログには次のフィールドが含まれます。

フィールド タイプ 説明
consumerLocation 文字列 マルチキャスト コンシューマー ネットワークが有効になったゾーン例: us-east5-a
consumerNetwork リソース マルチキャスト コンシューマー VPC ネットワーク。整数 ID のみが入力されます。例:
      consumerNetwork {
       id: "1234"
      }
      
consumerProject プロジェクト マルチキャスト コンシューマー VPC ネットワークを含むプロジェクト。プロジェクト番号のみが入力されます。例:
      consumerProject {
       number: "5678"
      }
      
eventDescription 文字列 ログに記録されたイベントに記載されているイベントのいずれか。例: Consumer network activated
eventTime 文字列 イベントのタイムスタンプ(RFC 3339 のテキスト形式)。例: 2024-10-21T06:46:42.990162973Z
multicastDomain 文字列 マルチキャスト ドメインの名前。例: my-domain-name
multicastGroupRange 文字列 マルチキャスト グループ範囲の名前。例: my-group-range-name

整数 ID は、プロジェクト、ネットワーク、インスタンスなどのマルチキャスト コンシューマーのリソースに使用され、プライバシーが保護されます。

マルチキャスト グループ コンシューマーの有効化のログ形式

このセクションでは、マルチキャスト コンシューマー リソースを含むプロジェクトで使用できるグループ メンバーシップ イベントログの形式について説明します。プロジェクトは、マルチキャスト ドメインのトポロジに応じて、マルチキャスト管理者プロジェクトまたは個別のマルチキャスト コンシューマー プロジェクトのいずれかになります。

これらのログは、マルチキャスト グループ範囲とゾーンで有効になっている特定の VPC ネットワーク内のマルチキャスト コンシューマーのメンバーシップ イベントに対して書き込まれます。マルチキャスト グループ コンシューマーの有効化のロギングを有効にするで説明されているように、ゾーン マルチキャスト グループ コンシューマーの有効化リソースでロギングを構成できます。

Cloud Logging のモニタリング対象リソースタイプとログ名は次のとおりです。

  • リソースタイプ: networkservices.googleapis.com/MulticastGroupConsumerActivation
  • ログ名: networkservices.googleapis.com%2Fmulticast_memberships

ログには次のフィールドが含まれます。

フィールド タイプ 説明
consumerIp 文字列 マルチキャスト コンシューマーのプライマリ内部 IPv4 アドレス。例: 10.0.0.1
consumerLocation 文字列 マルチキャスト コンシューマーのゾーン。例: us-east5-a
consumerNetwork リソース マルチキャスト コンシューマー VPC ネットワーク。例:
        consumerNetwork {
          name: "my-network"
          id: "1234"
        }
        
consumerProject プロジェクト マルチキャスト コンシューマー VPC ネットワークを含むプロジェクト。例:
        consumerProject {
          id: "my-project"
          number: "5678"
        }
        
consumerResource リソース マルチキャスト コンシューマー VM インスタンス。例:
        consumerResource {
          name: "my-instance"
          id: "1111"
        }
        
consumerResourceProject プロジェクト マルチキャスト コンシューマー VM インスタンスを含むプロジェクト。これは、共有 VPC を使用する場合など、マルチキャスト コンシューマーの VPC ネットワークを含むプロジェクトとは異なる場合があります。例:
        consumerResourceProject {
          id: "my-instance-project"
          number: "4321"
        }
        
eventDescription 文字列 ログに記録されたイベントに記載されているイベントのいずれか。例: IGMP consumer joined
eventTime 文字列 イベントのタイムスタンプ(RFC 3339 のテキスト形式)。例: 2024-10-21T06:46:42.990162973Z
multicastConsumerAssociation 文字列 マルチキャスト コンシューマー VPC ネットワークとドメイン間のマルチキャスト コンシューマーの関連付けの名前。例: my-consumer-association-name
multicastGroupConsumerActivation 文字列 マルチキャスト グループ コンシューマーの有効化の名前。例: my-group-consumer-activation-name
multicastIp 文字列 マルチキャスト グループの IP アドレス。例: 224.0.0.1

マルチキャスト グループ範囲のログとは異なり、マルチキャスト グループ コンシューマーの有効化ログは、マルチキャスト コンシューマー リソースを含むプロジェクトでのみ使用できるため、プロジェクトとネットワークに文字列 ID を使用します。

フィールド形式のリファレンス

プロジェクト

フィールド タイプ 説明
number 文字列(uint64 プロジェクトの自動生成された整数 ID。例: 5678
id 文字列 プロジェクトのユーザー割り当て ID。例: my-project

リソース

フィールド タイプ 説明
id 文字列(uint64 リソースの自動生成された整数 ID。例: 1111
name 文字列 ユーザーが割り当てたリソース名。例: my-instance

グループ メンバーシップのイベント ロギングを有効にする

以降のセクションでは、マルチキャスト グループ範囲または特定のマルチキャスト コンシューマー VPC ネットワークに対してグループ メンバーシップ イベント ロギングを有効にする方法について説明します。

マルチキャスト グループ範囲のロギングを有効にする

このセクションでは、マルチキャスト管理者が既存のマルチキャスト グループ範囲のグループ メンバーシップ イベント ロギングを構成する方法について説明します。

新しいマルチキャスト グループ範囲の作成時にロギングを構成する方法については、マルチキャスト グループ範囲を作成するをご覧ください。メンバーシップ イベント ロギングはデフォルトでは有効になっていません。

メンバーシップ イベントのロギングは、次の両方のリソースで構成できます。

  • マルチキャスト グループ範囲: グローバル グループ範囲のロギング構成は、グループ範囲のすべての有効化に適用されます。
  • マルチキャスト グループ範囲の有効化: ゾーングループ範囲の有効化のロギング構成は、グローバル グループ範囲の構成をオーバーライドします。

gcloud

  • マルチキャスト グループ範囲のロギングを有効または無効にするには、network-services multicast-group-ranges update コマンドを使用します。

    gcloud beta network-services multicast-group-ranges update GROUP_RANGE_NAME \
        --location=global \
        [--enable-logging | --no-enable-logging]
    

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

    • GROUP_RANGE_NAME: マルチキャスト グループ範囲の名前
    • --[no-]enable-logging: メンバーシップ イベントのロギングが有効かどうかを指定します。
      • ロギングを有効にするには、--enable-logging を使用します。
      • ロギングを無効にするには、--no-enable-logging を使用します。
  • マルチキャスト グループ範囲の有効化のロギングを有効または無効にするには、network-services multicast-group-range-activations update コマンドを使用します。

    gcloud beta network-services multicast-group-range-activations update GROUP_RANGE_ACTIVATION_NAME \
        --location=ZONE \
        [--enable-logging | --no-enable-logging]
    

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

    • GROUP_RANGE_ACTIVATION_NAME: マルチキャスト グループ範囲の有効化の名前
    • ZONE: マルチキャスト グループ範囲の有効化のゾーン
    • --[no-]enable-logging: メンバーシップ イベントのロギングが有効かどうかを指定します。
      • ロギングを有効にするには、--enable-logging を使用します。
      • ロギングを無効にするには、--no-enable-logging を使用します。

API

  • マルチキャスト グループ範囲のロギングを有効または無効にするには、multicastGroupRanges.patch メソッドを使用します。

    PATCH https://networkservices.googleapis.com/v1beta1/projects/PROJECT_ID/locations/global/multicastGroupRanges/GROUP_RANGE_NAME?updateMask=logConfig
    {
      "logConfig": {"enabled": "LOGGING_ENABLED"}
    }
    

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

    • PROJECT_ID: プロジェクトの ID
    • GROUP_RANGE_NAME: マルチキャスト グループ範囲の名前
    • LOGGING_ENABLED: メンバーシップ イベントのロギングが有効かどうかを指定します。
      • ロギングを有効にするには、true に設定します。
      • ロギングを無効にするには、false に設定します。
  • マルチキャスト グループ範囲の有効化のロギングを有効または無効にするには、multicastGroupRangeActivations.patch メソッドを使用します。

    PATCH https://networkservices.googleapis.com/v1beta1/projects/PROJECT_ID/locations/ZONE/multicastGroupRangeActivations/GROUP_RANGE_ACTIVATION_NAME?updateMask=logConfig
    {
      "logConfig": {"enabled": "LOGGING_ENABLED"}
    }
    

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

    • PROJECT_ID: プロジェクトの ID
    • GROUP_RANGE_ACTIVATION_NAME: マルチキャスト グループ範囲の有効化の名前
    • ZONE: マルチキャスト グループ範囲の有効化のゾーン
    • LOGGING_ENABLED: メンバーシップ イベントのロギングが有効かどうかを指定します。
      • ロギングを有効にするには、true に設定します。
      • ロギングを無効にするには、false に設定します。

マルチキャスト グループ コンシューマーの有効化のロギングを有効にする

このセクションでは、マルチキャスト コンシューマー ネットワーク管理者が VPC ネットワークのグループ メンバーシップ イベント ロギングを構成する方法について説明します。

マルチキャスト トラフィックを使用できるようにした特定の VPC ネットワークについて、対応するマルチキャスト グループ コンシューマーの有効化でメンバーシップ イベントのロギングを構成できます。

新しいマルチキャスト グループ コンシューマーの有効化を作成するときにロギングを構成する方法については、VPC ネットワークでマルチキャスト トラフィックを使用できるようにするをご覧ください。メンバーシップ イベント ロギングはデフォルトでは有効になっていません。

gcloud

マルチキャスト グループ コンシューマーの有効化のロギングを有効または無効にするには、network-services multicast-group-consumer-activations update コマンドを使用します。

  gcloud beta network-services multicast-group-consumer-activations update GROUP_CONSUMER_ACTIVATION_NAME \
      --location=ZONE \
      [--enable-logging | --no-enable-logging]

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

  • GROUP_CONSUMER_ACTIVATION_NAME: マルチキャスト グループ コンシューマーの有効化の名前
  • ZONE: マルチキャスト グループ コンシューマーの有効化のゾーン
  • --[no-]enable-logging: メンバーシップ イベントのロギングが有効かどうかを指定します。
    • ロギングを有効にするには、--enable-logging を使用します。
    • ロギングを無効にするには、--no-enable-logging を使用します。

API

マルチキャスト グループ コンシューマーの有効化のロギングを有効または無効にするには、multicastGroupConsumerActivations.patch メソッドを使用します。

  PATCH https://networkservices.googleapis.com/v1beta1/projects/PROJECT_ID/locations/ZONE/multicastGroupConsumerActivations/GROUP_CONSUMER_ACTIVATION_NAME?updateMask=logConfig
  {
    "logConfig": {"enabled": "LOGGING_ENABLED"}
  }

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

  • PROJECT_ID: プロジェクトの ID
  • GROUP_CONSUMER_ACTIVATION_NAME: マルチキャスト グループ コンシューマーの有効化の名前
  • ZONE: マルチキャスト グループ コンシューマーの有効化のゾーン
  • LOGGING_ENABLED: メンバーシップ イベントのロギングが有効かどうかを指定します。
    • ロギングを有効にするには、true に設定します。
    • ロギングを無効にするには、false に設定します。

グループ メンバーシップのイベントログを表示する

このセクションでは、マルチキャストのグループ メンバーシップ イベントログを表示する方法について説明します。

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

コンソール

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

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

  2. マルチキャスト グループ メンバーシップ イベントログを表示するには、[すべてのリソース] リストから次のいずれかのモニタリング対象リソースタイプを選択します。

    • マルチキャスト管理者がグループ内のすべてのマルチキャスト コンシューマーのグループ メンバーシップ イベントログを表示する場合は、[Multicast Group Range] を選択します。
    • マルチキャスト コンシューマー VPC ネットワークの管理者で、ネットワークのグループ メンバーシップ イベントログを表示する場合は、[Multicast Group Consumer Activation] を選択します。

次のステップ