Skip to content

receiver/kafkametricsreceiver: use common config and clients #38634

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

Merged

Conversation

axw
Copy link
Contributor

@axw axw commented Mar 14, 2025

Description

Remove the duplicated client config from the Config struct, and embed configkafka.ClientConfig. Remove the duplicated (cluster admin) client creation code, and use kafka.NewSaramaClient.

This means that client_id now defaults to "otel-collector" instead of "otel-metrics-receiver", which is a breaking change.

We also add "metadata.refresh_interval" to ClientConfig, defaulting to 10m, and deprecate "refresh_frequency" from the receiver config. If metadata.refresh_interval is not explicitly set, but refresh_frequency is, then the latter will be used for now.

I discovered some of the existing tests are not working correctly while working on this PR, but fixing that will require a much more extensive refactoring effort. I will follow up with another PR once this one is merged.

Link to tracking issue

Part of #38411

Testing

Updated unit tests.

Documentation

Updated README.

@axw axw force-pushed the kafkametricsreceiver-embed-clientconfig branch 3 times, most recently from ed179cb to cc2a7d1 Compare March 17, 2025 05:21
Use configkafka.ClientConfig, and align with its defaults.
This means that client_id now defaults to "otel-collector"
instead of "otel-metrics-receiver", which is a breaking change.

We also add "metadata.refresh_interval" to ClientConfig,
defaulting to 10m, and deprecate "refresh_frequency" from
the receiver config. If metadata.refresh_interval is not
explicitly set, but refresh_frequency is, then the latter
will be used for now.
@axw axw force-pushed the kafkametricsreceiver-embed-clientconfig branch from cc2a7d1 to f9659c9 Compare March 17, 2025 05:31
@axw axw marked this pull request as ready for review March 17, 2025 06:13
@axw axw requested a review from a team as a code owner March 17, 2025 06:13
@atoulme
Copy link
Contributor

atoulme commented Mar 17, 2025

Please review conflicts.

Copy link
Contributor

@atoulme atoulme left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, @MovieStoreGuy please review as codeowner

@axw
Copy link
Contributor Author

axw commented Mar 20, 2025

Fixing conflict now

@MovieStoreGuy MovieStoreGuy merged commit 67bdc54 into open-telemetry:main Mar 20, 2025
171 checks passed
@github-actions github-actions bot added this to the next release milestone Mar 20, 2025
@axw axw deleted the kafkametricsreceiver-embed-clientconfig branch March 20, 2025 03:52
Fiery-Fenix pushed a commit to Fiery-Fenix/opentelemetry-collector-contrib that referenced this pull request Apr 24, 2025
…lemetry#38634)

#### Description

Remove the duplicated client config from the Config struct, and embed
configkafka.ClientConfig. Remove the duplicated (cluster admin) client
creation code, and use kafka.NewSaramaClient.

This means that client_id now defaults to "otel-collector" instead of
"otel-metrics-receiver", which is a breaking change.

We also add "metadata.refresh_interval" to ClientConfig, defaulting to
10m, and deprecate "refresh_frequency" from the receiver config. If
metadata.refresh_interval is not explicitly set, but refresh_frequency
is, then the latter will be used for now.

I discovered some of the existing tests are not working correctly while
working on this PR, but fixing that will require a much more extensive
refactoring effort. I will follow up with another PR once this one is
merged.

#### Link to tracking issue

Part of
open-telemetry#38411

#### Testing

Updated unit tests.

#### Documentation

Updated README.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants