Event Streams

Event Streams is a message bus that is built by using Apache Kafka. It has high throughput and is optimized for event ingestion into IBM Cloud and event stream distribution between your services and applications. In Event Streams, applications can send data by creating messages and sending to a topic. To receive messages, the application subscribes to a topic and can choose to receive all the messages of the topic or share the messages between them.

Event Streams represents a service destination. Since Event Streams is a Kafka managed service, incoming notifications cannot be stored and consumed programmatically because Kafka does not store the data once it has been read.

Before you begin

Configuring an Event Streams destination in the console

If you are using Event Notifications CLI or API to configure an Event Streams service instance as a destination, ensure that you have enabled authorization to grant access between services before integrating with Event Streams. For more information, see Using authorizations to grant access between services.

To configure an Event Streams destination, complete the following steps:

  1. From your Event Notifications instance, click Destinations.

  2. Click Create to add a new destination.

  3. Enter the following destination details in the Create destination dialog:

    • Name: Enter a name for your destination.

    • Description: Optionally, enter a description for your destination.

    • Type: Under Destination, select Event Streams from the list as your destination type.

    • Account: Select the account where the Event Streams instance is located.

      If the Event Streams instance is in the same account as your Event Notifications instance:

      1. Select the name of the Event Streams instance to send notifications to.
      2. After the instance is selected, the Endpoint field is filled automatically from the selected instance.
      3. Select the Topic to send or receive messages from. For more information, see Topic.

      If the Event Streams instance is in a different account, provide the following details:

      1. Enter the Event Streams CRN. For more information, see CRN.
      2. Enter the Event Streams endpoint URL. For more information, see Endpoint URL.
      3. Select the topic to send or receive messages from. For more information, see Topic.
  4. Click Create destination.

Finding the Event Streams service instance details

  1. Log in to your IBM Cloud account.

  2. Navigate to Resource List in the menu.

  3. Navigate to Integration in the Resource list.

  4. Click the Event Streams instance name to open your Event Streams console.

  5. From the Event Streams console:

CRN

Copy the CRN to use in the destination creation process.

Endpoint URL

Copy the HTTP API endpoint to use in the destination creation process.

Topic

Click Topics in the menu to view the list of available topics. Select the topic that you want to send or receive messages from, and copy the Topic Name to use in the destination creation process.

Creating an authorization in the console

An authorization is required to grant one service access to another service. You must grant Event Notifications the appropriate IAM service-to-service access so that it can publish messages to Event Streams.

For more information, see Authorization between services.

Event Streams retry policy

When sending notifications to Event Streams, issues such as network errors and application glitches can cause the requests to fail. Event Notifications automatically retries failed requests to provide resiliency.

For detailed information about retry behavior, including retry attempts, delays, and timeout values, see Retry policy for destinations.