Event Hub als Ereignishandler für Azure Event Grid-Ereignisse

Ein Ereignishandler ist der Ort, an den das Ereignis gesendet wird. Der Handler ergreift zur Verarbeitung des Ereignisses eine Maßnahme. Mehrere Azure-Dienste werden automatisch für die Behandlung von Ereignissen konfiguriert. Azure Event Hubs ist einer dieser Dienste.

Verwenden Sie Event Hubs, wenn Ihre Lösung Ereignisse von Event Grid schneller abruft, als die Ereignisse verarbeitet werden können. Sobald sich die Ereignisse in einem Event Hub befinden, kann Ihre Anwendung Ereignisse aus dem Event Hub gemäß einem eigenen Zeitplan verarbeiten. Sie können die Ereignisverarbeitung in Anpassung an die eingehenden Ereignisse skalieren.

Tutorials

Hierzu folgende Beispiele:

Titel BESCHREIBUNG
Schnellstart: Weiterleiten benutzerdefinierter Ereignisse an Azure Event Hubs mit der Azure CLI und Event Grid Sendet ein benutzerdefiniertes Ereignis an einen Event Hub, damit es durch eine Anwendung verarbeitet wird.
Resource Manager-Vorlage: Erstellen eines benutzerdefinierten Event Grid-Themas und Senden von Ereignissen an einen Event Hub Eine Resource Manager-Vorlage, mit der ein Abonnement für ein benutzerdefiniertes Thema erstellt wird. Sendet Ereignisse an Azure Event Hubs.

Nachrichtenheader

Dies sind die Eigenschaften, die Sie in den Nachrichtenheadern empfangen:

Eigenschaftenname BESCHREIBUNG
aeg-subscription-name Name des Ereignisabonnements.
aeg-delivery-count Anzahl von Versuchen, die für das Ereignis durchgeführt wurden
aeg-event-type

Der Typ des Ereignisses

Es kann sich um einen der folgenden Werte handeln:

  • SubscriptionValidation
  • Benachrichtigung
  • SubscriptionDeletion
aeg-metadata-version

Die Metadatenversion des Ereignisses

Bei einem Event Grid-Ereignisschema stellt diese Eigenschaft die Metadatenversion und bei einem Cloudereignisschema die Spezifikationsversion dar.

aeg-data-version

Die Datenversion des Ereignisses

Bei einem Event Grid-Ereignisschema stellt diese Eigenschaft die Datenversion dar. Bei einem Cloudereignisschema kommt sie nicht zur Anwendung

aeg-output-event-id ID des Event Grid-Ereignisses

REST-Beispiele (für PUT)

Event Hub

{
  "properties": 
  {
    "destination": 
    {
      "endpointType": "EventHub",
      "properties": 
      {
        "resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventHub/namespaces/<EVENT HUBS NAMESPACE NAME>/eventhubs/<EVENT HUB NAME>"
      }
    },
    "eventDeliverySchema": "EventGridSchema"
  }
}

Event Hub: Bereitstellung mit verwalteter Identität

{
  "properties": {
    "deliveryWithResourceIdentity": 
    {
      "identity": 
      {
        "type": "SystemAssigned"
      },
      "destination": 
      {
        "endpointType": "EventHub",
        "properties": 
        {
          "resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.EventHub/namespaces/<EVENT HUBS NAMESPACE NAME>/eventhubs/<EVENT HUB NAME>"
        }
      }
    },
    "eventDeliverySchema": "EventGridSchema"
  }
}

Übermittlungseigenschaften

Mit Ereignisabonnements können Sie HTTP-Header einrichten, die in übermittelte Ereignisse eingeschlossen werden. Diese Funktion ermöglicht es Ihnen, die benutzerdefinierten Header festzulegen, die ein Ziel erfordert. Sie können benutzerdefinierte Header für die Ereignisse festlegen, die an Azure Event Hubs übermittelt werden.

Wenn Sie Ereignisse für eine bestimmte Partition innerhalb eines Event Hub veröffentlichen müssen, legen Sie die PartitionKey-Eigenschaft für Ihr Ereignisabonnement fest, um den Partitionsschlüssel zur Identifizierung der Event Hub-Zielpartition anzugeben.

Headername Headertyp
PartitionKey Statisch oder dynamisch

Weitere Informationen finden Sie unter Benutzerdefinierte Übermittlungseigenschaften.

Nächste Schritte

Eine Liste der unterstützten Ereignishandler finden Sie im Artikel zu Ereignishandlern.