Azure Service Bus als Event Grid-Quelle
In diesem Artikel werden die Eigenschaften und das Schema für Service Bus-Ereignisse beschrieben. Eine Einführung in Ereignisschemas finden Sie unter Azure Event Grid-Ereignisschema.
Hinweis
Nur der Service Bus-Namespace der Premium-Ebene unterstützt die Ereignisintegration. Die Ebenen „Basic“ und „Standard“ unterstützen keine Integration in Event Grid.
Verfügbare Ereignistypen
Service Bus gibt die folgenden Ereignistypen aus:
Ereignistyp | BESCHREIBUNG |
---|---|
Microsoft.ServiceBus.ActiveMessagesAvailableWithNoListeners |
Wird ausgelöst, wenn eine neue aktive Nachricht in einer Warteschlange oder einem Abonnement eingeht und keine Empfänger lauschen. |
Microsoft.ServiceBus.DeadletterMessagesAvailableWithNoListeners |
Wird ausgelöst, wenn eine neue aktive Nachricht in einer Warteschlange für unzustellbare Nachrichten eingeht und kein lauschender Empfänger vorhanden ist. |
Microsoft.ServiceBus.ActiveMessagesAvailablePeriodicNotifications |
Wird alle 30 Sekunden ausgelöst, wenn aktive Nachrichten in einer Warteschlange oder einem Abonnement vorhanden sind, selbst wenn aktive Listener in dieser spezifischen Warteschlange oder des Abonnements vorhanden sind. Eine Auslösung erfolgt ebenfalls, wenn die Anzahl aktiver Nachrichten für die Warteschlange oder das Abonnement von 0 in einen positiven Wert wechselt. |
Microsoft.ServiceBus.DeadletterMessagesAvailablePeriodicNotifications |
Wird alle 30 Sekunden ausgelöst, wenn aktive Nachrichten in der Entität für unzustellbare Nachrichten einer Warteschlange oder eines Abonnements vorhanden sind, selbst wenn aktive Listener in der Entität für unzustellbare Nachrichten dieser spezifischen Warteschlange oder des Abonnements vorhanden sind. Eine Auslösung erfolgt ebenfalls, wenn die Anzahl unzustellbarer Nachrichten für die Entität für unzustellbare Nachrichten der Warteschlange oder des Abonnements von 0 in einen positiven Wert wechselt. |
Beispielereignis
Aktive Nachrichten ohne Listener verfügbar
Dieses Ereignis wird generiert, wenn aktive Nachrichten in einer Warteschlange oder in einem Abonnement vorliegen und keine lauschenden Empfänger vorhanden sind.
[{
"topic": "/subscriptions/{subscription-id}/resourcegroups/{your-rg}/providers/Microsoft.ServiceBus/namespaces/{your-service-bus-namespace}",
"subject": "topics/{your-service-bus-topic}/subscriptions/{your-service-bus-subscription}",
"eventType": "Microsoft.ServiceBus.ActiveMessagesAvailableWithNoListeners",
"eventTime": "2018-02-14T05:12:53.4133526Z",
"id": "dede87b0-3656-419c-acaf-70c95ddc60f5",
"data": {
"namespaceName": "YOUR SERVICE BUS NAMESPACE WILL SHOW HERE",
"requestUri": "https://{your-service-bus-namespace}.servicebus.windows.net/{your-topic}/subscriptions/{your-service-bus-subscription}/messages/head",
"entityType": "subscriber",
"queueName": "QUEUE NAME IF QUEUE",
"topicName": "TOPIC NAME IF TOPIC",
"subscriptionName": "SUBSCRIPTION NAME"
},
"dataVersion": "1",
"metadataVersion": "1"
}]
Unzustellbare Nachrichten ohne Listener verfügbar
Das Schema für ein Ereignis mit Warteschlange für unzustellbare Nachrichten sieht ganz ähnlich aus. Sie erhalten mindestens ein Ereignis pro Warteschlange für unzustellbare Nachrichten, die Nachrichten enthält und über keine aktiven Empfänger verfügt.
[{
"topic": "/subscriptions/{subscription-id}/resourcegroups/{your-rg}/providers/Microsoft.ServiceBus/namespaces/{your-service-bus-namespace}",
"subject": "topics/{your-service-bus-topic}/subscriptions/{your-service-bus-subscription}",
"eventType": "Microsoft.ServiceBus.DeadletterMessagesAvailableWithNoListeners",
"eventTime": "2018-02-14T05:12:53.4133526Z",
"id": "dede87b0-3656-419c-acaf-70c95ddc60f5",
"data": {
"namespaceName": "YOUR SERVICE BUS NAMESPACE WILL SHOW HERE",
"requestUri": "https://{your-service-bus-namespace}.servicebus.windows.net/{your-topic}/subscriptions/{your-service-bus-subscription}/$deadletterqueue/messages/head",
"entityType": "subscriber",
"queueName": "QUEUE NAME IF QUEUE",
"topicName": "TOPIC NAME IF TOPIC",
"subscriptionName": "SUBSCRIPTION NAME"
},
"dataVersion": "1",
"metadataVersion": "1"
}]
Aktive Nachrichten verfügbar: periodische Benachrichtigungen
Dieses Ereignis wird regelmäßig ausgelöst, wenn aktive Nachrichten in einer Warteschlange oder einem Abonnement vorhanden sind, auch wenn aktive Listener für diese bestimmte Warteschlange oder das Abonnement vorhanden sind.
[{
"topic": "/subscriptions/<subscription id>/resourcegroups/DemoGroup/providers/Microsoft.ServiceBus/namespaces/<YOUR SERVICE BUS NAMESPACE WILL SHOW HERE>",
"subject": "topics/<service bus topic>/subscriptions/<service bus subscription>",
"eventType": "Microsoft.ServiceBus.ActiveMessagesAvailablePeriodicNotifications",
"eventTime": "2018-02-14T05:12:53.4133526Z",
"id": "dede87b0-3656-419c-acaf-70c95ddc60f5",
"data": {
"namespaceName": "YOUR SERVICE BUS NAMESPACE WILL SHOW HERE",
"requestUri": "https://YOUR-SERVICE-BUS-NAMESPACE-WILL-SHOW-HERE.servicebus.windows.net/TOPIC-NAME/subscriptions/SUBSCRIPTIONNAME/$deadletterqueue/messages/head",
"entityType": "subscriber",
"queueName": "QUEUE NAME IF QUEUE",
"topicName": "TOPIC NAME IF TOPIC",
"subscriptionName": "SUBSCRIPTION NAME"
},
"dataVersion": "1",
"metadataVersion": "1"
}]
Unzustellbare Nachrichten verfügbar: periodische Benachrichtigungen
Dieses Ereignis wird regelmäßig ausgelöst, wenn unzustellbare Nachrichten für eine Warteschlange oder ein Abonnement vorhanden sind, auch wenn aktive Listener für die Deadletter-Entität in dieser bestimmten Warteschlange oder im Abonnement vorhanden sind.
[{
"topic": "/subscriptions/<subscription id>/resourcegroups/DemoGroup/providers/Microsoft.ServiceBus/namespaces/<YOUR SERVICE BUS NAMESPACE WILL SHOW HERE>",
"subject": "topics/<service bus topic>/subscriptions/<service bus subscription>",
"eventType": "Microsoft.ServiceBus.DeadletterMessagesAvailablePeriodicNotifications",
"eventTime": "2018-02-14T05:12:53.4133526Z",
"id": "dede87b0-3656-419c-acaf-70c95ddc60f5",
"data": {
"namespaceName": "YOUR SERVICE BUS NAMESPACE WILL SHOW HERE",
"requestUri": "https://YOUR-SERVICE-BUS-NAMESPACE-WILL-SHOW-HERE.servicebus.windows.net/TOPIC-NAME/subscriptions/SUBSCRIPTIONNAME/$deadletterqueue/messages/head",
"entityType": "subscriber",
"queueName": "QUEUE NAME IF QUEUE",
"topicName": "TOPIC NAME IF TOPIC",
"subscriptionName": "SUBSCRIPTION NAME"
},
"dataVersion": "1",
"metadataVersion": "1"
}]
Ereigniseigenschaften
Ein Ereignis weist die folgenden Daten auf oberster Ebene aus:
Eigenschaft | Typ | Beschreibung |
---|---|---|
topic |
Zeichenfolge | Vollständiger Ressourcenpfaf zur Ereignisquelle. Dieses Feld ist nicht beschreibbar. Dieser Wert wird von Event Grid bereitgestellt. |
subject |
Zeichenfolge | Vom Herausgeber definierter Pfad zum Ereignisbetreff |
eventType |
Zeichenfolge | Einer der registrierten Ereignistypen für die Ereignisquelle. |
eventTime |
Zeichenfolge | Die Zeit, in der das Ereignis generiert wird, basierend auf der UTC-Zeit des Anbieters. |
id |
Zeichenfolge | Eindeutiger Bezeichner für das Ereignis. |
data |
Objekt (object) | Ereignisdaten für Blob Storage. |
dataVersion |
Zeichenfolge | Die Schemaversion des Datenobjekts. Der Herausgeber definiert die Schemaversion. |
metadataVersion |
Zeichenfolge | Die Schemaversion der Ereignismetadaten. Event Grid definiert das Schema der Eigenschaften der obersten Ebene. Dieser Wert wird von Event Grid bereitgestellt. |
Das Datenobjekt weist die folgenden Eigenschaften auf:
Eigenschaft | Typ | Beschreibung |
---|---|---|
namespaceName |
Zeichenfolge | Der Service Bus-Namespace, in dem sich die Ressource befindet. |
requestUri |
Zeichenfolge | Der URI für die spezifische Warteschlange oder das Abonnement, von der bzw. von dem das Ereignis ausgegeben wird. |
entityType |
Zeichenfolge | Die Art der Service Bus-Entität, die Ereignisse ausgibt (Warteschlange oder Abonnement). |
queueName |
Zeichenfolge | Die Warteschlange mit aktiven Nachrichten, falls eine Warteschlange abonniert wird. Bei Verwendung von Themen/Abonnements ist der Wert NULL. |
topicName |
Zeichenfolge | Das Thema, zu dem das Service Bus-Abonnement mit aktiven Nachrichten gehört. Bei Verwendung einer Warteschlange ist der Wert NULL. |
subscriptionName |
Zeichenfolge | Das Service Bus-Abonnement mit aktiven Nachrichten. Bei Verwendung einer Warteschlange ist der Wert NULL. |
Tutorials und Anleitungen
Titel | BESCHREIBUNG |
---|---|
Tutorial: Beispiele für die Integration von Azure Service Bus in Azure Event Grid | Event Grid sendet Nachrichten von einem Service Bus-Thema an eine Funktions-App und an eine Logik-App. |
Integration von Azure Service Bus in Event Grid | Übersicht über die Integration von Service Bus in Event Grid. |
Hinweis
Wenn ein Failover für einen Service Bus-Namespace auftritt, der für georedundante Notfallwiederherstellung aktiviert ist, gibt der sekundäre Namespace keine Ereignisse an Event Grid aus. Sie müssen das Event Grid-Abonnement für den sekundären Namespace manuell hinzufügen.
Nächste Schritte
- Eine Einführung zu Azure Event Grid finden Sie unter Einführung in Azure Event Grid.
- Weitere Informationen zum Erstellen eines Azure Event Grid-Abonnements finden Sie unter Event Grid-Abonnementschema.
- Ausführlichere Informationen zur Verwendung von Azure Event Grid mit Service Bus finden Sie in der Übersicht über die Integration von Azure Service Bus in Azure Event Grid.
- Versuchen Sie, Service Bus-Ereignisse mit Functions und Logic Apps zu empfangen.