chore: Include Default Engine Open Telemetry Components in OTel Engine#5316
Conversation
🔍 Dependency ReviewBelow is a review of dependency changes detected in the provided diff, focused on Go module updates and replacements. github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filestatsreceiver v0.142.0 -> github.com/grafana/opentelemetry-collector-contrib/receiver/filestatsreceiver v0.0.0-20260126095124-0af81a9e8966
Summary:
Impacted files (replace directive added in multiple modules):
Relevant snippet: + replace github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filestatsreceiver => github.com/grafana/opentelemetry-collector-contrib/receiver/filestatsreceiver v0.0.0-20260126095124-0af81a9e8966Code changes required: None. Suggested follow-up (when upstream is fixed and released): - replace github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filestatsreceiver => github.com/grafana/opentelemetry-collector-contrib/receiver/filestatsreceiver v0.0.0-20260126095124-0af81a9e8966
+ // Remove the replace after upstream fix for FreeBSD build tags is availableMultiple OpenTelemetry Collector Contrib components v0.142.0 -> v0.142.0 (promoted from indirect to direct)
Summary:
Affected modules (non-exhaustive list, all at v0.142.0):
Evidence:
Code changes required: None. Notes
|
|
making a link to #5247 -> since this is a stepping stone for that proposal |
|
hmm, looks like the file stat receiver is not compatible with FreeBSD, I can see we've also got build restrictions in our own component. I see two options:
edit: actually - it might not be this component that's causing an issue, looking into it more |
001c96c to
7a34205
Compare
… hostmetrics receiver
6f25985 to
214e5c0
Compare
|
OK - had a further look into this, the reason we saw failures is because Alloy wraps upstream components which are not compatible with FreeBSD (which is not listed as a supported platform upstream). There were two components brought in from the default engine with this problem:
|
There was a problem hiding this comment.
Pull request overview
Expands the OTel Engine’s embedded OpenTelemetry Collector distribution to include the upstream components already wrapped by the Default Engine (plus grafanacloud connector and hostmetrics receiver), preserving functionality and enabling a smoother migration path.
Changes:
- Adds a broad set of OTel Contrib receivers/processors/exporters/extensions/connectors to the OTel Engine builder manifest and generated factories list.
- Introduces a
replaceto a Grafana fork offilestatsreceiverto address FreeBSD build tag issues (tracked via upstream issue). - Updates Go module metadata (
go.mod/go.sum) across the root, extension module, and collector module to reflect the new dependency set.
Reviewed changes
Copilot reviewed 6 out of 9 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| go.mod | Adds generated replace for filestatsreceiver fork to address FreeBSD build tags. |
| go.sum | Updates module checksums reflecting the filestatsreceiver fork. |
| extension/alloyengine/go.mod | Mirrors the generated replace for filestatsreceiver fork. |
| extension/alloyengine/go.sum | Updates checksums reflecting the filestatsreceiver fork. |
| dependency-replacements.yaml | Adds the new replacement rule so it propagates through the generation pipeline. |
| collector/go.mod | Adds direct requirements for newly included OTel Contrib components; includes filestatsreceiver replace. |
| collector/go.sum | Updates checksums for newly included components (e.g., grafanacloud connector, hostmetrics receiver, forked filestatsreceiver). |
| collector/components.go | Updates generated factory registration to include the expanded component set. |
| collector/builder-config.yaml | Updates the OTel Collector Builder manifest to include the expanded component set and the new replace. |
7144faf to
4eed769
Compare
…nt-in-otel-engine
ff544e5 to
e272af4
Compare
thampiotr
left a comment
There was a problem hiding this comment.
Seems like we are adding:
- hostmetricsreceiver - but I don't see it in Alloy's otelcol.* ?
- grafanacloudconnector - I guess this is fine :)
Seems like we are not adding:
- otelcol.receiver.opencensus - because it's been deprecated: open-telemetry/opentelemetry-collector-contrib#36791
- otelcol.exporter.datadog - blocked on FreeBSD issue
- otelcol.connector.host_info - is this replaced by grafanacloudconnector?
thampiotr
left a comment
There was a problem hiding this comment.
Discussed the concerns on Slack. LGTM!
|
@thampiotr exactly yeah, I didn't catch |
As discussed, we will also include open telemetry components that are wrapped in the Default Engine in the OTel Engine, this means users don't lose any functionality - and clears the space for a migration path in the future. This PR adds all upstream components found in the default engine over to the builder manifest for the otel engine, minus a couple which are addressed in this comment
There are two other components added as well (the
grafanacloudconnector, andhostmetricsreceiver), that are included in the GC "new connection" -> "OpenTelemetry collector" wizard flow, and so would make sense to also have work with our own distributionI've also made sure the components are alphabetical, just makes it a tad easier to read