Microsoft Azure IOT Hub

Overview

Azure IOT Hub is a fully managed service that enables reliable and secure bidirectional communications between millions of IoT devices.

Get metrics from Azure IOT Hub to:

  • Visualize the performance of your IOT Hubs.
  • Correlate the performance of your IOT Hubs with your applications.

Azure Provisioning Service is a helper service for IoT Hub that enables zero-touch, just-in-time provisioning to the right IoT hub without requiring human intervention, allowing customers to provision millions of devices in a secure and scalable manner.

Setup

Installation

If you haven’t already, set up the Microsoft Azure integration first. There are no other installation steps that need to be performed.

Data Collected

Metrics

azure.devices_iothubs.c2d.commands.egress.abandon.success
(count)
Number of cloud-to-device messages abandoned by the device.
azure.devices_iothubs.c2d.commands.egress.complete.success
(count)
Number of cloud-to-device message deliveries completed successfully by the device.
azure.devices_iothubs.c2d.commands.egress.reject.success
(count)
Number of cloud-to-device messages rejected by the device.
azure.devices_iothubs.c2d.methods.failure
(count)
Count of all failed direct method calls.
azure.devices_iothubs.c2d.methods.request_size
(gauge)
Average; min; and max of all successful direct method requests.
Shown as byte
azure.devices_iothubs.c2d.methods.response_size
(gauge)
Average; min; and max of all successful direct method responses.
Shown as byte
azure.devices_iothubs.c2d.methods.success
(count)
Count of all successful direct method calls.
azure.devices_iothubs.c2d.twin.read.failure
(count)
Count of all failed back-end-initiated twin reads.
azure.devices_iothubs.c2d.twin.read.size
(gauge)
Average; min; and max of all successful back-end-initiated twin reads.
Shown as byte
azure.devices_iothubs.c2d.twin.read.success
(count)
Count of all successful back-end-initiated twin reads.
azure.devices_iothubs.c2d.twin.update.failure
(count)
Count of all failed back-end-initiated twin updates.
azure.devices_iothubs.c2d.twin.update.size
(gauge)
Average; min; and max size of all successful back-end-initiated twin updates.
Shown as byte
azure.devices_iothubs.c2d.twin.update.success
(count)
Count of all successful back-end-initiated twin updates.
azure.devices_iothubs.c2_d_messages_expired
(count)
Number of expired cloud-to-device messages.
azure.devices_iothubs.configuration_metrics
(count)
Metrics for Configuration Operations.
azure.devices_iothubs.connected_devices
(gauge)
Number of devices connected to your IoT Hub.
azure.devices_iothubs.d2c.endpoints.egress.built_in.events
(count)
Number of times IoT Hub routing successfully delivered messages to the built-in endpoint (messages/events).
azure.devices_iothubs.d2c.endpoints.egress.event_hubs
(count)
Number of times IoT Hub routing successfully delivered messages to Event Hub endpoints.
azure.devices_iothubs.d2c.endpoints.egress.service_bus_queues
(count)
Number of times IoT Hub routing successfully delivered messages to Service Bus queue endpoints.
azure.devices_iothubs.d2c.endpoints.egress.service_bus_topics
(count)
Number of times IoT Hub routing successfully delivered messages to Service Bus topic endpoints.
azure.devices_iothubs.routing_messages_delivered_to_storage
(count)
Number of times IoT Hub routing successfully delivered messages to storage endpoints.
azure.devices_iothubs.routing_blobs_delivered_to_storage
(count)
Number of times IoT Hub routing delivered blobs to storage endpoints.
azure.devices_iothubs.routing_data_delivered_to_storage
(count)
Amount of data (bytes) IoT Hub routing delivered to storage endpoints.
Shown as byte
azure.devices_iothubs.d2c.endpoints.latency.built_in.events
(gauge)
Average latency (milliseconds) between message ingress to IoT Hub and telemetry message ingress into the built-in endpoint (messages/events).
Shown as millisecond
azure.devices_iothubs.d2c.endpoints.latency.event_hubs
(gauge)
Average latency (milliseconds) between message ingress to IoT Hub and message ingress into an Event Hub endpoint.
Shown as millisecond
azure.devices_iothubs.d2c.endpoints.latency.service_bus_queues
(gauge)
Average latency (milliseconds) between message ingress to IoT Hub and telemetry message ingress into a Service Bus queue endpoint.
Shown as millisecond
azure.devices_iothubs.d2c.endpoints.latency.service_bus_topics
(gauge)
Average latency (milliseconds) between message ingress to IoT Hub and telemetry message ingress into a Service Bus topic endpoint.
Shown as millisecond
azure.devices_iothubs.routing_message_latency_for_storage
(gauge)
Average latency (milliseconds) between message ingress to IoT Hub and telemetry message ingress into a storage endpoint.
Shown as millisecond
azure.devices_iothubs.d2c.telemetry.egress.dropped
(count)
Number of times messages were dropped by IoT Hub routing due to dead endpoints. This value does not count messages delivered to fallback route as dropped messages are not delivered there.
azure.devices_iothubs.d2c.telemetry.egress.fallback
(count)
Number of times IoT Hub routing delivered messages to the endpoint associated with the fallback route.
azure.devices_iothubs.d2c.telemetry.egress.invalid
(count)
Number of times IoT Hub routing failed to deliver messages due to an incompatibility with the endpoint. This value does not include retries.
azure.devices_iothubs.d2c.telemetry.egress.orphaned
(count)
Number of times messages were orphaned by IoT Hub routing because they didn't match any routing rules (including the fallback rule).
azure.devices_iothubs.d2c.telemetry.egress.success
(count)
Number of times messages were successfully delivered to all endpoints using IoT Hub routing. If a message is routed to multiple endpoints; this value increases by one for each successful delivery. If a message is delivered to the same endpoint multiple times; this value increases by one for each successful delivery.
azure.devices_iothubs.d2c.telemetry.ingress.all_protocol
(count)
Number of device-to-cloud telemetry messages attempted to be sent to your IoT Hub.
azure.devices_iothubs.number_of_throttling_errors
(count)
Number of throttling errors due to device throughput throttles.
azure.devices_iothubs.d2c.telemetry.ingress.success
(count)
Number of device-to-cloud telemetry messages sent successfully to your IoT Hub.
azure.devices_iothubs.d2c.twin.read.failure
(count)
Count of all failed device-initiated twin reads.
azure.devices_iothubs.d2c.twin.read.size
(gauge)
Average; min; and max of all successful device-initiated twin reads.
Shown as byte
azure.devices_iothubs.d2c.twin.read.success
(count)
Count of all successful device-initiated twin reads.
azure.devices_iothubs.d2c.twin.update.failure
(count)
Count of all failed device-initiated twin updates.
azure.devices_iothubs.d2c.twin.update.size
(gauge)
Average; min; and max size of all successful device-initiated twin updates.
Shown as byte
azure.devices_iothubs.d2c.twin.update.success
(count)
Count of all successful device-initiated twin updates.
azure.devices_iothubs.total_number_of_messages_used
(gauge)
Number of total messages used today.
azure.devices_iothubs.total_device_data_usage
(count)
Bytes transferred to and from any devices connected to IotHub.
Shown as byte
azure.devices_iothubs.total_device_data_usage_preview
(count)
Bytes transferred to and from any devices connected to IotHub.
Shown as byte
azure.devices_iothubs.devices.connected_devices.all_protocol
(count)
Number of devices connected to your IoT Hub.
azure.devices_iothubs.devices.total_devices
(count)
Number of devices registered to your IoT Hub.
azure.devices_iothubs.event_grid_deliveries
(count)
Number of IoT Hub events published to Event Grid. Use the Result dimension for the number of successful and failed requests. EventType dimension shows the type of event (https://aka.ms/ioteventgrid).
azure.devices_iothubs.event_grid_latency
(gauge)
Average latency (milliseconds) from when the Iot Hub event was generated to when the event was published to Event Grid. This number is an average between all event types. Use the EventType dimension to see latency of a specific type of event.
Shown as millisecond
azure.devices_iothubs.jobs.cancel_job.failure
(count)
Count of all failed calls to cancel a job.
azure.devices_iothubs.jobs.cancel_job.success
(count)
Count of all successful calls to cancel a job.
azure.devices_iothubs.jobs.completed
(count)
Count of all completed jobs.
azure.devices_iothubs.jobs.create_direct_method_job.failure
(count)
Count of all failed creation of direct method invocation jobs.
azure.devices_iothubs.jobs.create_direct_method_job.success
(count)
Count of all successful creation of direct method invocation jobs.
azure.devices_iothubs.jobs.create_twin_update_job.failure
(count)
Count of all failed creation of twin update jobs.
azure.devices_iothubs.jobs.create_twin_update_job.success
(count)
Count of all successful creation of twin update jobs.
azure.devices_iothubs.jobs.failed
(count)
Count of all failed jobs.
azure.devices_iothubs.jobs.list_jobs.failure
(count)
Count of all failed calls to list jobs.
azure.devices_iothubs.jobs.list_jobs.success
(count)
Count of all successful calls to list jobs.
azure.devices_iothubs.jobs.query_jobs.failure
(count)
Count of all failed calls to query jobs.
azure.devices_iothubs.jobs.query_jobs.success
(count)
Count of all successful calls to query jobs.
azure.devices_iothubs.routing_delivery_message_size_in_bytes_preview
(count)
Total size in bytes of messages delivered by IoT Hub to an endpoint. You can use the EndpointName and EndpointType dimensions to view the size of the messages in bytes delivered to your different endpoints. The metric value increases for every message delivered; including if the message is delivered to multiple endpoints or if the message is delivered to the same endpoint multiple times.
Shown as byte
azure.devices_iothubs.routing_deliveries_preview
(count)
Number of times IoT Hub attempted to deliver messages to all endpoints using routing.
azure.devices_iothubs.routing_delivery_latency_preview
(gauge)
Average latency (milliseconds) between message ingress to IoT Hub and telemetry message ingress into an endpoint. You can use the EndpointName and EndpointType dimensions to understand the latency to your different endpoints.
Shown as millisecond
azure.devices_iothubs.total_devices
(gauge)
Number of devices registered to your IoT Hub.
azure.devices_iothubs.twin_queries.failure
(count)
Count of all failed twin queries.
azure.devices_iothubs.twin_queries.result_size
(gauge)
Average; min; and max of the result size of all successful twin queries.
Shown as byte
azure.devices_iothubs.twin_queries.success
(count)
Count of all successful twin queries.
azure.devices_iothubs.count
(gauge)
Count of Devices Iot Hubs.
azure.devices_iothubs.status
(gauge)
Status of Devices Iot Hubs(deprecated).
azure.devices_provisioningservices.attestation_attempts
(count)
Number of device attestations attempted.
azure.devices_provisioningservices.device_assignments
(count)
Number of devices assigned to an IoT Hub.
azure.devices_provisioningservices.registration_attempts
(count)
Number of device registrations attempted.
azure.devices_provisioningservices.count
(gauge)
Count of Devices provisioning services.
azure.devices_provisioningservices.status
(gauge)
Status of Devices provisioning services(deprecated).

Events

The Azure IoT Hub integration does not include any events.

Service Checks

The Azure IoT Hub integration does not include any service checks.

Troubleshooting

Need help? Contact Datadog support.

PREVIEWING: may/unit-testing