Kafka Producer step
Summarize
Summary of Kafka Producer step
The Kafka Producer step is a Workflow Studio action in ServiceNow that enables you to publish events to a Kafka topic within your environment. This step is designed for users with theactiondesignerrole and requires a Stream Connect subscription along with the Stream Connect Installer plugin.
Show less
Key Features
- Topic Selection: Choose the Kafka topic to publish messages, where each topic organizes messages of the same type (e.g., Payments).
- Message Content: Provide the message text to be published.
- Partition Key: Specify a key to direct messages to a particular partition within the topic, ensuring messages with the same key are grouped.
- Headers: Add custom headers in name-value pairs, using static values or data pills.
- Wait For Completion: Optionally configure the flow to wait for the Kafka Producer step to complete before proceeding.
- Schema Validation: Reference a schema to enforce message structure compliance, ensuring the message matches the selected schema's format.
- Error Handling: Choose whether to stop the action and evaluate errors upon failure or continue to the next step while still capturing error details.
Outputs
- Step Status Object: Provides runtime details including:
- Code: Integer indicating success (0) or error (1) of the step execution.
- Message: String containing system-generated error messages if any.
Practical Use
ServiceNow customers can use the Kafka Producer step within custom workflow actions to send structured event messages to Kafka topics, facilitating integration with Kafka-based systems. This enables real-time event publishing with control over message partitioning and schema adherence, improving event management and error handling in automated workflows.
Create an action that publishes events to a topic in your Kafka environment.
Roles and availability
The Kafka Producer step is an Workflow Studio action step. Users with the action_designer role can create a custom action with one or more action steps.
This step is requires a Stream Connect subscription. For more information, see https://www.servicenow.com/now-platform/workflow-data-fabric.html.
This step requires the ServiceNow Stream Connect Installer [com.glide.hub.stream_connect.installer] plugin.
Fields
| Field | Description |
|---|---|
| Topic | Name of the topic to publish the message to. A topic stores messages of the same type. For example, a topic named Payments might store messages about recent payments. Select a topic from the drop-down list. |
| Message | Text of the message. |
| Key | Name of the key for a specific partition. Topics can be partitioned. Messages with the same key are stored in the same partition. For example, payment messages with a key of June would all be stored in the same partition of the Payments topic. |
| Headers | Headers for the message, in name-value pairs. For both the Name and Value fields, you can enter a value or use a data pill. |
| Wait For Completion | Option to require the flow to wait for the step to complete before continuing. |
| Schema | Reference to a schema table. Select a schema from the list. For information on schemas, see Schema management in Stream Connect. Note: The message you're sending in the Message field must adhere to the structure of the selected schema. |
| If this step fails | Option to go to error evaluation or continue running the next step. This
option has no effect on the Step Status. Select one of the following.
|
Example
In this example, the step sends a message recording the creation of an incident. The message includes an incident identifier, a description, and a message header. The message is sent to the incidents topic, and stored in the partition with the name of the incident identifier.
Outputs
| Field | Description | Data Type |
|---|---|---|
| Step Status | Object data pill containing runtime details about the step. Each step in an action returns a Step Status. | Object |
| Step Status > Code | Integer data pill indicating whether the step produced an error. By default, a value of 1 indicates that the step produced an error. A value of 0 indicates that the step ran successfully. You can't customize these codes. | Integer |
| Step Status > Message | String data pill containing the error message produced by the step or system operation. You can't customize this message. | String |