次の方法で共有


クイック スタート: Azure Event Grid を使用して BLOB ストレージ イベントを Web エンドポイントにルーティングする (Azure portal)

Event Grid は、Azure のさまざまなサービスおよびアプリケーション全体でイベントの管理を簡単にするフル マネージド サービスです。 イベント駆動型でサーバーレスのアプリケーションの作成を簡単にします。 サービスの概要については、Event Grid の概要に関するページを参照してください。

Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。

最後に、イベント データが Web アプリに送信されたことを確認します。

イベントを含むサンプルの Azure Event Grid ビューアー アプリを示すスクリーンショット。

ストレージ アカウントの作成

  1. Azure ポータルにサインインします。

  2. BLOB ストレージを作成するには、 [リソースの作成] を選択します。

  3. [検索] に「ストレージ アカウント」と入力し、結果の一覧から [ストレージ アカウント] を選択します。

    [リソースの作成] ページでストレージ アカウントを検索している画面のスクリーンショット。

  4. [ストレージ アカウント] ページで [作成] を選択し、ストレージ アカウントの作成を開始します。 イベントに対してサブスクライブするには、汎用 v2 ストレージ アカウントまたは BLOB ストレージ アカウントのどちらかを作成します。

  5. [ストレージ アカウントの作成] ページで、次の手順を実行します。

    1. Azure サブスクリプションを選択します。

    2. リソース グループには、新しいリソース グループ名を作成するか既存の名前を選択します。

    3. ストレージ アカウントの名前を入力します。

    4. ストレージ アカウントを作成する [リージョン] を選択します。

    5. プライマリ サービスのために、Azure Blob Storage または Azure Data Lake Storage Gen 2 を選択します。

    6. [冗長性] には、ドロップダウン リストから [ローカル冗長ストレージ (LRS)] を選択します。

    7. ページ下部にある [確認と作成] を選択します。

      [ストレージ アカウントの作成] ページのスクリーンショット。

    8. [確認 + 作成] タブで設定を確認し、[作成] を選択します。

      Note

      イベントの統合をサポートしているのは、StorageV2 (汎用 v2)BlobStorage の種類のストレージ アカウントだけです。 Storage (汎用 v1) では、Event Grid との統合はサポート "されていません"。

  6. デプロイが完了するまでに数分かかる場合があります。 [デプロイ] ページで、[リソースに移動] を選択します。

    デプロイに成功したページと、リソースに移動するためのリンクを示すスクリーンショット。

  7. [ストレージ アカウント] ページの左側のメニューにある [イベント] を選択します。

    Azure ストレージ アカウントの [イベント] ページを示すスクリーンショット。

  8. このページを Web ブラウザーで開いたままにします。

メッセージ エンドポイントの作成

BLOB ストレージのイベントをサブスクライブする前に、イベント メッセージのエンドポイントを作成しましょう。 通常、エンドポイントは、イベント データに基づくアクションを実行します。 このクイックスタートを簡素化するために、イベント メッセージを表示する構築済みの Web アプリをデプロイします。 デプロイされたソリューションには、App Service プラン、App Service Web アプリ、および GitHub からのソース コードが含まれています。

  1. [Deploy to Azure](Azure にデプロイ) を選択して、ソリューションをサブスクリプションにデプロイします。

    Resource Manager テンプレートを Azure にデプロイするボタン。

  2. [カスタム デプロイ] ページで、次の手順を実行します。

    1. [リソース グループ] で、ストレージ アカウントの作成時に作成したリソース グループを選択します。 チュートリアルの完了後は、リソース グループを削除して容易にクリーンアップすることができます。

    2. [サイト名] に、Web アプリの名前を入力します。

    3. Web アプリのホストに使用する App Service プランの名前を [ホスティング プラン名] に入力します。

    4. [Review + create](レビュー + 作成) を選択します。

      [カスタム デプロイ] ページのスクリーンショット。

  3. [確認および作成] ページで、 [作成] を選択します。

  4. デプロイが完了するまでに数分かかる場合があります。 [デプロイ] ページで、[リソース グループに移動] を選択します。

    デプロイに成功したページと、リソース グループに移動するためのリンクを示すスクリーンショット。

  5. [リソース グループ] ページのリソースの一覧で、作成した Web アプリを選択します。 この一覧には、App Service プランとストレージ アカウントも表示されます。

    リソース グループ内の Web アプリの選択を示すスクリーンショット。

  6. Web アプリの [App Service] ページで、Web サイトに移動するための URL を選択します。 この URL は、https://<your-site-name>.azurewebsites.net 形式になっている必要があります。

    Web アプリに移動するためのリンクの選択を示すスクリーンショット。

  7. サイトは表示されますが、イベントはまだ送信されていないことを確認します。

    新しいサイトを表示する。

    重要

    Azure Event Grid ビューアー ウィンドウを開いたままにして、イベントが送信された時点で表示されるようにします。

