Event Grid 원본인 Azure Event Grid 네임스페이스(미리 보기)

이 문서에서는 Azure Event Grid 네임스페이스 이벤트에 대한 속성과 스키마를 제공합니다. 이벤트 스키마에 대한 소개는 Azure Event Grid 이벤트 스키마를 참조하세요.

사용할 수 있는 이벤트 유형

Azure Event Grid 네임스페이스(미리 보기)는 다음 이벤트 유형을 내보냅니다.

이벤트 유형 설명
Microsoft.EventGrid.MQTTClientSessionConnected MQTT 클라이언트 세션이 Event Grid에 연결되면 게시됩니다.
Microsoft.EventGrid.MQTTClientSessionDisconnected MQTT 클라이언트 세션이 Event Grid에서 연결이 끊어지면 게시됩니다.
Microsoft.EventGrid.MQTTClientCreatedOrUpdated Event Grid 네임스페이스에서 MQTT 클라이언트가 만들어지거나 업데이트될 때 게시됩니다.
Microsoft.EventGrid.MQTTClientDeleted Event Grid 네임스페이스에서 MQTT 클라이언트가 삭제되면 게시됩니다.

예제 이벤트

이 샘플 이벤트는 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/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
  }
}]

이 샘플 이벤트는 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/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"
  }
}]

이 샘플 이벤트는 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/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"
    }
  }
}]

이 샘플 이벤트는 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/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.EventGrid/namespaces/myns",
  "subject": "clients/client1",
  "data": {
    "namespaceName": "myns",
    "clientName": "client1",
    "clientAuthenticationName": "client1"
  }
}]

이벤트 속성

모든 이벤트에는 동일한 최상위 수준 데이터가 포함됩니다.

속성 Type Description
id string 이벤트에 대한 고유 식별자입니다.
source string 이벤트 원본에 대한 전체 리소스 경로입니다. 이 필드는 쓸 수 없습니다. Event Grid는 이 값을 제공합니다.
subject string 게시자가 정의한 이벤트 주체의 경로입니다.
type string 이 이벤트 원본에 대해 등록된 이벤트 유형 중 하나입니다.
time string 공급자의 UTC 시간을 기준으로 이벤트가 생성되는 시간입니다.
data 개체 Event Grid 네임스페이스 이벤트 데이터입니다.
specversion string CloudEvents 스키마 사양 버전입니다.

데이터 개체에는 다음 속성이 포함되어 있습니다.

속성 Type Description
namespaceName string MQTT 클라이언트가 연결되거나 연결이 끊어진 Event Grid 네임스페이스의 이름입니다.
clientAuthenticationName string 클라이언트가 인증을 위해 서비스에 제공하는 MQTT 클라이언트의 고유 식별자입니다. 대/소문자를 구분하는 이 문자열은 최대 128자까지 가능하며 UTF-8 문자를 지원합니다.
clientSessionName string MQTT 클라이언트 세션의 고유 식별자입니다. 대/소문자를 구분하는 이 문자열은 최대 128자까지 가능하며 UTF-8 문자를 지원합니다.
sequenceNumber long MQTT 클라이언트 세션 연결 또는 연결 끊김 이벤트의 순서를 나타내는 데 도움이 되는 숫자입니다. 최신 이벤트는 이전 이벤트보다 시퀀스 번호가 높습니다.
disconnectionReason string MQTT 클라이언트 세션 연결이 끊어진 이유입니다. 값은 연결 끊김 이유 테이블의 값 중 하나일 수 있습니다.
createdOn string 공급자의 UTC 시간을 기준으로 클라이언트 리소스가 만들어지는 시간입니다.
updatedOn string 공급자의 UTC 시간을 기준으로 클라이언트 리소스가 마지막으로 업데이트된 시간입니다. 클라이언트 리소스가 업데이트되지 않은 경우 이 값은 'createdOn' 속성 값과 동일합니다.
clientName string 공급자의 UTC 시간을 기준으로 클라이언트 리소스가 마지막으로 업데이트된 시간입니다. 클라이언트 리소스가 업데이트되지 않은 경우 이 값은 'createdOn' 속성 값과 동일합니다.
state string 클라이언트의 구성된 상태입니다. 값은 사용 또는 사용 안 함일 수 있습니다.
attributes string 클라이언트 리소스에 할당된 키-값 쌍 특성의 배열입니다.

연결 끊김 이유:

다음 목록에서는 disconnectionReason의 다양한 값과 해당 설명을 자세히 설명합니다.

연결 끊김 이유 설명
ClientAuthenticationError 인증 이유로 인해 클라이언트 연결이 끊어졌습니다(예: 인증서 만료, 클라이언트 사용하지 않도록 설정 또는 클라이언트 구성 변경).
ClientAuthorizationError 권한 부여 이유(예: 항목 공간, 권한 바인딩 또는 클라이언트 그룹의 구성 변경으로 인해)로 인해 클라이언트 연결이 끊어졌습니다.
ClientError 클라이언트가 잘못된 요청을 보냈거나 지원되지 않는 기능 중 하나를 사용하여 서비스에 의해 연결이 종료되었습니다.
ClientInitiatedDisconnect 클라이언트는 MQTT에 대한 DISCONNECT 패킷 또는 WebSocket을 통한 MQTT에 대한 닫기 프레임을 통해 정상적인 연결 끊기를 시작합니다.
ConnectionLost 클라이언트-서버 연결이 끊어졌습니다.
IpForbidden 클라이언트의 IP 주소는 IP 필터 또는 프라이빗 링크 구성에 의해 차단됩니다.
QuotaExceeded 클라이언트가 하나 이상의 제한 한도를 초과하여 서비스에 의한 연결이 종료되었습니다.
ServerError 예기치 못한 서버 오류로 인해 연결이 종료되었습니다.
ServerInitiatedDisconnect 서버는 운영상의 이유로 정상적인 연결 끊기를 시작합니다.
SessionOverflow 확인되지 않은 QoS1 메시지에 대한 클라이언트 큐가 한도에 도달하여 서버에 의해 연결이 종료되었습니다.
SessionTakenOver 클라이언트가 동일한 인증 이름으로 다시 연결되었으며, 이로 인해 이전 연결이 종료되었습니다.

다음 단계