Azure IoT Hub 모니터링 데이터 참조

이 문서에는 이 서비스에 대한 모든 모니터링 참조 정보가 포함되어 있습니다.

IoT Hub에 대해 수집할 수 있는 데이터 및 사용 방법에 대한 자세한 내용은 Azure IoT 모니터링을 참조하세요.

메트릭

이 섹션에는 이 서비스에 대해 자동으로 모은 플랫폼 메트릭이 모두 나열되어 있습니다. 이러한 메트릭은 Azure Monitor에서 지원되는 모든 플랫폼 메트릭의 전역 목록의 일부이기도 합니다.

메트릭 보존에 관한 자세한 내용은 Azure Monitor 메트릭 개요를 참조하세요.

Microsoft.Devices/IoTHubs에 대해 지원되는 메트릭

다음 표에서는 Microsoft.Devices/IoTHubs 리소스 종류에 사용할 수 있는 메트릭을 나열합니다.

  • 모든 테이블에 모든 열이 있는 것은 아닙니다.
  • 일부 열은 페이지의 보기 영역 밖에 있을 수 있습니다. 사용 가능한 모든 열을 보려면 테이블 확장을 선택합니다.

테이블 제목

  • 범주 - 메트릭 그룹 또는 분류입니다.
  • 메트릭 - Azure Portal에 표시되는 메트릭 표시 이름입니다.
  • REST API의 이름 - REST API에서 참조되는 메트릭 이름입니다.
  • 단위 - 측정 단위입니다.
  • 집계 - 기본 집계 형식입니다. 유효한 값은 평균(Avg), 최소(Min), 최대(Max), 합계(Sum), 개수입니다.
  • 차원 - 메트릭에 사용할 수 있는 차원입니다.
  • 시간 조직 - 메트릭이 샘플링되는 간격입니다. 예를 들어, PT1M은 메트릭이 1분마다, PT30M은 30분마다, PT1H는 1시간마다 샘플링됨을 나타냅니다.
  • DS 내보내기- 진단 설정을 통해 메트릭을 Azure Monitor 로그로 내보낼 수 있는지 여부를 나타냅니다. 메트릭 내보내기에 대한 자세한 내용은 Azure Monitor의 진단 설정 생성을 참조하세요.
메트릭 REST API의 이름 단위 집계 차원 시간 조직 DS 내보내기
C2D 메시지가 중단됨

디바이스에서 중단한 클라우드-디바이스 메시지 수
c2d.commands.egress.abandon.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
C2D 메시지 배달 완료

디바이스에서 성공적으로 배달 완료한 클라우드-디바이스 메시지 수
c2d.commands.egress.complete.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
C2D 메시지가 거부됨

디바이스에서 거부된 클라우드-디바이스 메시지 수
c2d.commands.egress.reject.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
실패한 직접 메서드 호출

실패한 모든 직접 메서드 호출의 수입니다.
c2d.methods.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
직접 메서드 호출의 요청 크기

성공한 모든 직접 메서드 요청의 평균, 최소값, 최대값입니다.
c2d.methods.requestSize 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
직접 메서드 호출의 응답 크기

성공한 모든 직접 메서드 응답의 평균, 최소값, 최대값입니다.
c2d.methods.responseSize 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
성공적인 직접 메서드 호출

성공한 모든 직접 메서드 호출의 수입니다.
c2d.methods.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
백 엔드에서 실패한 트윈 읽기

실패한 모든 백 엔드 시작 쌍 읽기 수입니다.
c2d.twin.read.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
백 엔드에서 트윈 읽기의 응답 크기

성공한 모든 백 엔드 시작 쌍 읽기 수의 평균, 최소값 및 최대값입니다.
c2d.twin.read.size 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
백 엔드에서 성공적인 트윈 읽기

성공한 모든 백 엔드 시작 쌍 읽기 수입니다.
c2d.twin.read.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
백 엔드에서 실패한 트윈 업데이트

실패한 모든 백 엔드 시작 쌍 업데이트 수입니다.
c2d.twin.update.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
백 엔드의 트윈 업데이트 크기

성공한 모든 백 엔드 시작 쌍 업데이트 수의 평균, 최소 및 최대 크기입니다.
c2d.twin.update.size 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
백 엔드에서 성공적인 트윈 업데이트

성공한 모든 백 엔드 시작 쌍 업데이트 수입니다.
c2d.twin.update.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
C2D 메시지 만료됨

만료된 클라우드-디바이스 메시지 수
C2DMessagesExpired Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
구성 메트릭

구성 작업에 대한 메트릭
configurations Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
연결된 디바이스

IoT 허브에 연결된 디바이스 수
connectedDeviceCount Count 평균, 최대, 최소 <없음> PT1M 아니요
라우팅: 메시지/이벤트에 배달된 메시지

IoT Hub 라우팅에서 기본 제공 엔드포인트(메시지/이벤트)에 메시지를 성공적으로 배달한 횟수입니다.
d2c.endpoints.egress.builtIn.events Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: 이벤트 허브에 배달된 메시지

IoT Hub 라우팅이 이벤트 허브 엔드포인트에 메시지를 성공적으로 배달한 횟수입니다.
d2c.endpoints.egress.eventHubs Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: Service Bus 큐에 배달된 메시지

IoT Hub 라우팅에서 Service Bus 큐 엔드포인트에 메시지를 성공적으로 배달한 횟수입니다.
d2c.endpoints.egress.serviceBusQueues Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: Service Bus 토픽에 배달된 메시지

IoT Hub 라우팅에서 Service Bus 토픽 엔드포인트에 메시지를 성공적으로 배달한 횟수입니다.
d2c.endpoints.egress.serviceBusTopics Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: 스토리지에 배달된 메시지

IoT Hub 라우팅에서 스토리지 엔드포인트에 메시지를 성공적으로 배달한 횟수입니다.
d2c.endpoints.egress.storage Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: 스토리지에 배달된 Blob

IoT Hub 라우팅에서 스토리지 엔드포인트에 Blob을 배달한 횟수입니다.
d2c.endpoints.egress.storage.blobs Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: 스토리지에 배달된 데이터

IoT Hub 라우팅에서 스토리지 엔드포인트에 배달된 데이터 양입니다(바이트).
d2c.endpoints.egress.storage.bytes 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: 메시지/이벤트에 대한 메시지 대기 시간

IoT Hub에 대한 메시지 수신과 기본 제공 엔드포인트(메시지.이벤트)에 대한 원격 분석 메시지 수신 간의 평균 대기 시간(밀리초)입니다.
d2c.endpoints.latency.builtIn.events 밀리초 평균, 최소, 최대 <없음> PT1M
라우팅: 이벤트 허브에 대한 메시지 대기 시간

IoT Hub로의 메시지 수신과 이벤트 허브 엔드포인트로의 메시지 수신 사이의 평균 대기 시간(밀리초)입니다.
d2c.endpoints.latency.eventHubs 밀리초 평균, 최소, 최대 <없음> PT1M
라우팅: Service Bus 큐에 대한 메시지 대기 시간