BLOB ストレージのサブスクライブ

どのイベントを追跡し、どこにイベントを送信するかは、トピックを購読することによって Event Grid に伝えます。

  1. [ストレージ アカウント] ページを閉じた場合は、前に作成した Azure Storage アカウントに移動します。 左側のメニューにある [すべてのリソース] を選択し、自分のストレージ アカウントを選択します。

  2. [ストレージ アカウント] ページの左側のメニューにある [イベント] を選択します。

  3. [その他のオプション] を選択し、 [webhook] を選択します。 エンドポイントの Web hook を使用して、ビューアー アプリにイベントを送信します。

    [イベント] ページの Web フックの選択を示すスクリーンショット。

  4. [イベント サブスクリプションの作成] ページで、次の手順を実行します。

    1. イベント サブスクリプションの名前を入力します。

    2. システム トピック名前を入力します。 システム トピックについては、システム トピックの概要に関するページを参照してください。

    3. エンドポイントの種類[Web Hook] に設定されていることを確認します。

      システム トピックの名前を含む [イベント サブスクリプションの作成] ページを示すスクリーンショット。

  5. [エンドポイント][エンドポイントの構成] を選択し、Web アプリの URL を入力して、ホーム ページの URL に api/updates を追加し (例: https://spegridsite.azurewebsites.net/api/updates)、[選択の確認] を選択します。

    [Web フックの選択] ページを示すスクリーンショット。

  6. 次に、 [イベント サブスクリプションの作成] ページの [作成] を選択して、イベント サブスクリプションを作成します。

    すべてのフィールドが選択された [イベント サブスクリプションの作成] ページを示すスクリーンショット。

  7. Web アプリをもう一度表示し、その Web アプリにサブスクリプションの検証イベントが送信されたことに注目します。 目のアイコンを選択してイベント データを展開します。 Event Grid は検証イベントを送信するので、エンドポイントはイベント データを受信することを確認できます。 Web アプリには、サブスクリプションを検証するコードが含まれています。

    サブスクリプション検証イベントを含む Event Grid Viewer を示すスクリーンショット。

では、イベントをトリガーして、Event Grid がメッセージをエンドポイントに配信するようすを見てみましょう。

エンドポイントへのイベントの送信

BLOB ストレージのイベントをトリガーするには、ファイルをアップロードします。 このファイルは、特定のコンテンツを必要としません。

  1. Azure portal で Blob Storage アカウントに移動し、左のメニューで [Containers] を選択します。

  2. [+ コンテナー] を選択します。 コンテナーに名前を付け、任意のアクセス レベルを使用して、[作成] を選択します。

    [新しいコンテナー] ページを示すスクリーンショット。

  3. 新しいコンテナーを選択します。

    コンテナーの選択を示すスクリーンショット。

  4. ファイルをアップロードするには、 [アップロード] を選択します。 [BLOB のアップロード] ページで、テスト用にアップロードするファイルを参照して選択し、ページ上の [アップロード] を選択します。

    サンプル イメージをアップロードするための [BLOB のアップロード] ページを示すスクリーンショット。

  5. テスト ファイルを参照し、それをアップロードします。

  6. 以上でイベントがトリガーされ、そのメッセージが、Event Grid によってサブスクライブ時に構成したエンドポイントに送信されました。 メッセージは JSON 形式であり、1 つまたは複数のイベントの配列が含まれています。 次の例の JSON メッセージには、1 つのイベントの配列が含まれています。 Web アプリを表示して、BLOB 作成イベントが受信されたことを確認します。

    Blob Created イベントを含む Event Grid Viewer ページを示すスクリーンショット。

リソースをクリーンアップする

引き続きこのイベントを使用する場合は、この記事で作成したリソースをクリーンアップしないでください。 それ以外の場合は、この記事で作成したリソースを削除してください。

リソース グループを選択し、 [リソース グループの削除] を選択します。

カスタム トピックを作成し、イベントをサブスクライブする方法がわかったら、Event Grid でできることについて、さらに情報を収集しましょう。