digitalocean / firebolt

Golang framework for streaming ETL, observability data pipeline, and event processing apps
Other
702 stars 50 forks source link

Support For Node Returning Multiple Events #15

Closed jnadler closed 1 year ago

jnadler commented 4 years ago

Today, a node may pass to its children a single event (or none). Add support for returning multiple events. This will support use cases like routing a log to multiple elasticsearch indexes, or generating multiple kafka messages based on a condition.

jnadler commented 1 year ago

Proposing to address this with a new node type FanoutNode. Signature for Process for this node type will expect a return of []firebolt.Event. An empty array will be equivalent to filtering, and will be treated as such for internal metrics.

jnadler commented 1 year ago

Resolved with #43