IoT Hub에 대한 메시지 수신과 Service Bus 큐 엔드포인트에 대한 원격 분석 메시지 수신 간의 평균 대기 시간(밀리초)입니다.
d2c.endpoints.latency.serviceBusQueues 밀리초 평균, 최소, 최대 <없음> PT1M
라우팅: Service Bus 토픽에 대한 메시지 대기 시간

IoT Hub에 대한 메시지 수신과 Service Bus 토픽 엔드포인트에 대한 원격 분석 메시지 수신 간의 평균 대기 시간(밀리초)입니다.
d2c.endpoints.latency.serviceBusTopics 밀리초 평균, 최소, 최대 <없음> PT1M
라우팅: 스토리지에 대한 메시지 대기 시간

IoT Hub에 대한 메시지 수신과 스토리지 엔드포인트에 대한 원격 분석 메시지 수신 간의 평균 대기 시간(밀리초)입니다.
d2c.endpoints.latency.storage 밀리초 평균, 최소, 최대 <없음> PT1M
라우팅: 삭제된 원격 분석 메시지

데드 엔드포인트로 인해 IoT Hub 라우팅에서 메시지가 삭제된 횟수입니다. 삭제된 메시지가 배달되지 않으므로 이 값은 대체 경로에 배달된 메시지를 계산하지 않습니다.
d2c.telemetry.egress.dropped Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: 대체(fallback)로 배달된 메시지

IoT Hub 라우팅이 대체 경로와 연결된 엔드포인트에 메시지를 배달한 횟수입니다.
d2c.telemetry.egress.fallback Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: 원격 분석 메시지 호환되지 않음

엔드포인트와의 비호환성으로 인해 IoT Hub 라우팅이 메시지를 배달하지 못한 횟수입니다. 이 값은 재시도를 포함하지 않습니다.
d2c.telemetry.egress.invalid Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: 분리된 원격 분석 메시지

메시지가 라우팅 규칙(대체 규칙 포함)과 일치하지 않았으므로 IoT Hub 라우팅에 의해 분리된 횟수입니다.
d2c.telemetry.egress.orphaned Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅: 배달된 원격 분석 메시지

IoT Hub 라우팅을 사용하여 모든 엔드포인트에 메시지가 성공적으로 배달된 횟수입니다. 메시지가 여러 엔드포인트로 라우팅되는 경우 이 값은 배달에 성공할 때마다 하나씩 증가합니다. 메시지가 동일한 엔드포인트에 여러 번 전달되는 경우 이 값은 배달에 성공할 때마다 하나씩 증가합니다.
d2c.telemetry.egress.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
원격 분석 메시지 보내기 시도

IoT Hub로 전송하려고 시도한 디바이스-클라우드 원격 분석 메시지 수
d2c.telemetry.ingress.allProtocol Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
제한 오류 수

디바이스 처리량 제한으로 인한 제한 오류 수
d2c.telemetry.ingress.sendThrottle Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
전송된 원격 분석 메시지

IoT Hub로 보내기 성공한 디바이스-클라우드 원격 분석 메시지 수
d2c.telemetry.ingress.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
디바이스에서 실패한 쌍 읽기

실패한 모든 디바이스 시작 쌍 읽기 수입니다.
d2c.twin.read.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
디바이스에서 쌍 읽기의 응답 크기

성공한 모든 디바이스 시작 쌍 읽기 수의 평균, 최소값 및 최대값입니다.
d2c.twin.read.size 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
디바이스에서 성공적인 쌍 읽기

성공한 모든 디바이스 시작 쌍 읽기 수입니다.
d2c.twin.read.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
디바이스에서 실패한 쌍 업데이트

실패한 모든 디바이스 시작 쌍 업데이트 수입니다.
d2c.twin.update.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
디바이스의 쌍 업데이트 크기

성공한 모든 디바이스 시작 쌍 업데이트 수의 평균, 최소 및 최대 크기입니다.
d2c.twin.update.size 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
디바이스에서 성공적인 쌍 업데이트

성공한 모든 디바이스 시작 쌍 업데이트 수입니다.
d2c.twin.update.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
사용된 총 메시지 수

현재 사용되는 전체 메시지 수
dailyMessageQuotaUsed Count 평균, 최소, 최대 <없음> PT1M
총 디바이스 데이터 사용량

IotHub에 연결된 모든 디바이스에서 전송된 바이트
deviceDataUsage 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
총 디바이스 데이터 사용량(미리 보기)

IotHub에 연결된 모든 디바이스에서 전송된 바이트
deviceDataUsageV2 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
연결된 디바이스(사용되지 않음)

IoT 허브에 연결된 디바이스 수
devices.connectedDevices.allProtocol Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
총 디바이스(사용되지 않음)

IoT 허브에 등록된 디바이스 수
devices.totalDevices Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
Event Grid 배달

