次の方法で共有


Azure CLI を使用して Event Grid システム トピックを作成、表示、管理する

この記事では、Azure CLI を使用してシステム トピックを作成および管理する方法について説明します。 システム トピックの概要については、システム トピック 参照してください。

Azure CLI の拡張機能をインストールする

Azure CLI の場合は、 Event Grid 拡張機能が必要です。

Cloud Shell の場合:

  • 拡張機能を以前にインストールした場合は、次の手順を更新します。 az extension update -n eventgrid
  • 拡張機能を以前にインストールしていない場合は、インストールします。 az extension add -n eventgrid

ローカル インストールの場合:

  1. Azure CLI のインストールを実行します。 az --versionで確認して、最新バージョンがあることを確認します。
  2. 拡張機能の以前のバージョンをアンインストールします。 az extension remove -n eventgrid
  3. を使用して eventgrid 拡張機能をインストールする az extension add -n eventgrid

システム トピックを作成する

  • 最初に Azure ソースでシステム トピックを作成してから、そのトピックのイベント サブスクリプションを作成するには、次のリファレンス トピックを参照してください。

    • az eventgrid system-topic create コマンドは、新しい Event Grid システム トピックを作成します。

      # Get the ID of the Azure source (for example: Azure Storage account)
      storageid=$(az storage account show \
              --name <AZURE STORAGE ACCOUNT NAME> \
              --resource-group <AZURE RESOURCE GROUP NAME> \
                  --query id --output tsv)
      
      # Create the system topic on the Azure source (example: Azure Storage account)
      az eventgrid system-topic create \
          -g <AZURE RESOURCE GROUP NAME> \
          --name <SPECIFY SYSTEM TOPIC NAME> \
          --location <LOCATION> \
          --topic-type microsoft.storage.storageaccounts \
          --source $storageid
      

      システム トピックの作成に使用できる topic-type 値の一覧については、次のコマンドを実行します。 これらのトピックの種類の値は、システム トピックの作成をサポートするイベント ソースを表します。 一覧の Microsoft.EventGrid.TopicsMicrosoft.EventGrid.Domains は無視してください。

      az eventgrid topic-type  list --output json | grep -w id
      
    • az eventgrid system-topic event-subscription create

      az eventgrid system-topic event-subscription create --name <SPECIFY EVENT SUBSCRIPTION NAME> \
          -g rg1 --system-topic-name <SYSTEM TOPIC NAME> \
          --endpoint <ENDPOINT URL>		  
      
  • Azure ソースのイベント サブスクリプションを作成するときにシステム トピックを (暗黙的に) 作成するには、 az eventgrid event-subscription create メソッドを使用します。 次に例を示します。

    storageid=$(az storage account show --name <AZURE STORAGE ACCOUNT NAME> --resource-group <AZURE RESOURCE GROUP NAME> --query id --output tsv)
    endpoint=<ENDPOINT URL>
    
    az eventgrid event-subscription create \
      --source-resource-id $storageid \
      --name <EVENT SUBSCRIPTION NAME> \
      --endpoint $endpoint
    

    詳細な手順を含むチュートリアルについては、 ストレージ アカウントのサブスクライブに関する記事を参照してください。

すべてのシステム トピックを表示する

選択したシステム トピックのすべてのシステム トピックと詳細を表示するには、次のコマンドを使用します。

システム トピックを削除します

システム トピックを削除するには、次のコマンドを使用します。

  • az eventgrid system-topic delete コマンドは、Event Grid のシステムトピックを削除します。

    az eventgrid system-topic delete -g <AZURE RESOURCE GROUP NAME> --name <SYSTEM TOPIC NAME>	 
    

次のステップ

Azure Event Grid でサポートされるシステム トピックとトピックの種類の詳細については、「Azure Event Grid のシステム トピック」セクションを参照してください。