この記事では、Azure Event Grid 名前空間イベントのプロパティとスキーマについて説明します。 イベント スキーマの概要については、「Azure Event Grid イベント スキーマ」を参照してください。
使用可能なイベントの種類
Azure Event Grid 名前空間は、次のイベントの種類を出力します。
| イベントの種類 | Description |
|---|---|
| Microsoft.EventGrid.MQTTClientSessionConnected | MQTT クライアントのセッションが Event Grid に接続されたときに発行されます。 |
| Microsoft.EventGrid.MQTTClientSessionDisconnected | MQTT クライアントのセッションが Event Grid から切断されたときに発行されます。 |
| Microsoft.EventGrid.MQTTClientCreatedOrUpdated | Event Grid 名前空間で MQTT クライアントが作成または更新されたときに発行されます。 |
| Microsoft.EventGrid.MQTTClientDeleted | MQTT クライアントが Event Grid 名前空間から削除されたときに発行されます。 |
イベントの例
このサンプル イベントは、MQTT クライアントのセッションが Event Grid に接続されたときに発生するイベントのスキーマを示しています。
[{
"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 クライアントのセッションが Event Grid に切断されたときに発生するイベントのスキーマを示しています。
[{
"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"
}
}]
このサンプル イベントは、Event Grid 名前空間で 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 クライアントが Event Grid 名前空間から削除されたときに発生するイベントのスキーマを示しています。
[{
"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 |
文字列 | イベント ソースの完全なリソース パス。 このフィールドは書き込み可能ではありません。 この値は Event Grid によって指定されます。 |
subject |
文字列 | 発行元が定義したイベントの対象のパス。 |
type |
文字列 | このイベント ソースに登録されているイベントの種類の 1 つ。 |
time |
文字列 | プロバイダーの UTC 時刻に基づいてイベントが生成される時刻。 |
data |
オブジェクト | Event Grid 名前空間のイベント データ。 |
specversion |
文字列 | CloudEvents スキーマ仕様バージョン。 |
データ オブジェクトには、次のプロパティが含まれています。
| プロパティ | タイプ | Description |
|---|---|---|
namespaceName |
文字列 | MQTT クライアントが接続または切断された Event Grid 名前空間の名前。 |
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 |
文字列 | クライアント リソースに割り当てられるキーと値のペア属性の配列。 |
切断の理由:
次の一覧では、disconnectionReason のさまざまな値とその説明について詳しく説明します。
| 切断の理由 | Description |
|---|---|
| ClientAuthenticationError | 認証上の理由でクライアントが切断された (証明書の有効期限切れ、クライアントが無効になった、クライアント構成が変更されたなど) |
| クライアント認証エラー | 承認の理由でクライアントが切断されました (たとえば、トピックスペース、アクセス許可バインディング、またはクライアント グループの構成が変更されたため) |
| ClientError | クライアントが不適切な要求を送信したか、サポートされていない機能の 1 つを使用して、サービスによって接続が終了しました。 |
| ClientInitiatedDisconnect | クライアントは、MQTT の DISCONNECT パケットまたは WebSocket 経由の MQTT 用クローズフレームを使用して、円滑に切断を開始します。 |
| ConnectionLost | クライアントとサーバーの接続が失われます。 |
| IpForbidden | クライアントの IP アドレスは、IP フィルターまたはプライベート リンクの構成によってブロックされます。 |
| QuotaExceeded | クライアントが 1 つ以上の調整制限を超えたので、サービスによる接続の終了が発生しました。 |
| ServerError | 予期しないサーバー エラーが原因で接続が終了しました |
| ServerInitiatedDisconnect | サーバーが操作上の理由で正常な切断を開始する |
| SessionOverflow | クライアントの未確認 QoS1 メッセージのキューが制限に達したため、サーバーによる接続終了が発生しました |
| SessionTakenOver | クライアントが同じ認証名で再接続され、その結果、前の接続が終了しました。 |
次のステップ
- Event Grid のシステム トピックの詳細については、「システム」トピックを参照してください。
- Event Grid 名前空間によって生成されるイベントとその使用方法については、「 MQTT クライアント ライフ サイクル イベント」を参照してください。