Event Grid에 게시된 IoT Hub 이벤트 수. 성공 및 실패한 요청 수에 대한 결과 차원을 사용합니다. EventType 차원은 이벤트 형식(https://aka.ms/ioteventgrid)을 보여 줍니다.
EventGridDeliveries Count Average, Minimum, Maximum, Total(합계) Result, EventType PT1M
Event Grid 대기 시간

Iot Hub 이벤트가 생성된 시간부터 Event Grid에 게시된 시간까지의 평균 대기 시간(밀리초). 이 숫자는 모든 이벤트 유형의 평균입니다. 특정 이벤트 유형의 대기 시간을 확인하려면 EventType 차원을 사용합니다.
EventGridLatency 밀리초 평균, 최소, 최대 EventType PT1M
실패한 작업 취소

작업 취소에 대한 실패한 모든 호출 수입니다.
jobs.cancelJob.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
성공한 작업 취소

작업 취소에 대한 성공한 모든 호출 수입니다.
jobs.cancelJob.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
완료된 작업

완료된 모든 작업의 수입니다.
jobs.completed Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
메서드 호출 작업의 생성 실패

직접 메서드 호출 작업에 대한 실패한 모든 만들기의 수입니다.
jobs.createDirectMethodJob.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
메서드 호출 작업의 성공적인 생성

직접 메서드 호출 작업에 대한 성공한 모든 만들기의 수입니다.
jobs.createDirectMethodJob.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
트윈 업데이트 작업 만들기 실패

쌍 업데이트 작업에 대한 실패한 모든 만들기의 수입니다.
jobs.createTwinUpdateJob.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
쌍 업데이트 작업의 성공적인 생성

쌍 업데이트 작업에 대한 성공한 모든 만들기의 수입니다.
jobs.createTwinUpdateJob.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
실패한 작업

실패한 모든 작업의 수입니다.
jobs.failed Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
작업 나열에 실패한 호출

목록 작업에 대한 실패한 모든 호출 수입니다.
jobs.listJobs.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
작업 나열에 대한 호출 성공

목록 작업에 대한 성공한 모든 호출 수입니다.
jobs.listJobs.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
실패한 작업 쿼리

쿼리 작업에 대한 실패한 모든 호출 수입니다.
jobs.queryJobs.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
성공한 작업 쿼리

쿼리 작업에 대한 성공한 모든 호출 수입니다.
jobs.queryJobs.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
라우팅 배달 메시지 크기(바이트)(미리 보기)

IoT Hub가 엔드포인트에 전달한 메시지의 총 크기(바이트)입니다. EndpointName 및 EndpointType 차원을 사용하여 다른 엔드포인트에 배달된 메시지의 크기를 바이트 단위로 볼 수 있습니다. 메시지가 여러 엔드포인트에 전달되거나 메시지가 동일한 엔드포인트에 여러 번 배달되는 경우를 포함하여 배달된 모든 메시지에 대해 메트릭 값이 증가합니다.
RoutingDataSizeInBytesDelivered 바이트 Average, Minimum, Maximum, Total(합계) EndpointType, , EndpointNameRoutingSource PT1M
라우팅 배달(미리 보기)

IoT Hub가 라우팅을 사용하여 모든 엔드포인트에 메시지를 전송하려고 시도한 횟수. 성공 또는 실패한 시도 횟수를 보려면 결과 차원을 사용합니다. 오류의 원인(예: 유효하지 않음, 삭제됨 또는 분리됨)을 보려면 FailureReasonCategory 차원을 사용합니다. EndpointName 및 EndpointType 차원을 사용하여 다른 엔드포인트에 배달된 메시지 수를 파악할 수도 있습니다. 메트릭 값은 메시지가 여러 엔드포인트에 전달되거나 메시지가 동일한 엔드포인트에 여러 번 배달되는 경우를 포함하여 각 배달 시도에 대해 하나씩 증가합니다.
RoutingDeliveries Count Average, Minimum, Maximum, Total(합계) EndpointType, EndpointName, FailureReasonCategory, ResultRoutingSource PT1M
라우팅 배달 대기 시간(미리 보기)

IoT Hub로의 메시지 수신과 엔드포인트로의 원격 분석 메시지 수신 사이의 평균 대기 시간(밀리초)입니다. EndpointName 및 EndpointType 차원을 사용하여 여러 엔드포인트의 대기 시간을 파악할 수 있습니다.
RoutingDeliveryLatency 밀리초 평균, 최소, 최대 EndpointType, , EndpointNameRoutingSource PT1M
총 디바이스

IoT 허브에 등록된 디바이스 수
totalDeviceCount Count 평균, 최대, 최소 <없음> PT1M 아니요
실패한 쌍 쿼리

실패한 모든 쌍 쿼리의 수입니다.
twinQueries.failure Count Average, Minimum, Maximum, Total(합계) <없음> PT1M
쌍 쿼리 결과 크기

성공한 모든 쌍 쿼리 결과 크기의 평균, 최소값 및 최대값입니다.
twinQueries.resultSize 바이트 Average, Minimum, Maximum, Total(합계) <없음> PT1M
성공적인 쌍 쿼리

성공한 모든 쌍 쿼리의 수입니다.
twinQueries.success Count Average, Minimum, Maximum, Total(합계) <없음> PT1M

지원되는 집계

테이블의 집계 유형 열은 차트 또는 경고에 대해 메트릭을 선택할 때 사용되는 기본 집계에 해당합니다.

메트릭에 대한 집계를 보여 주는 스크린샷

대부분의 메트릭의 경우 모든 집계 형식이 유효합니다. 단위 열 값이 Count인 개수 메트릭의 경우 일부 집계만 유효합니다. 개수 메트릭은 다음 두 가지 유형 중 하나일 수 있습니다.

  • 단일 지점 개수 메트릭의 경우 측정된 작업이 발생될 때마다 IoT Hub가 단일 데이터 요소(기본적으로 1)를 등록합니다. 그런 다음, Azure Monitor는 지정된 세분성에 대해 이러한 데이터 요소의 합계를 계산합니다. 단일 지점 메트릭의 예로는 전송원격 분석 메시지와 C2D 메시지 배달이 완료되었습니다. 해당 메트릭의 경우 관련된 유일한 집계 유형은 합계(Sum)입니다. 포털을 사용하면 최소, 최대 및 평균을 선택할 수 있습니다. 이러한 값은 항상 1입니다.

  • 스냅샷 수 메트릭의 경우 IoT Hub는 측정된 작업이 발생할 때 총 개수를 등록합니다. 현재 IoT Hub에서 내보내는 스냅샷메트릭에는 사용되는 총 메시지 수, 총 디바이스, 연결된 디바이스의 세 가지가 있습니다. 이러한 메트릭은 매번 "총" 수량을 표시하므로 지정된 세분성에 대해 합계를 계산하는 것은 의미가 없습니다. Azure Monitor는 해당 메트릭의 집계 유형에 대한 평균, 최솟값, 최댓값을 선택하는 것을 제한합니다.

메트릭 차원

메트릭 차원에 대한 자세한 내용은 다차원 메트릭을 참조하세요.

이 서비스에는 메트릭과 관련된 다음과 같은 차원이 있습니다.

차원 이름 설명
EndpointName 엔드포인트 이름
EndpointType eventHubs, serviceBusQueues, cosmosDB, serviceBusTopics, builtin 또는 blobStorage
EventType Microsoft.Devices.DeviceCreated, Microsoft.Devices.DeviceDeleted, Microsoft.Devices.DeviceConnected, Microsoft.Devices.DeviceDisconnected 또는 Microsoft.Devices.DeviceTelemetry
자세한 내용은 이벤트 유형을 참조 하세요.
FailureReasonCategory 다음 값 중 하나: invalid, dropped, orphaned또는 null.
결과 success 또는 failure 중 하나입니다.
RoutingSource Device Messages, , Twin Change EventsDevice Lifecycle Events

메트릭 표시 이름 및 집계

다음 표에서는 앞의 표에 설명된 메트릭에 대한 자세한 정보를 제공합니다. 일반 범주별로 IoT Hub 플랫폼 메트릭을 표시하고 Azure Portal에 할당된 대로 표시 이름으로 메트릭을 나열합니다.

클라우드-디바이스 명령 메트릭:

메트릭 표시 이름 메트릭 단위 설명
C2D 메시지 만료됨 C2DMessagesExpired Count 만료된 클라우드-디바이스 메시지 수
C2D 메시지 배달 완료 c2d.commands.egress.complete.success Count 디바이스에서 성공적으로 배달 완료한 클라우드-디바이스 메시지 수
C2D 메시지가 중단됨 c2d.commands.egress.abandon.success Count 디바이스에서 중단한 클라우드-디바이스 메시지 수
C2D 메시지가 거부됨 c2d.commands.egress.reject.success Count 디바이스에서 거부된 클라우드-디바이스 메시지 수

단위 값이 Count메트릭의 경우 합계(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

클라우드-디바이스 직접 메서드 메트릭:

메트릭 표시 이름 메트릭 단위 설명
실패한 직접 메서드 호출 c2d.methods.failure Count 실패한 모든 직접 메서드 호출의 수입니다.
직접 메서드 호출의 요청 크기 c2d.methods.requestSize 바이트 성공한 모든 직접 메서드 요청의 수입니다.
직접 메서드 호출의 응답 크기 c2d.methods.responseSize 바이트 성공한 모든 직접 메서드 응답의 수입니다.
성공한 직접 메서드 호출 c2d.methods.success Count 성공한 모든 직접 메서드 호출의 수입니다.

단위 값이 개수인 메트릭에 대해서만 합계(sum) 집계가 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

클라우드-디바이스 쌍 작업 메트릭:

메트릭 표시 이름 메트릭 단위 설명
백 엔드에서의 실패한 쌍 읽기 c2d.twin.read.failure Count 실패한 모든 백 엔드 시작 쌍 읽기 수입니다.
백 엔드에서의 실패한 쌍 업데이트 c2d.twin.update.failure Count 실패한 모든 백 엔드 시작 쌍 업데이트 수입니다.
백 엔드에서의 쌍 읽기 응답 크기 c2d.twin.read.size 바이트 성공한 모든 백 엔드 시작 쌍 읽기 수입니다.
백 엔드에서의 쌍 업데이트 크기 c2d.twin.update.size 바이트 성공한 모든 백 엔드 시작 트윈 업데이트의 총 크기입니다.
백 엔드에서의 성공한 쌍 읽기 c2d.twin.read.success Count 성공한 모든 백 엔드 시작 쌍 읽기 수입니다.
백 엔드에서의 성공한 쌍 업데이트 c2d.twin.update.success Count 성공한 모든 백 엔드 시작 쌍 업데이트 수입니다.

단위 값이 Count메트릭의 경우 합계(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

구성 메트릭:

메트릭 표시 이름 메트릭 단위 설명
구성 메트릭 구성 Count 대상 디바이스 집합에서 디바이스 구성 및 IoT Edge 배포에 대해 수행된 총 CRUD 작업 수입니다. 이러한 구성으로 인해 디바이스 쌍 또는 모듈 쌍을 수정하는 작업의 수가 포함됩니다.

단위 값이 Count메트릭의 경우 합계(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

일일 할당량 메트릭:

메트릭 표시 이름 메트릭 단위 설명
총 디바이스 데이터 사용량 deviceDataUsage 바이트 IotHub에 연결된 모든 디바이스에서 전송된 바이트
총 디바이스 데이터 사용량(미리 보기) deviceDataUsageV2 합계 IotHub에 연결된 모든 디바이스에서 전송된 바이트
사용된 전체 메시지 수 dailyMessageQuotaUsed Count 오늘 사용된 전체 메시지 수입니다. 매일 00:00 UTC에 0으로 다시 설정되는 누적 값입니다.

사용된 총 메시지 수의 경우 최소, 최대 및 평균 집계만 지원됩니다. 자세한 내용은 지원되는 집계를 참조하세요.

디바이스 메트릭:

메트릭 표시 이름 메트릭 단위 설명
총 디바이스(사용되지 않음) devices.totalDevices Count IoT 허브에 등록된 디바이스 수
연결된 디바이스(사용되지 않음) devices.connectedDevices.allProtocol Count IoT 허브에 연결된 디바이스 수
전체 디바이스 totalDeviceCount Count IoT 허브에 등록된 디바이스 수
연결된 디바이스 connectedDeviceCount Count IoT 허브에 연결된 디바이스 수

Total 디바이스(사용되지 않음)연결된 디바이스(사용되지 않음)의 경우 총(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

총 디바이스연결된 디바이스의 경우 최소, 최대 및 평균 집계만 유효합니다. 자세한 내용은 지원되는 집계를 참조하세요.

진단 설정을 통해 총 디바이스연결된 디바이스를 내보낼 수 없습니다.

디바이스 원격 분석 메트릭:

메트릭 표시 이름 메트릭 단위 설명
제한 오류 수 d2c.telemetry.ingress.sendThrottle Count 디바이스 처리량 제한으로 인한 제한 오류 수
원격 분석 '메시지 보내기' 시도 d2c.telemetry.ingress.allProtocol Count IoT Hub로 전송하려고 시도한 디바이스-클라우드 원격 분석 메시지 수
보낸 원격 분석 메시지 d2c.telemetry.ingress.success Count IoT Hub로 보내기 성공한 디바이스-클라우드 원격 분석 메시지 수

단위 값이 Count메트릭의 경우 합계(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

디바이스-클라우드 쌍 작업 메트릭:

메트릭 표시 이름 메트릭 단위 설명
디바이스에서의 실패한 쌍 읽기 d2c.twin.read.failure Count 실패한 모든 디바이스 시작 쌍 읽기 수입니다.
디바이스에서의 실패한 쌍 업데이트 d2c.twin.update.failure Count 실패한 모든 디바이스 시작 쌍 업데이트 수입니다.
디바이스에서의 쌍 읽기 응답 크기 d2c.twin.read.size 바이트 성공한 모든 디바이스 시작 쌍 읽기의 수입니다.
디바이스에서의 쌍 업데이트 크기 d2c.twin.update.size 바이트 성공한 모든 디바이스 시작 쌍 업데이트의 총 크기입니다.
디바이스에서의 성공한 쌍 읽기 d2c.twin.read.success Count 성공한 모든 디바이스 시작 쌍 읽기 수입니다.
디바이스에서의 성공한 쌍 업데이트 d2c.twin.update.success Count 성공한 모든 디바이스 시작 쌍 업데이트 수입니다.

단위 값이 Count메트릭의 경우 합계(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

Event Grid 메트릭:

메트릭 표시 이름 메트릭 단위 설명
Event Grid 배달 EventGridDeliveries Count Event Grid에 게시된 IoT Hub 이벤트 수. 성공 및 실패한 요청 수에 대한 결과 차원을 사용합니다. EventType 차원은 이벤트 형식(https://aka.ms/ioteventgrid)을 보여 줍니다.
Event Grid 대기 시간 EventGridLatency 밀리초 Iot Hub 이벤트가 생성된 시간부터 Event Grid에 게시된 시간까지의 평균 대기 시간(밀리초). 이 숫자는 모든 이벤트 유형의 평균입니다. 특정 이벤트 유형의 대기 시간을 확인하려면 EventType 차원을 사용합니다.

단위 값이 Count메트릭의 경우 합계(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

작업 메트릭:

메트릭 표시 이름 메트릭 단위 설명
완료된 작업 jobs.completed Count 완료된 모든 작업의 수입니다.
목록 작업에 대한 실패한 호출 jobs.listJobs.failure Count 목록 작업에 대한 실패한 모든 호출 수입니다.
실패한 메서드 호출 작업 만들기 jobs.createDirectMethodJob.failure Count 직접 메서드 호출 작업에 대한 실패한 모든 만들기의 수입니다.
쌍 업데이트 작업에 대한 실패한 만들기 jobs.createTwinUpdateJob.failure Count 쌍 업데이트 작업에 대한 실패한 모든 만들기의 수입니다.
실패한 작업 취소 jobs.cancelJob.failure Count 작업 취소에 대한 실패한 모든 호출 수입니다.
실패한 작업 쿼리 jobs.queryJobs.failure Count 쿼리 작업에 대한 실패한 모든 호출 수입니다.
실패한 작업 jobs.failed Count 실패한 모든 작업의 수입니다.
목록 작업에 대한 성공한 호출 jobs.listJobs.success Count 목록 작업에 대한 성공한 모든 호출 수입니다.
메서드 호출 작업에 대한 성공한 만들기 jobs.createDirectMethodJob.success Count 직접 메서드 호출 작업에 대한 성공한 모든 만들기의 수입니다.
쌍 업데이트 작업에 대한 성공한 만들기 jobs.createTwinUpdateJob.
성공
Count 쌍 업데이트 작업에 대한 성공한 모든 만들기의 수입니다.
성공한 작업 취소 jobs.cancelJob.success Count 작업 취소에 대한 성공한 모든 호출 수입니다.
성공한 작업 쿼리 jobs.queryJobs.success Count 쿼리 작업에 대한 성공한 모든 호출 수입니다.

단위 값이 Count메트릭의 경우 합계(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

라우팅 메트릭:

메트릭 표시 이름 메트릭 단위 설명
라우팅 전송(미리 보기) RoutingDeliveries Count 라우팅 배달 메트릭. 차원을 사용하여 특정 엔드포인트 또는 특정 라우팅 원본의 배달 상태를 식별할 수 있습니다.
라우팅 전송 메시지 크기(바이트)(미리 보기) RoutingDataSizeInBytesDelivered 바이트 IoT Hub에서 사용자 지정 엔드포인트 및 기본 제공 엔드포인트로 라우팅되는 총 바이트 수입니다. 차원을 사용하여 특정 엔드포인트 또는 특정 라우팅 원본으로 라우팅되는 데이터 크기를 식별합니다.
라우팅 배달 대기 시간(미리 보기) RoutingDeliveryLatency 밀리초 라우팅 전달 대기 시간 메트릭입니다. 차원을 사용하여 특정 엔드포인트 또는 특정 라우팅 원본에 대한 대기 시간을 식별합니다.
라우팅: 스토리지에 배달된 Blob d2c.endpoints.egress.storage.blobs Count IoT Hub 라우팅에서 스토리지 엔드포인트에 Blob을 배달한 횟수입니다.
라우팅: 스토리지에 배달된 데이터 d2c.endpoints.egress.storage.bytes 바이트 IoT Hub 라우팅에서 스토리지 엔드포인트에 배달된 데이터 양입니다(바이트).
라우팅: Event Hubs에 대한 메시지 대기 시간 d2c.endpoints.latency.eventHubs 밀리초 IoT Hub로의 메시지 수신 및 Event Hubs 유형의 사용자 지정 엔드포인트로의 메시지 수신 사이에 걸리는 평균 대기 시간(밀리초)입니다. 기본 제공 엔드포인트(이벤트)에 대한 메시지 경로는 포함되지 않습니다.
라우팅: Service Bus 큐에 대한 메시지 대기 시간 d2c.endpoints.latency.serviceBusQueues 밀리초 IoT Hub에 대한 메시지 수신과 Service Bus 큐 엔드포인트로의 메시지 수신 사이의 평균 대기 시간(밀리초)입니다.
라우팅: Service Bus 토픽에 대한 메시지 대기 시간 d2c.endpoints.latency.serviceBusTopics 밀리초 IoT Hub로의 메시지 수신과 Service Bus 토픽 엔드포인트로의 메시지 수신 사이의 평균 대기 시간(밀리초)입니다.
라우팅: 메시지/이벤트에 대한 메시지 대기 시간 d2c.endpoints.latency.builtIn.events 밀리초 IoT Hub에 대한 메시지 수신과 기본 제공 엔드포인트(메시지/이벤트)로의 메시지 수신과 대체 경로 간의 평균 대기 시간(밀리초)입니다.
라우팅: 스토리지에 대한 메시지 대기 시간 d2c.endpoints.latency.storage 밀리초 IoT Hub로의 메시지 수신과 스토리지 엔드포인트로의 메시지 수신 사이의 평균 대기 시간(밀리초)입니다.
라우팅: Event Hubs로 전달된 메시지 d2c.endpoints.egress.eventHubs Count IoT Hubs 라우팅이 이벤트 허브 형식의 엔드포인트에 메시지를 성공적으로 배달한 횟수입니다. 기본 제공 엔드포인트(이벤트)에 대한 메시지 경로는 포함되지 않습니다.
라우팅: Service Bus 큐에 배달된 메시지 d2c.endpoints.egress.serviceBusQueues Count IoT Hub 라우팅에서 Service Bus 큐 엔드포인트에 메시지를 성공적으로 배달한 횟수입니다.
라우팅: Service Bus 토픽에 배달된 메시지 d2c.endpoints.egress.serviceBusTopics Count IoT Hub 라우팅에서 Service Bus 토픽 엔드포인트에 메시지를 성공적으로 배달한 횟수입니다.
라우팅: 대체에 배달된 메시지 d2c.telemetry.egress.fallback Count IoT Hub 라우팅이 대체 경로와 연결된 엔드포인트에 메시지를 배달한 횟수입니다.
라우팅: 메시지/이벤트에 배달된 메시지 d2c.endpoints.egress.builtIn.events Count IoT Hub 라우팅이 기본 제공 엔드포인트(메시지/이벤트) 및 대체 경로에 메시지를 성공적으로 배달한 횟수입니다.
라우팅: 스토리지에 배달된 메시지 d2c.endpoints.egress.storage Count IoT Hub 라우팅에서 스토리지 엔드포인트에 메시지를 성공적으로 배달한 횟수입니다.
라우팅: 배달된 원격 분석 메시지 d2c.telemetry.egress.success Count IoT Hub 라우팅을 사용하여 모든 엔드포인트에 메시지가 성공적으로 배달된 횟수입니다. 메시지가 여러 엔드포인트로 라우팅되는 경우 이 값은 배달에 성공할 때마다 하나씩 증가합니다. 메시지가 동일한 엔드포인트에 여러 번 전달되는 경우 이 값은 배달에 성공할 때마다 하나씩 증가합니다.
라우팅: 삭제된 원격 분석 메시지 d2c.telemetry.egress.dropped Count IoT Hub 라우팅이 데드 엔드포인트로 인해 메시지를 삭제하는 횟수입니다. 삭제된 메시지는 배달되지 않으므로 이 값은 대체 경로에 배달된 메시지를 계산에 넣지 않습니다.
라우팅: 원격 분석 메시지 호환되지 않음 d2c.telemetry.egress.invalid Count 엔드포인트와의 비호환성으로 인해 IoT Hub 라우팅이 메시지를 배달하지 못한 횟수입니다. IoT Hub가 엔드포인트에 메시지를 배달하려고 하면 메시지가 엔드포인트와 호환되지 않으며, 오류가 발생하여 실패합니다. 잘못된 메시지는 다시 시도되지 않습니다. 이 값은 재시도를 포함하지 않습니다.
라우팅: 분리된 원격 분석 메시지 d2c.telemetry.egress.orphaned Count 대체 경로가 비활성화된 경우 IoT Hub가 라우팅 쿼리와 일치하지 않아 메시지를 라우팅하는 횟수입니다.

단위 값이 Count메트릭의 경우 합계(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

쌍 쿼리 메트릭:

메트릭 표시 이름 메트릭 단위 설명
실패한 쌍 쿼리 twinQueries.failure Count 실패한 모든 쌍 쿼리의 수입니다.
성공한 쌍 쿼리 twinQueries.success Count 성공한 모든 쌍 쿼리의 수입니다.
쌍 쿼리 결과 크기 twinQueries.resultSize 바이트 성공한 모든 쌍 쿼리 결과 크기의 합계입니다.

단위 값이 Count메트릭의 경우 합계(합계) 집계만 유효합니다. 최소, 최대 및 평균 집계는 항상 1을 반환합니다. 자세한 내용은 지원되는 집계를 참조하세요.

리소스 로그

이 섹션에는 이 서비스에 대해 모을 수 있는 리소스 로그 유형이 나열되어 있습니다. 이 섹션은 Azure Monitor에서 지원되는 모든 리소스 로그 범주 유형 목록에서 가져옵니다.

Microsoft.Devices/IotHubs에 대해 지원되는 리소스 로그

범주 범주 표시 이름 로그 테이블 기본 로그 플랜 지원 수집 시간 변환 지원 예시 쿼리 내보낼 비용
C2DCommands C2D 명령 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
C2DTwinOperations C2D 쌍 작업 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
Configurations 구성 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
Connections 연결 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
D2CTwinOperations D2CTwinOperations AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
DeviceIdentityOperations 디바이스 ID 작업 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
DeviceStreams 디바이스 스트림(미리 보기) AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
DeviceTelemetry 디바이스 원격 분석 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
DirectMethods 직접 메서드 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
DistributedTracing 분산 추적(미리 보기) 아니요 아니요 아니요
FileUploadOperations 파일 업로드 작업 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
JobsOperations 작업 작업 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
Routes 경로 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요
TwinQueries 쌍 쿼리 AzureDiagnostics

여러 Azure 리소스의 로그.

아니요 아니요 쿼리 아니요

다음 섹션에서는 Azure IoT Hub에 대해 수집된 리소스 로그 범주 유형 및 스키마를 나열합니다. 이벤트는 일부 범주의 오류에 대해서만 발생합니다.

클라우드-디바이스 명령 범주

클라우드-디바이스 명령 범주는 IoT Hub에서 발생하고 클라우드-디바이스 메시지 파이프라인에 관련된 오류를 추적합니다. 이 범주는 다음에서 발생하는 오류를 포함합니다.

  • 클라우드-디바이스 메시지 보내기(예: 무단 보낸 사람 오류)
  • 클라우드-디바이스 메시지 수신(예: 배달 횟수 초과 오류) 및
  • 클라우드-디바이스 메시지 피드백 수신(예: 피드백 만료 오류)

이 범주는 클라우드-디바이스 메시지가 성공적으로 전달되었지만 디바이스에서 부적절하게 처리된 경우 오류를 포착하지 않습니다.

{
    "records":
    [
        {
            "time": " UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "messageExpired",
            "category": "C2DCommands",
            "level": "Error",
            "resultType": "Event status",
            "resultDescription": "MessageDescription",
            "properties": "{\"deviceId\":\"<deviceId>\",\"messageId\":\"<messageId>\",\"messageSizeInBytes\":\"<messageSize>\",\"protocol\":\"Amqp\",\"deliveryAcknowledgement\":\"<None, NegativeOnly, PositiveOnly, Full>\",\"deliveryCount\":\"0\",\"expiryTime\":\"<timestamp>\",\"timeInSystem\":\"<timeInSystem>\",\"ttl\":<ttl>, \"EventProcessedUtcTime\":\"<UTC timestamp>\",\"EventEnqueuedUtcTime\":\"<UTC timestamp>\", \"maskedIpAddress\": \"<maskedIpAddress>\", \"statusCode\": \"4XX\"}",
            "location": "Resource location"
        }
    ]
}

클라우드-디바이스 쌍 작업 범주

클라우드-디바이스 쌍 작업 범주는 디바이스 쌍에서 서비스가 시작한 이벤트를 추적합니다. 이러한 작업에는 쌍 가져오기, 태그 업데이트 또는 대체, 원하는 속성 업데이트 또는 대체가 포함될 수 있습니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "read",
            "category": "C2DTwinOperations",
            "level": "Information",
            "durationMs": "1",
            "properties": "{\"deviceId\":\"<deviceId>\",\"sdkVersion\":\"<sdkVersion>\",\"messageSize\":\"<messageSize>\"}",
            "location": "Resource location"
        }
    ]
}

디바이스-클라우드 쌍 작업 범주

클라우드-디바이스 쌍 작업 범주는 디바이스 쌍에서 디바이스가 시작한 이벤트를 추적합니다. 이러한 작업에는 쌍 가져오기, 보고된 속성 업데이트, 원하는 속성 구독이 포함될 수 있습니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "update",
            "category": "D2CTwinOperations",
            "level": "Information",
            "durationMs": "1",
            "properties": "{\"deviceId\":\"<deviceId>\",\"protocol\":\"<protocol>\",\"authenticationType\":\"{\\\"scope\\\":\\\"device\\\",\\\"type\\\":\\\"sas\\\",\\\"issuer\\\":\\\"iothub\\\",\\\"acceptingIpFilterRule\\\":null}\"}",
            "location": "Resource location"
        }
    ]
}

구성 범주

IoT Hub 구성 로그는 자동 디바이스 관리 기능 집합에 대한 이벤트 및 오류를 추적합니다.

{
    "records":
    [
         {
             "time": "2019-09-24T17:21:52Z",
             "resourceId": "Resource Id",
             "operationName": "ReadManyConfigurations",
             "category": "Configurations",
             "resultType": "",
             "resultDescription": "",
             "level": "Information",
             "durationMs": "17",
             "properties": "{\"configurationId\":\"\",\"sdkVersion\":\"2018-06-30\",\"messageSize\":\"0\",\"statusCode\":null}",
             "location": "southcentralus"
         }
    ]
}

연결 범주

이 연결 범주에서는 IoT Hub에서의 디바이스 연결 및 연결 해제 이벤트와 오류를 추적합니다. 이 범주는 무단 연결 시도를 식별하거나 디바이스에 대한 연결이 끊어지면 경고하는 데 유용합니다.

디바이스의 안정적인 연결 상태는 디바이스 연결 상태 모니터링을 참조하세요.

{
   "records":
   [
        {
            "time": " UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "deviceConnect",
            "category": "Connections",
            "level": "Information",
            "properties": "{\"deviceId\":\"<deviceId>\",\"sdkVersion\":\"<sdkVersion>\",\"protocol\":\"<protocol>\",\"authType\":\"{\\\"scope\\\":\\\"device\\\",\\\"type\\\":\\\"sas\\\",\\\"issuer\\\":\\\"iothub\\\",\\\"acceptingIpFilterRule\\\":null}\",\"maskedIpAddress\":\"<maskedIpAddress>\"}",
            "location": "Resource location"
        }
    ]
}

연결 로그를 사용하여 디바이스 연결을 모니터링하는 방법에 대한 자세한 내용은 Azure IoT Hub에 대한 디바이스 연결 모니터링, 진단 및 문제 해결을 참조하세요.

디바이스 ID 작업 범주

디바이스 ID 작업 범주는 IoT Hub ID 레지스트리의 항목을 만들거나, 업데이트하거나 삭제하려고 할 때 발생하는 오류를 추적합니다. 이 범주를 추적하는 것은 프로비전 시나리오에 유용합니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "get",
            "category": "DeviceIdentityOperations",
            "level": "Error",
            "resultType": "Event status",
            "resultDescription": "MessageDescription",
            "properties": "{\"maskedIpAddress\":\"<maskedIpAddress>\",\"deviceId\":\"<deviceId>\", \"statusCode\":\"4XX\"}",
            "location": "Resource location"
        }
    ]
}

디바이스 스트림 범주(미리 보기)

디바이스 스트림 범주는 개별 디바이스로 전송되는 요청-응답 상호 작용을 추적합니다.

{
    "records":
    [
         {
             "time": "2019-09-19T11:12:04Z",
             "resourceId": "Resource Id",
             "operationName": "invoke",
             "category": "DeviceStreams",
             "resultType": "",
             "resultDescription": "",    
             "level": "Information",
             "durationMs": "74",
             "properties": "{\"deviceId\":\"myDevice\",\"moduleId\":\"myModule\",\"sdkVersion\":\"2019-05-01-preview\",\"requestSize\":\"3\",\"responseSize\":\"5\",\"statusCode\":null,\"requestName\":\"myRequest\",\"direction\":\"c2d\"}",
             "location": "Central US"
         }
    ]
}

디바이스 원격 분석 범주

디바이스 원격 분석 범주는 IoT Hub에서 발생하고 원격 분석 파이프라인에 관련된 오류를 추적합니다. 이 범주에는 원격 분석 이벤트를 보내고(예: 제한) 원격 분석 이벤트를 수신할 때(예: 무단된 판독기) 발생하는 오류가 포함됩니다. 이 범주는 디바이스 자체에서 실행되는 코드에 의해 발생한 오류를 포착할 수 없습니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "ingress",
            "category": "DeviceTelemetry",
            "level": "Error",
            "resultType": "Event status",
            "resultDescription": "MessageDescription",
            "properties": "{\"deviceId\":\"<deviceId>\",\"batching\":\"0\",\"messageSizeInBytes\":\"<messageSizeInBytes>\",\"EventProcessedUtcTime\":\"<UTC timestamp>\",\"EventEnqueuedUtcTime\":\"<UTC timestamp>\",\"partitionId\":\"1\"}", 
            "location": "Resource location"
        }
    ]
}

