opentelemetry-collector icon indicating copy to clipboard operation
opentelemetry-collector copied to clipboard

[chore][docs/rfc] Add RFC on configuring confmap Providers

Open evan-bradley opened this issue 1 year ago • 2 comments

Description

Documents how we want to configure confmap Providers, with the default decision being to use URI fragments.

Per the SIG discussion on 2024-05-08, I have included as many alternatives as I could think of. I think a few of them have merit, but I don't think any of the options are without downsides.

evan-bradley avatar May 08 '24 19:05 evan-bradley

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 92.53%. Comparing base (c6b70a7) to head (d3485a9). Report is 266 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #10121      +/-   ##
==========================================
+ Coverage   91.67%   92.53%   +0.85%     
==========================================
  Files         362      388      +26     
  Lines       16754    18317    +1563     
==========================================
+ Hits        15359    16949    +1590     
+ Misses       1056     1022      -34     
- Partials      339      346       +7     

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov[bot] avatar May 08 '24 20:05 codecov[bot]

Can the RFC include any prior art on this type of configuration?

I spent some time thinking about this, but I'm not aware of anything that matches what we're doing closely enough to make sense. The best I can think of would be infrastructure as code tools like Terraform, Pulumi, or CloudFormation, but I think what they are doing is sufficiently different that it's hard to use them as a basis. If there are other tools or approaches you think would be worth investigating, let me know and I can take a look.

I can also do a writeup on how our configuration fits into the larger landscape of infrastructure configuration approaches if you think it would be beneficial to take a broader look at our whole approach, but didn't want to detract from the more practical discussion at hand of how to do things like authenticate requests in our HTTP providers.

evan-bradley avatar May 14 '24 13:05 evan-bradley

This PR was marked stale due to lack of activity. It will be closed in 14 days.

github-actions[bot] avatar May 29 '24 03:05 github-actions[bot]

This PR was marked stale due to lack of activity. It will be closed in 14 days.

github-actions[bot] avatar Jul 05 '24 03:07 github-actions[bot]

Is there an option to support a ${<provider>:URI}[params] style if we introduce a new specialized flag? Like instead of --config its --fancy-config? That way we get the best syntax without breaking users?

TylerHelmuth avatar Jul 26 '24 15:07 TylerHelmuth

I think at that point we should just have an alpha-stability feature gate that we use to determine whether params are supported. I see the benefit there, but I think it would also be confusing to have to opt-in per-file. In cases where I forget to use --fancy-config, I would get weird syntax errors (or worse, no error at all) without a clear indicator of why.

I'm also a bit nervous about committing long-term to maintaining two ways to parse the config.

evan-bradley avatar Jul 26 '24 16:07 evan-bradley

This is replaced by https://github.com/open-telemetry/opentelemetry-collector/pull/10776.

evan-bradley avatar Aug 06 '24 15:08 evan-bradley