Freigeben über


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.