직접 메서드 범주

직접 메서드 범주는 개별 디바이스로 전송되는 요청-응답 상호 작용을 추적합니다. 이러한 요청은 클라우드에서 시작됩니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "send",
            "category": "DirectMethods",
            "level": "Information",
            "durationMs": "1",
            "properties": "{\"deviceId\":<messageSize>, \"RequestSize\": 1, \"ResponseSize\": 1, \"sdkVersion\": \"2017-07-11\"}",
            "location": "Resource location"
        }
    ]
}

분산 추적 범주(미리 보기)

분산 추적 범주는 추적 컨텍스트 헤더를 전달하는 메시지에 대한 상관 관계 ID를 추적합니다. 해당 로그를 완전히 활성화하려면 IoT Hub 분산 추적(미리 보기)을 사용한 IoT 애플리케이션 엔드투엔드 분석 및 진단에 따라 클라이언트 쪽 코드를 업데이트해야 합니다.

correlationIdtrace-idspan-id를 포함하는 W3C 추적 컨텍스트 제안을 준수합니다.

IoT Hub D2C(디바이스-클라우드) 로그

IoT Hub는 유효한 추적 속성이 포함된 메시지가 IoT Hub에 도착하면 이 로그를 기록합니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "DiagnosticIoTHubD2C",
            "category": "DistributedTracing",
            "correlationId": "00-8cd869a412459a25f5b4f31311223344-0144d2590aacd909-01",
            "level": "Information",
            "resultType": "Success",
            "resultDescription":"Receive message success",
            "durationMs": "",
            "properties": "{\"messageSize\": 1, \"deviceId\":\"<deviceId>\", \"callerLocalTimeUtc\": : \"2017-02-22T03:27:28.633Z\", \"calleeLocalTimeUtc\": \"2017-02-22T03:27:28.687Z\"}",
            "location": "Resource location"
        }
    ]
}

