Open newly12 opened 2 months ago
Pinging code owners:
processor/routing: @jpkrohling
See Adding Labels via Comments if you do not have permissions to add labels yourself.
@djaglowski, how is this handled in other components?
In the case of the route connector
it uses a slice so I would say it is more deterministic. Maybe we can port that behavior to the processor.
I agree this should be deterministic. Since the configuration starts with a slice, I believe order was always intended. The fact that it's ranging over map should be considered a bug IMO.
I will try to fix it
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping @open-telemetry/collector-contrib-triagers
. If this issue is still relevant, please ping the code owners or leave a comment explaining why it is still relevant. Otherwise, please close it.
Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself.
Component(s)
processor/routing
Describe the issue you're reporting
Not quite sure if this is by design or a bug, this behavior is not documented and sort of surprise to me.
Here is an issue I encountered, given this routing processor config.
the flag
__otel_enabled__
could have 3 valuestrue
false
the goal is that when the flag
__otel_enabled__
is explicitly set tofalse
, route it tonop
exporter.However statements are execute in random order(range through map), given data has
__otel_enabled__
set tofalse
, when 3rd one is executed before 1st one, both statements match, when 1st one is executed before 3rd one, only first statement matches.