Namespace Azure Event Grid в качестве источника Event Grid

В этой статье описаны свойства и схема для событий namespace Azure Event Grid. Общие сведения о схемах событий см. в статье Схема событий службы "Сетка событий Azure".

Доступные типы событий

Пространство имен Azure Event Grid генерирует следующие типы событий.

Тип события Description
Microsoft.EventGrid.MQTTClientSessionConnected Опубликовано при подключении сеанса клиента MQTT к сетке событий.
Microsoft.EventGrid.MQTTClientSessionDisconnected Опубликовано при отключении сеанса клиента MQTT от сетки событий.
Microsoft.EventGrid.MQTTClientCreatedOrUpdated Опубликовано при создании или обновлении клиента MQTT в пространстве имен Event Grid.
Microsoft.EventGrid.MQTTClientDeleted Опубликовано при удалении клиента MQTT из пространства имен сетки событий.

Пример события

В этом примере события показана схема события, возникающего при подключении сеанса клиента MQTT к сетке событий:

[{
  "specversion": "1.0",
  "id": "5249c38a-a048-46dd-8f60-df34fcdab06c",
  "time": "2023-07-29T01:23:49.6454046Z",
  "type": "Microsoft.EventGrid.MQTTClientSessionConnected",
  "source": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns",
  "subject": "clients/client1/sessions/session1",
  "data": {
    "namespaceName": "myns",
    "clientAuthenticationName": "client1",
    "clientSessionName": "session1",
    "sequenceNumber": 1
  }
}]

В этом примере события показана схема события, возникающего при отключении сеанса клиента MQTT к сетке событий:

[{
  "specversion": "1.0",
  "id": "e30e5174-787d-4e19-8812-580148bfcf7b",
  "time": "2023-07-29T01:27:40.2446871Z",
  "type": "Microsoft.EventGrid.MQTTClientSessionDisconnected",
  "source": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns",
  "subject": "clients/client1/sessions/session1",
  "data": {
    "namespaceName": "myns",
    "clientAuthenticationName": "client1",
    "clientSessionName": "session1",
    "sequenceNumber": 1,
    "disconnectionReason": "ClientInitiatedDisconnect"
  }
}]

В этом примере события показана схема события, возникающего при создании или обновлении клиента MQTT в пространстве имен сетки событий:

[{
  "specversion": "1.0",
  "id": "383d1562-c95f-4095-936c-688e72c6b2bb",
  "time": "2023-07-29T01:14:35.8928724Z",
  "type": "Microsoft.EventGrid.MQTTClientCreatedOrUpdated",
  "source": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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"
    }
  }
}]

В этом примере события показана схема события, возникающего при удалении клиента MQTT из пространства имен сетки событий:

[{
  "specversion": "1.0",
  "id": "2a93aaf9-66c2-4f8e-9ba3-8d899c10bf17",
  "time": "2023-07-29T01:30:52.5620566Z",
  "type": "Microsoft.EventGrid.MQTTClientDeleted",
  "source": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns",
  "subject": "clients/client1",
  "data": {
    "namespaceName": "myns",
    "clientName": "client1",
    "clientAuthenticationName": "client1"
  }
}]

Свойства события

Все события содержат одинаковые данные верхнего уровня:

Недвижимость Тип Description
id струна Уникальный идентификатор события.
source струна Полный путь ресурса к источнику события. Это поле недоступно для записи. Сетка событий предоставляет это значение.
subject струна Заданный издателем путь к теме события.
type струна Один из зарегистрированных типов событий для этого источника событий.
time струна Время генерирования события определяется на основе времени UTC поставщика.
data объект Данные событий в пространстве имен Event Grid.
specversion струна Версия спецификации схемы CloudEvents.

Объект данных содержит следующие свойства:

Недвижимость Тип Description
namespaceName струна Имя пространства имен сетки событий, в котором клиент MQTT был подключен или отключен.
clientAuthenticationName струна Уникальный идентификатор клиента MQTT, который клиент предоставляет службе для проверки подлинности. Эта строка с учетом регистра может содержать до 128 символов и поддерживает символы UTF-8.
clientSessionName струна Уникальный идентификатор сеанса клиента MQTT. Эта строка, чувствительная к регистру, может содержать до 128 символов и поддерживает символы UTF-8.
sequenceNumber long Число, которое помогает указать порядок подключенных или отключенных событий сеанса клиента MQTT. Последнее событие будет иметь порядковый номер, превышающий предыдущее событие.
disconnectionReason струна Причина отключения сеанса клиента MQTT. Значение может быть одним из значений в таблице причин отключения.
createdOn струна Время создания клиентского ресурса на основе времени UTC поставщика.
updatedOn струна Время последнего обновления ресурса клиента на основе времени UTC поставщика. Если клиентский ресурс никогда не обновлялся, это значение идентично значению свойства "createdOn"
clientName струна Время последнего обновления ресурса клиента на основе времени UTC поставщика. Если клиентский ресурс никогда не был обновлен, это значение идентично значению свойства createdOn.
state струна Настроенное состояние клиента. Значение может быть включено или отключено.
attributes струна Массив атрибутов пары "ключ-значение", которые назначены клиентскому ресурсу.

Причины отключения:

В следующем списке приведены различные значения для причины отключения и их описания:

Причина отключения Description
ClientAuthenticationError клиент был отключен по любым причинам проверки подлинности (например, срок действия сертификата истек, клиент отключен или изменена конфигурация клиента).
ОшибкаАвторизацииКлиента Клиент был отключен по каким-либо причинам авторизации (например, из-за изменения конфигурации пространств разделов, привязок разрешений или групп клиентов)
ClientError Клиент отправил неправильный запрос или использовал одну из неподдерживаемых функций, которые привели к прекращению подключения службой.
ClientInitiatedDisconnect Клиент инициирует корректное отключение с помощью пакета DISCONNECT для MQTT или близкого кадра для MQTT через WebSocket.
ConnectionLost Подключение к клиентскому серверу потеряно.
IpForbidden IP-адрес клиента блокируется фильтром IP-адресов или конфигурацией приватных ссылок.
QuotaExceeded Клиент превысил один или несколько ограничений регулирования, которые привели к прекращению подключения службой.
ServerError подключение было завершено из-за непредвиденной ошибки сервера
ОтключениеПоИнициативеСервера Сервер инициирует корректное отключение по любой операционной причине.
SessionOverflow очередь клиента для неподтвержденных сообщений QoS1 достигла предела, что привело к разрыву соединения сервером.
Сеанс перехвачен клиент повторно подключился с тем же именем проверки подлинности, что привело к прекращению предыдущего подключения.

Дальнейшие шаги