You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Currently Data Prepper does not support multiple instances of processors that require peer-forwarding in a single pipeline.
processor:
- aggregate:
- aggregate:
This is primarily because Data Prepper does not currently distinguish between different plugins of the same type. So when forwarding events, the event would go back to the first aggregate processor.
Currently, pluginIds are not unique. Thus, if we forwarded events Data Prepper would not know which aggregate processor to use - the first or second. We should update Data Prepper by:
When forwarding events, use the pluginId instead of the plugin type.
By generating component Ids such as aggregate and aggregate2, Data Prepper can forward events to peers and target the correct processor in the processor chain.
Is your feature request related to a problem? Please describe.
Currently Data Prepper does not support multiple instances of processors that require peer-forwarding in a single pipeline.
This is primarily because Data Prepper does not currently distinguish between different plugins of the same type. So when forwarding events, the event would go back to the first
aggregate
processor.data-prepper/data-prepper-core/src/main/java/org/opensearch/dataprepper/peerforwarder/PeerForwarderProvider.java
Lines 39 to 42 in db33254
There is also currently a restriction on sharing the same identification keys.
data-prepper/data-prepper-core/src/main/java/org/opensearch/dataprepper/peerforwarder/PeerForwardingProcessorDecorator.java
Lines 54 to 62 in 6d74ec4
Describe the solution you'd like
Open up this functionality.
When routing events between peers, Data Prepper includes a
destinationPluginId
property.data-prepper/data-prepper-core/src/main/java/org/opensearch/dataprepper/peerforwarder/model/PeerForwardingEvents.java
Line 21 in 5bc6a2c
Currently, pluginIds are not unique. Thus, if we forwarded events Data Prepper would not know which
aggregate
processor to use - the first or second. We should update Data Prepper by:By generating component Ids such as
aggregate
andaggregate2
, Data Prepper can forward events to peers and target the correct processor in the processor chain.Tasks
The text was updated successfully, but these errors were encountered: