Event Hub Consumer Telegraf Plugin

Azure Event Hub and Azure IoT Hub are both fully managed services from Microsoft that support communication between devices and the cloud. Azure Event Hub is a data streaming and event ingestion platform that receives and processes event data. Azure IoT Hub is a central message hub for bidirectional communication between IoT applications and devices. These hubs are secure and scalable and ingest data in real time.

Why use Azure Event Hub Consumer Telegraf Plugin?

The Azure Event Hub Consumer Telegraf Plugin allows you to collect and store all your event data from streaming data pipelines and IoT devices in InfluxDB. Once your data is in InfluxDB, you can calculate and store real-time analytics, detect anomalies and trends, create dashboards, and more. Some use cases this supports include managing industrial equipment in manufacturing, tracking assets in healthcare, and monitoring energy consumption of traffic congestion in smart city solutions.

How to use the Event Hub Consumer Telegraf Plugin

To use this plugin you first need to sign up for an account with Azure Event Hub or Azure IoT Hub. Then you need to create a device such as a simulated Raspberry Pi. The connection string needed for the plugin is located under “Shared access policies” and both the “iothubowner” and “service” policies should work.

The default way to use this plugin is to create a new Event Hub client from environmental variables. You can choose to set one of the three following groups of environmental variables.

  1. EVENTHUB_CONNECTION_STRING
  2. EVENTHUB_NAMESPACE, EVENTHUB_NAME, EVENTHUB_KEY_NAME, EVENTHUB_KEY_VALUE
  3. EVENTHUB_NAMESPACE, EVENTHUB_NAME, AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET

There are several options within the plugin configuration that you can adjust to meet your monitoring needs, such as data format and whether to collect metadata.

Key Event Hub Consumer metrics to monitor

Some of the most important Event Hub metrics that you should proactively monitor include:

  • ConnectionString
  • PersistenceDir
  • ConsumerGroup
  • FromTimestamp
  • Latest
  • PrefetchCount
  • Epoch
  • UserAgent
  • PartitionIDs
  • MaxUndeliveredMessages
  • EnqueuedTimeAsTs
  • IotHubEnqueuedTimeAsTs
  • ApplicationPropertyFields
  • ApplicationPropertyTags
  • SequenceNumberField
  • EnqueuedTimeField
  • OffsetField
  • PartitionIDTag
  • PartitionKeyTag
  • IoTHubDeviceConnectionIDTag
  • IoTHubAuthGenerationIDTag
  • IoTHubConnectionAuthMethodTag
  • IoTHubConnectionModuleIDTag
  • IoTHubEnqueuedTimeField
For more information, please check out the documentation:

Project URL   Documentation

Related resources