community
community copied to clipboard
Consider allowing instrumentation to be maintained in external repos.
There have been discussions regarding maintaining/shipping instrumentation from repos outside the main OpenTelemetry organization, given that:
- There are only so many maintainers/approvers, which may result in constant bottlenecks regarding code approvals and releases.
- There can be instrumentation code for everything out there, including components for rather exotic or experimental components, with exponential growth, component count wise.
Because of this, it may be important to define that:
- Instrumentation for many well-used components (think of Django/Flask for Python or Spring/Okhttp for Java) resides within the OpenTelemetry repos.
- Additional instrumentation for further components (think of some new, experimental OSS library) can be released as a 'contrib' package, while being maintained in an external organization/repo.
The OpenTelemetry Registry hence would become a core component (which probably already is).
An alternative would be to have an approach similar to the Collector Contrib repo, where you have CODEOWNERS per directory, but there's the fear this approach just won't work nor scale well for instrumentation components.
My current proposal as to how we can move forward with this issue is documented here
I left comments on @iNikem's proposal, as has @dyladan. Once we get a few other reviews in the doc, then I suggest that we turn this into an OTep / PR.
CC @jsuereth
@carlosalberto can we now close this issue as we have accepted OTEP https://github.com/open-telemetry/oteps/blob/main/text/0155-external-modules.md?