Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[exporter/elasticsearch] Attributes are mutated in data stream routing #35023

Closed
carsonip opened this issue Sep 5, 2024 · 2 comments
Closed
Labels
bug Something isn't working exporter/elasticsearch needs triage New item requiring triage

Comments

@carsonip
Copy link
Contributor

carsonip commented Sep 5, 2024

Component(s)

exporter/elasticsearch

What happened?

Description

Attributes are mutated for data stream routing when *_dynamic_index is enabled. It does not pose a problem to es exporter itself, but may be problematic if the same event is sent to other exporters. Ideally es exporter should operate on a copy of the attribute map so that it does not mutate the original event.

Need to confirm if this is an actual issue.

Steps to Reproduce

Expected Result

Actual Result

Collector version

v0.108.0

Environment information

Environment

OS: (e.g., "Ubuntu 20.04")
Compiler(if manually compiled): (e.g., "go 14.2")

OpenTelemetry Collector configuration

No response

Log output

No response

Additional context

No response

@carsonip carsonip added bug Something isn't working needs triage New item requiring triage labels Sep 5, 2024
@carsonip carsonip changed the title [exporter/elasticsearch] attributes are mutated in data stream routing [exporter/elasticsearch] Attributes are mutated in data stream routing Sep 5, 2024
Copy link
Contributor

github-actions bot commented Sep 5, 2024

Pinging code owners:

See Adding Labels via Comments if you do not have permissions to add labels yourself.

@carsonip
Copy link
Contributor Author

carsonip commented Sep 5, 2024

Closing as this is a non-issue according to OpenTelemetry collector architecture docs:

Pipelines can have one or more receivers. Data from all receivers is pushed to the first processor, which processes the data and then pushes it to the next processor. A processor might also drop the data if it’s sampling or filtering. This continues until the last processor in the pipeline pushes the data to the exporters. Each exporter gets a copy of each data element. The last processor uses a fanoutconsumer to send the data to multiple exporters.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working exporter/elasticsearch needs triage New item requiring triage
Projects
None yet
Development

No branches or pull requests

1 participant