Azure Event Grid-Namespace (Vorschau) als Event Grid-Quelle
In diesem Artikel werden die Eigenschaften und das Schema für Azure Event Grid-Namespaceereignisse beschrieben. Eine Einführung in Ereignisschemas finden Sie unter Azure Event Grid-Ereignisschema.
Verfügbare Ereignistypen
Der Azure Event Grid-Namespace (Vorschau) gibt die folgenden Ereignistypen aus:
Ereignistyp | BESCHREIBUNG |
---|---|
Microsoft.EventGrid.MQTTClientSessionConnected | Wird veröffentlicht, wenn die Sitzung eines MQTT-Clients mit Event Grid verbunden ist. |
Microsoft.EventGrid.MQTTClientSessionDisconnected | Wird veröffentlicht, wenn die Sitzung eines MQTT-Clients mit Event Grid getrennt wird. |
Microsoft.EventGrid.MQTTClientCreatedOrUpdated | Wird veröffentlicht, wenn ein MQTT-Client im Event Grid Namespace erstellt oder aktualisiert wird. |
Microsoft.EventGrid.MQTTClientDeleted | Wird veröffentlicht, wenn ein MQTT-Client aus dem Event Grid-Namespace gelöscht wird. |
Beispielereignis
Dieses Beispielereignis zeigt das Schema eines Ereignisses, das ausgelöst wird, wenn die Sitzung eines MQTT-Clients mit Event Grid verbunden ist:
[{
"specversion": "1.0",
"id": "5249c38a-a048-46dd-8f60-df34fcdab06c",
"time": "2023-07-29T01:23:49.6454046Z",
"type": "Microsoft.EventGrid.MQTTClientSessionConnected",
"source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns",
"subject": "clients/client1/sessions/session1",
"data": {
"namespaceName": "myns",
"clientAuthenticationName": "client1",
"clientSessionName": "session1",
"sequenceNumber": 1
}
}]
Dieses Beispielereignis zeigt das Schema eines Ereignisses, das ausgelöst wird, wenn die Sitzung eines MQTT-Clients mit Event Grid getrennt wird:
[{
"specversion": "1.0",
"id": "e30e5174-787d-4e19-8812-580148bfcf7b",
"time": "2023-07-29T01:27:40.2446871Z",
"type": "Microsoft.EventGrid.MQTTClientSessionDisconnected",
"source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns",
"subject": "clients/client1/sessions/session1",
"data": {
"namespaceName": "myns",
"clientAuthenticationName": "client1",
"clientSessionName": "session1",
"sequenceNumber": 1,
"disconnectionReason": "ClientInitiatedDisconnect"
}
}]
Dieses Beispielereignis zeigt das Schema eines Ereignisses, das ausgelöst wird, wenn ein MQTT-Client im Event Grid Namespace erstellt oder aktualisiert wird:
[{
"specversion": "1.0",
"id": "383d1562-c95f-4095-936c-688e72c6b2bb",
"time": "2023-07-29T01:14:35.8928724Z",
"type": "Microsoft.EventGrid.MQTTClientCreatedOrUpdated",
"source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns",
"subject": "clients/client1",
"data": {
"createdOn": "2023-07-29T01:14:34.2048108Z",
"updatedOn": "2023-07-29T01:14:34.2048108Z",
"namespaceName": "myns",
"clientName": "client1",
"clientAuthenticationName": "client1",
"state": "Enabled",
"attributes": {
"attribute1": "value1"
}
}
}]
Dieses Beispielereignis zeigt das Schema eines Ereignisses, das ausgelöst wird, wenn ein MQTT-Client aus dem Event Grid Namespace gelöscht wird:
[{
"specversion": "1.0",
"id": "2a93aaf9-66c2-4f8e-9ba3-8d899c10bf17",
"time": "2023-07-29T01:30:52.5620566Z",
"type": "Microsoft.EventGrid.MQTTClientDeleted",
"source": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns",
"subject": "clients/client1",
"data": {
"namespaceName": "myns",
"clientName": "client1",
"clientAuthenticationName": "client1"
}
}]
Ereigniseigenschaften
Alle Ereignisse enthalten die gleichen Daten der obersten Ebene:
Eigenschaft | Typ | Beschreibung |
---|---|---|
id |
Zeichenfolge | Eindeutiger Bezeichner für das Ereignis. |
source |
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 |
type |
Zeichenfolge | Einer der registrierten Ereignistypen für die Ereignisquelle. |
time |
Zeichenfolge | Die Zeit, in der das Ereignis generiert wird, basierend auf der UTC-Zeit des Anbieters. |
data |
Objekt (object) | Ereignisdaten des Event Grid-Namespaces. |
specversion |
Zeichenfolge | Version der CloudEvents-Schemaspezifikation. |
Das Datenobjekt enthält die folgenden Eigenschaften:
Eigenschaft | Typ | Beschreibung |
---|---|---|
namespaceName |
Zeichenfolge | Name des Event Grid-Namespaces, in dem der MQTT-Client verbunden oder getrennt wurde. |
clientAuthenticationName |
Zeichenfolge | Eindeutiger Bezeichner für den MQTT-Client, den der Client dem Dienst zur Authentifizierung präsentiert. Diese Zeichenfolge, die die Groß-/Kleinschreibung beachtet, kann bis zu 128 Zeichen lang sein und unterstützt UTF-8-Zeichen. |
clientSessionName |
Zeichenfolge | Eindeutiger Bezeichner für die Sitzung des MQTT-Clients. Diese Zeichenfolge, die die Groß-/Kleinschreibung beachtet, kann bis zu 128 Zeichen lang sein und unterstützt UTF-8-Zeichen. |
sequenceNumber |
long | Eine Zahl, die hilft, die Reihenfolge von „MQTT-Clientsitzung verbunden“- oder „MQTT-Clientsitzung getrennt“-Ereignissen anzugeben. Die letzten Ereignisse haben eine höhere Sequenznummer als frühere Ereignisse. |
disconnectionReason |
Zeichenfolge | Grund für die Trennung der Sitzung des MQTT-Clients. Der Wert könnte einer der Werte in der Tabelle mit den Trennungsgründen sein. |
createdOn |
Zeichenfolge | Der Zeitpunkt, zu dem die Clientressource erstellt wurde, basierend auf der UTC-Zeit des Anbieters. |
updatedOn |
Zeichenfolge | Der Zeitpunkt, zu dem die Clientressource zuletzt aktualisiert wurde, basierend auf der UTC-Zeit des Anbieters. Wenn die Clientressource nie aktualisiert wurde, ist dieser Wert mit dem Wert der Eigenschaft „createdOn“ identisch |
clientName |
Zeichenfolge | Der Zeitpunkt, zu dem die Clientressource zuletzt aktualisiert wurde, basierend auf der UTC-Zeit des Anbieters. Wenn die Clientressource nie aktualisiert wurde, ist dieser Wert mit dem Wert der Eigenschaft „createdOn“ identisch. |
state |
Zeichenfolge | Der konfigurierte Zustand des Clients. Der Wert kann aktiviert oder deaktiviert sein. |
attributes |
Zeichenfolge | Das Array von Schlüssel-Wert-Paarattributen, die der Clientressource zugewiesen sind. |
Gründe für die Trennung:
Die folgende Liste enthält die verschiedenen Werte für disconnectionReason (Grund für Trennung) und deren Beschreibung:
Grund für die Trennung | BESCHREIBUNG |
---|---|
ClientAuthenticationError | Der Client wurde aus Authentifizierungsgründen getrennt (z. B. Zertifikat abgelaufen, Client wurde deaktiviert oder Clientkonfiguration geändert). |
ClientAuthorizationError | Der Client wurde aus Autorisierungsgründen getrennt (z. B. aufgrund einer Änderung der Konfiguration von Themenbereichen, Berechtigungsbindungen oder Clientgruppen). |
ClientError | Der Client hat eine ungültige Anforderung gesendet oder eins der nicht unterstützten Features verwendet, die zu einer Verbindungsbeendigung durch den Dienst geführt haben. |
ClientInitiatedDisconnect | Der Client initiiert eine ordnungsgemäße Trennung über ein DISCONNECT-Paket für MQTT oder einen Close-Frame für MQTT über WebSocket. |
ConnectionLost | Die Client-Server-Verbindung wurde unterbrochen. |
IpForbidden | Die IP-Adresse des Clients wird durch den IP-Filter oder die Konfiguration privater Verbindungen blockiert. |
QuotaExceeded | Der Client hat mindestens einen der Drosselungsgrenzwerte überschritten, die zu einer Verbindungsbeendigung durch den Dienst geführt haben. |
ServerError | Die Verbindung wurde aufgrund eines unerwarteten Serverfehlers beendet. |
ServerInitiatedDisconnect | Der Server initiiert eine ordnungsgemäße Trennung aus einem beliebigen betriebsbedingten Grund. |
SessionOverflow | Die Warteschlange des Clients für nicht bestätigte QoS1-Nachrichten hat ihren Grenzwert erreicht, was zu einer Beendigung der Verbindung durch den Server geführt hat. |
SessionTakenOver | Der Client hat die Verbindung mit demselben Authentifizierungsnamen wiederhergestellt, was zur Beendigung der vorherigen Verbindung geführt hat. |
Nächste Schritte
- Weitere Informationen zu Event Grid-Systemthemen finden Sie unter Systemthemen.
- Informationen zu den vom Event Grid-Namespace ausgegebenen Ereignissen und deren Verwendung finden Sie unter MQTT-Clientlebenszyklusereignisse.