Azure Event Hubs client library samples for JavaScript

These sample programs show how to use the JavaScript client libraries for Azure Event Hubs in some common scenarios.

File Name Description
sendBufferedEvents.js Demonstrates how to send events to an Event Hub using the EventHubBufferedProducerClient. This sample is different from the one in sendEvent.ts in that the client manages batching of events and sending after a given amount of time or after a given amount of events are in a batch instead of you managing the same explicitly.
sendEvents.js Demonstrates how to send events to an Event Hub.
sendEventsToSpecificPartition.js Demonstrates how to send events to a specific partition in an Event Hub.
receiveEvents.js Demonstrates how to use the EventHubConsumerClient to process events from all partitions of a consumer group in an Event Hub.
usingAadAuth.js Demonstrates how to instantiate EventHubsClient using AAD token credentials obtained from using service principal secrets.
iothubConnectionString.js Demonstrates how to convert an IoT Hub connection string to an Event Hubs connection string that points to the built-in messaging endpoint.
iothubConnectionStringWebsockets.js Demonstrates how to convert an IoT Hub connection string to an Event Hubs connection string that points to the built-in messaging endpoint using WebSockets.
useWithIotHub.js Demonstrates how to use the EventHubConsumerClient to receive messages from an IoT Hub.
websockets.js Demonstrates how to connect to Azure Event Hubs over websockets to work over an HTTP proxy.

Prerequisites

The sample programs are compatible with LTS versions of Node.js.

You need an Azure subscription and the following Azure resources to run these sample programs:

Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function.

Adapting the samples to run in the browser may require some additional consideration. For details, please see the package README.

Setup

To run the samples using the published version of the package:

  1. Install the dependencies using npm:
npm install
  1. Edit the file sample.env, adding the correct credentials to access the Azure service and run the samples. Then rename the file from sample.env to just .env. The sample programs will read this file automatically.

  2. Run whichever samples you like (note that some samples may require additional setup, see the table above):

node sendBufferedEvents.js

Alternatively, run a single sample with the correct environment variables set (setting up the .env file is not required if you do this), for example (cross-platform):

npx cross-env EVENTHUB_CONNECTION_STRING="<eventhub connection string>" EVENTHUB_NAME="<eventhub name>" node sendBufferedEvents.js

Next Steps

Take a look at our API Documentation for more information about the APIs that are available in the clients.