Buffer Payloads

This handler (com.rierino.handler.BufferEventHandler) provides ability to buffer multiple event payloads into a single batch event.

Handler Parameters

This handler requires no parameters.

Actions

Buffer

Buffers payload of the events received and releases them as a single combined event with array of input payloads in either of the following cases:

  • When the runner performs a commit operation (based on its settings or a commit command received)

  • When the number of buffered events reach buffer size provided in event parameters

Event metadata fields applicable for this action are as follows:

Field
Definition
Example
Default

Input Element

Json path for payload element to buffer

parameters

-

Output Element

Json path for payload element to output buffered data

batch

-

With event metadata parameters as:

Parameter
Definition
Example
Default

Input Pattern

JMES path for transforming input element

{"id": productid}

-

Output Pattern

JMES path for transforming buffered data (which is an array)

@[?id>0]

-

Buffer ID

Unique id for buffering similar payloads together

product_ids

-

Buffer Size

Max number of records to buffer

10

-

circle-info

Note that bufferSize parameter is defined at action level instead of the handler, allowing real-time changing of buffer size for different buffer types (e.g. decreasing or increasing buffer size when required without rebuilding the handler).

This handler can facilitate performance improvements for event handlers which can handle batched requests (e.g. sending update requests as a batch to write handlers or calculations to a rule event handler).

Last updated