-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Description
Component(s)
service
What happened?
Describe the bug
Custom compiled binaries for AIX (and other unsupported OSes) do not start. The following error is thrown when starting the collector:
Error: failed to register process metrics: not implemented yet
2025/12/17 13:32:42 collector server run finished with error: failed to register process metrics: not implemented yetThe root cause is that the gopsutil library does not support AIX, however setting the following in the service config should disable internal telemetry and suppress this error:
telemetry:
metrics:
level: noneThis appears to be a regression of this change, affecting all releases starting with 0.136.0.
Steps to reproduce
Compile a recent version of the OTel collector (anything 0.136.0 or later) with GOOS=aix GOARCH=ppc64. I used the following minimal builder config to avoid other compatibility issues while testing:
dist:
name: otelcol-aix
description: OpenTelemetry collector built for AIX
output_path: ./otelcol-aix
version: 0.142.0
exporters:
- gomod: go.opentelemetry.io/collector/exporter/debugexporter v0.142.0
- gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.142.0
- gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.142.0
processors:
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/processor/datadogsemanticsprocessor v0.142.0
receivers:
- gomod: go.opentelemetry.io/collector/receiver/nopreceiver v0.142.0
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/datadogreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filelogreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/filestatsreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/fluentforwardreceiver v0.142.0
- gomod: github.com/open-telemetry/opentelemetry-collector-contrib/receiver/hostmetricsreceiver v0.142.0
providers:
- gomod: go.opentelemetry.io/collector/confmap/provider/envprovider v1.47.0
- gomod: go.opentelemetry.io/collector/confmap/provider/fileprovider v1.47.0
- gomod: go.opentelemetry.io/collector/confmap/provider/httpprovider v1.47.0
- gomod: go.opentelemetry.io/collector/confmap/provider/httpsprovider v1.47.0
- gomod: go.opentelemetry.io/collector/confmap/provider/yamlprovider v1.47.0
extensions:
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.142.0After building the executable, copy to the AIX host, add execute permissions, and run with a minimal configuration shown below.
What did you expect to see?
Setting service.telemetry.metrics.level: none should prevent the failed to register process metrics: not implemented yet error message and allow the collector to start normally.
What did you see instead?
The collector fails to start with the following output:
2025-12-17T13:32:42.931-0600 info otelconftelemetry/metrics.go:25 Internal metrics telemetry disabled {"resource": {"service.instance.id": "92ad75d1-ae5f-4752-a41c-274e9a4e8a06", "service.name": "otelcol-aix", "service.version": "0.142.0"}}
2025-12-17T13:32:42.932-0600 error [email protected]/service.go:176 error found during service initialization {"resource": {"service.instance.id": "92ad75d1-ae5f-4752-a41c-274e9a4e8a06", "service.name": "otelcol-aix", "service.version": "0.142.0"}, "error": "failed to register process metrics: not implemented yet"}
go.opentelemetry.io/collector/service.New.func2
go.opentelemetry.io/collector/[email protected]/service.go:176
go.opentelemetry.io/collector/service.New
go.opentelemetry.io/collector/[email protected]/service.go:241
go.opentelemetry.io/collector/otelcol.(*Collector).setupConfigurationComponents
go.opentelemetry.io/collector/[email protected]/collector.go:212
go.opentelemetry.io/collector/otelcol.(*Collector).Run
go.opentelemetry.io/collector/[email protected]/collector.go:330
go.opentelemetry.io/collector/otelcol.NewCommand.func1
go.opentelemetry.io/collector/[email protected]/command.go:39
github.com/spf13/cobra.(*Command).execute
github.com/spf13/[email protected]/command.go:1015
github.com/spf13/cobra.(*Command).ExecuteC
github.com/spf13/[email protected]/command.go:1148
github.com/spf13/cobra.(*Command).Execute
github.com/spf13/[email protected]/command.go:1071
main.runInteractive
go.opentelemetry.io/collector/cmd/builder/main.go:58
main.run
go.opentelemetry.io/collector/cmd/builder/main_others.go:10
main.main
go.opentelemetry.io/collector/cmd/builder/main.go:51
runtime.main
runtime/proc.go:285
Error: failed to register process metrics: not implemented yet
2025/12/17 13:32:42 collector server run finished with error: failed to register process metrics: not implemented yetCollector version
0.142.0
Environment information
Environment
OS: AIX 7.3
Compiler(if manually compiled): go1.25.5, ocb 0.142.0
OpenTelemetry Collector configuration
receivers:
hostmetrics:
scrapers:
cpu:
disk:
processors:
batch:
timeout: 10s
exporters:
debug:
verbosity: detailed
service:
telemetry:
metrics:
level: none
pipelines:
metrics:
receivers: [hostmetrics]
processors: [batch]
exporters: [debug]Log output
Additional context
Because this is a regression, there is a previous closed issue reported: #12098
Issue was fixed in this PR.
Fix is present in service.go v0.135.0, missing in v0.136.0.
Tip
React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. Learn more here.