Erstellen und Überwachen von Media Services-Ereignissen mit Event Grid über die Azure CLI

Media Services-Logo v3


Azure Event Grid ist ein Ereignisdienst für die Cloud. Dieser Dienst verwendet Ereignisabonnements zum Weiterleiten von Ereignisnachrichten an Abonnenten. Media Services-Ereignisse enthalten alle Informationen, die Sie zur Reaktion auf Änderungen in Ihren Daten benötigen. Sie können ein Media Services-Ereignis daran erkennen, dass die eventType-Eigenschaft mit „Microsoft.Media“ beginnt. Weitere Informationen finden Sie unter Media Services-Ereignisschemas.

In diesem Artikel verwenden Sie die Azure CLI, um Ereignisse für Ihr Azure Media Services-Konto zu abonnieren. Anschließend lösen Sie Ereignisse aus, um das Ergebnis anzuzeigen. Üblicherweise senden Sie Ereignisse an einen Endpunkt, der die Ereignisdaten verarbeitet und entsprechende Aktionen ausführt. In diesem Artikel senden Sie Ereignisse an eine Web-App, die die Nachrichten sammelt und anzeigt.

Voraussetzungen

  • Ein aktives Azure-Abonnement. Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.

  • Installieren und verwenden Sie die CLI lokal. Dieser Artikel erfordert mindestens Version 2.0 der Azure CLI. Führen Sie az --version aus, um herauszufinden, welche Version Sie haben. Installations- und Upgradeinformationen finden Sie bei Bedarf unter Installieren von Azure CLI.

    Derzeit funktionieren nicht alle Befehle der CLI von Media Services v3 in Azure Cloud Shell. Es wird empfohlen, die CLI lokal zu verwenden.

  • Erstellen Sie ein Media Services-Konto.

    Merken Sie sich die Werte, die Sie für den Namen der Ressourcengruppe und des Media Services-Kontos verwendet haben.

Erstellen eines Nachrichtenendpunkts

Vor dem Abonnieren der Ereignisse für das Media Services-Konto erstellen wir zunächst den Endpunkt für die Ereignisnachricht. Der Endpunkt führt in der Regel Aktionen auf der Grundlage der Ereignisdaten aus. In diesem Artikel stellen Sie eine vorgefertigte Web-App bereit, die die Ereignismeldungen anzeigt. Die bereitgestellte Lösung umfasst einen App Service-Plan, eine App Service-Web-App und Quellcode von GitHub.

  1. Wählen Sie Deploy to Azure (In Azure bereitstellen), um die Lösung für Ihr Abonnement bereitzustellen. Geben Sie im Azure-Portal Werte für die Parameter an.

    Abbildung einer Schaltfläche mit der Bezeichnung „Bereitstellung in Azure“

  2. Die Bereitstellung kann einige Minuten dauern. Nach erfolgreichem Abschluss der Bereitstellung können Sie Ihre Web-App anzeigen und sich vergewissern, dass sie ausgeführt wird. Navigieren Sie hierzu in einem Webbrowser zu https://<your-site-name>.azurewebsites.net.

Wenn Sie zur Seite „Azure Event Grid Viewer“ wechseln, werden Sie erkennen, dass sie noch nicht über Ereignisse verfügt.

Aktivieren des Event Grid-Ressourcenanbieters

Wenn Sie zuvor in Ihrem Azure-Abonnement noch nicht Event Grid verwendet haben, sollten Sie den Event Grid-Ressourcenanbieter registrieren.

Führen Sie im Azure-Portal die folgenden Schritte aus:

  1. Wählen Sie im linken Menü Abonnements aus.
  2. Wählen Sie das Abonnement aus, das Sie für Event Grid verwenden.
  3. Wählen Sie im linken Menü unter Einstellungen die Option Ressourcenanbieter aus.
  4. Suchen Sie nach Microsoft.EventGrid.
  5. Wenn Sie nicht registriert sind, klicken Sie auf Registrieren.

Es kann einen Moment dauern, bis die Registrierung abgeschlossen ist. Wählen Sie zum Aktualisieren des Status die Option Aktualisieren aus. Wenn der Status Registriert lautet, können Sie den Vorgang fortsetzen.

Einrichten des Azure-Abonnements

Geben Sie im folgenden Befehle die ID des Azure-Abonnements an, das Sie für das Media Services-Konto verwenden möchten. Sie können eine Liste der Abonnements anzeigen, auf die Sie Zugriff haben, indem Sie zu Abonnements navigieren.

az account set --subscription mySubscriptionId

Abonnieren von Media Services-Ereignissen

Sie abonnieren einen Artikel, um Event Grid mitzuteilen, welche Ereignisse Sie nachverfolgen möchten. Im folgenden Beispiel wird das von Ihnen erstellte Media Services-Konto abonniert. Außerdem wird die URL der von Ihnen erstellten Website als Endpunkt für Ereignisbenachrichtigungen übergeben.

Ersetzen Sie <event_subscription_name> durch einen eindeutigen Namen für Ihr Ereignisabonnement. Verwenden Sie für <resource_group_name> und <ams_account_name> die Werte, die Sie beim Erstellen des Media Services-Kontos verwendet haben. Geben Sie für den <endpoint_URL> die URL Ihrer Web-App an, und fügen Sie api/updates der URL der Startseite hinzu. Durch die Angabe des Endpunkts beim Abonnieren übernimmt Event Grid die Weiterleitung von Ereignissen an diesen Endpunkt.

  1. Abrufen der Ressourcen-ID

    amsResourceId=$(az ams account show --name <ams_account_name> --resource-group <resource_group_name> --query id --output tsv)
    

    Beispiel:

    amsResourceId=$(az ams account show --name amsaccount --resource-group amsResourceGroup --query id --output tsv)
    
  2. Abonnieren der Ereignisse

    az eventgrid event-subscription create \
    --source-resource-id $amsResourceId \
    --name <event_subscription_name> \
    --endpoint <endpoint_URL>
    

    Beispiel:

    az eventgrid event-subscription create --source-resource-id $amsResourceId --name amsTestEventSubscription --endpoint https://amstesteventgrid.azurewebsites.net/api/updates/
    

    Tipp

    Möglicherweise erhalten Sie eine Warnung über einen Überprüfungshandshake. Warten Sie ein paar Minuten und der Handshake sollte bestätigt werden.

Anschließend werden Ereignisse ausgelöst, um zu sehen, wie Event Grid die Nachricht an Ihren Endpunkt weiterleitet.

Senden eines Ereignisses an Ihren Endpunkt

Sie können Ereignisse für das Media Services-Konto auslösen, indem Sie einen Codierungsauftrag ausführen. Sie können dieser Schnellstartanleitung folgen, um eine Datei zu codieren und mit dem Senden von Ereignissen zu beginnen.

Zeigen Sie wieder Ihre Web-App an. Wie Sie sehen, wurde ein Abonnementüberprüfungsereignis an sie gesendet. Event Grid sendet das Überprüfungsereignis, damit der Endpunkt bestätigen kann, dass er Ereignisdaten empfangen möchte. Der Endpunkt muss validationResponse auf validationCode festlegen. Weitere Informationen finden Sie unter Event Grid – Sicherheit und Authentifizierung. Sie können den Web-App-Code anzeigen, um zu sehen, wie das Abonnement überprüft wird.

Tipp

Klicken Sie auf das Augensymbol, um die Ereignisdaten zu erweitern. Aktualisieren Sie die Seite nicht, wenn Sie alle Ereignisse anzeigen möchten.

Anzeigen des Abonnementereignisses

Nächste Schritte

Hochladen, Codieren und Streamen