여기서 durationMs는 IoT Hub 시계가 디바이스 시계와 동기화되지 않아 기간 계산이 잘못될 수 있기 때문에 계산되지 않습니다. 디바이스-클라우드 대기 시간의 급증을 캡처하려면 섹션의 properties 타임스탬프를 사용하여 논리를 작성하는 것이 좋습니다.

속성 Type 설명
messageSize 정수 디바이스-클라우드 메시지 크기(바이트)
deviceId ASCII 7비트 영숫자 문자열 디바이스의 ID
callerLocalTimeUtc UTC 타임스탬프 디바이스 로컬 시계에서 보고한 메시지 생성 시간입니다.
calleeLocalTimeUtc UTC 타임스탬프 IoT Hub 서비스 사이드 클럭에서 보고한 IoT Hub의 게이트웨이에 메시지가 도착한 시간

IoT Hub 수신 로그

IoT Hubs는 유효한 추적 속성이 포함된 메시지가 내부 또는 기본 제공 이벤트 허브에 작성될 때 이 로그를 기록합니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "DiagnosticIoTHubIngress",
            "category": "DistributedTracing",
            "correlationId": "00-8cd869a412459a25f5b4f31311223344-349810a9bbd28730-01",
            "level": "Information",
            "resultType": "Success",
            "resultDescription":"Ingress message success",
            "durationMs": "10",
            "properties": "{\"isRoutingEnabled\": \"true\", \"parentSpanId\":\"0144d2590aacd909\"}",
            "location": "Resource location"
        }
    ]
}

properties 섹션에서 이 로그에는 메시지 수신에 대한 추가 정보가 포함되어 있습니다.

속성 Type 설명
isRoutingEnabled 문자열 true 또는 false로, IoT Hub에서 메시지 라우팅을 사용할 수 있는지 여부를 나타냅니다.
parentSpanId 문자열 부모 메시지(이 경우 D2C 메시지 추적)의 span-id입니다.

IoT Hub 송신 로그

IoT Hub는 라우팅을 사용하도록 설정하고 메시지가 엔드포인트에 기록될 때 이 로그를 기록합니다. 라우팅이 사용되지 않는 경우 IoT Hub는 이 로그를 기록하지 않습니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "DiagnosticIoTHubEgress",
            "category": "DistributedTracing",
            "correlationId": "00-8cd869a412459a25f5b4f31311223344-98ac3578922acd26-01",
            "level": "Information",
            "resultType": "Success",
            "resultDescription":"Egress message success",
            "durationMs": "10",
            "properties": "{\"endpointType\": \"EventHub\", \"endpointName\": \"myEventHub\", \"parentSpanId\":\"349810a9bbd28730\"}",
            "location": "Resource location"
        }
    ]
}

properties 섹션에서 이 로그에는 메시지 수신에 대한 추가 정보가 포함되어 있습니다.

속성 Type 설명
endpointName 문자열 라우팅 엔드포인트의 이름
endpointType 문자열 라우팅 엔드포인트의 형식입니다.
parentSpanId 문자열 이 경우 IoT Hub 수신 메시지 추적이 될 부모 메시지의 범위 ID입니다.

파일 업로드 작업 범주

파일 업로드 범주는 IoT Hub에서 발생하고 파일 업로드 기능과 관련된 오류를 추적합니다. 이 범주에는 다음이 포함됩니다.

  • SAS URI에서 발생하는 오류(예: 디바이스가 허브에 완료된 업로드를 알리기 전에 만료되는 경우).
  • 디바이스에 의해 보고된 실패한 업로드.
  • IoT Hub 알림 메시지 생성 중 스토리지에서 파일을 찾을 수 없는 경우 발생하는 오류입니다.

이 범주는 디바이스가 스토리지로 파일을 업로드하는 동안 직접 발생하는 오류를 검색할 수 없습니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "ingress",
            "category": "FileUploadOperations",
            "level": "Error",
            "resultType": "Event status",
            "resultDescription": "MessageDescription",
            "durationMs": "1",
            "properties": "{\"deviceId\":\"<deviceId>\",\"protocol\":\"<protocol>\",\"authType\":\"{\\\"scope\\\":\\\"device\\\",\\\"type\\\":\\\"sas\\\",\\\"issuer\\\":\\\"iothub\\\",\\\"acceptingIpFilterRule\\\":null}\",\"blobUri\":\"http//bloburi.com\"}",
            "location": "Resource location"
        }
    ]
}

작업 작업 범주

작업 연산 범주는 디바이스 쌍을 업데이트하는 작업 요청 또는 여러 디바이스에 대한 직접 메서드를 호출하는 작업 요청에 대해 보고합니다. 이러한 요청은 클라우드에서 시작됩니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "jobCompleted",
            "category": "JobsOperations",
            "level": "Information",
            "durationMs": "1",
            "properties": "{\"jobId\":\"<jobId>\", \"sdkVersion\": \"<sdkVersion>\",\"messageSize\": <messageSize>,\"filter\":\"DeviceId IN ['1414ded9-b445-414d-89b9-e48e8c6285d5']\",\"startTimeUtc\":\"Wednesday, September 13, 2017\",\"duration\":\"0\"}",
            "location": "Resource location"
        }
    ]
}

경로 범주

메시지 라우팅 범주는 IoT Hub에서 인식하는 메시지 경로 평가 및 엔드포인트 상태 중에 발생하는 오류를 추적합니다. 이 범주는 다음과 같은 이벤트를 포함합니다.

  • 규칙은 "정의되지 않음"으로 평가됩니다.
  • IoT Hub는 엔드포인트를 데드로 표시합니다.
  • 엔드포인트에서 받은 오류

이 범주는 메시지 자체에 대한 특정 오류(예: 디바이스 제한 오류)를 포함하지 않습니다. 해당 오류는 "디바이스 원격 분석" 범주 아래에서 보고됩니다.

{
    "records":
    [
        {
            "time":"2019-12-12T03:25:14Z",
            "resourceId":"/SUBSCRIPTIONS/91R34780-3DEC-123A-BE2A-213B5500DFF0/RESOURCEGROUPS/ANON-TEST/PROVIDERS/MICROSOFT.DEVICES/IOTHUBS/ANONHUB1",
            "operationName":"endpointUnhealthy",
            "category":"Routes",
            "level":"Error",
            "resultType":"403004",
            "resultDescription":"DeviceMaximumQueueDepthExceeded",
            "properties":"{\"deviceId\":null,\"endpointName\":\"anon-sb-1\",\"messageId\":null,\"details\":\"DeviceMaximumQueueDepthExceeded\",\"routeName\":null,\"statusCode\":\"403\"}",
            "location":"westus"
        }
    ]
}

리소스 로그 라우팅에 대한 자세한 내용은 다음과 같습니다.

쌍 쿼리 범주

쌍 쿼리 범주는 클라우드에서 시작된 디바이스 쌍에 대한 쿼리 요청을 보고합니다.

{
    "records":
    [
        {
            "time": "UTC timestamp",
            "resourceId": "Resource Id",
            "operationName": "query",
            "category": "TwinQueries",
            "level": "Information",
            "durationMs": "1",
            "properties": "{\"query\":\"<twin query>\",\"sdkVersion\":\"<sdkVersion>\",\"messageSize\":\"<messageSize>\",\"pageSize\":\"<pageSize>\", \"continuation\":\"<true, false>\", \"resultSize\":\"<resultSize>\"}",
            "location": "Resource location"
        }
    ]
}

Azure Monitor 로그 테이블

이 섹션은 이 서비스와 관련이 있고 Kusto 쿼리를 사용하는 Log Analytics의 쿼리에 사용할 수 있는 Azure Monitor 로그 테이블을 나열합니다. 테이블에는 리소스 로그 데이터가 포함되며 수집 및 라우팅되는 항목에 따라 더 많은 데이터가 포함될 수 있습니다.

IoT Hub Microsoft.Devices/IotHubs

활동 로그

연결된 테이블에는 이 서비스의 활동 로그에 기록할 수 있는 작업이 나열되어 있습니다. 이 작업은 활동 로그에서 가능한 모든 리소스 공급자 작업의 하위 집합입니다.

활동 로그 항목의 스키마에 대한 자세한 내용은 활동 로그 스키마를 참조하세요.