Skip to content

[cmd/opampsupervisor] macOS example setup broken #39492

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

Closed
johannaojeling opened this issue Apr 18, 2025 · 1 comment · Fixed by #39493
Closed

[cmd/opampsupervisor] macOS example setup broken #39492

johannaojeling opened this issue Apr 18, 2025 · 1 comment · Fixed by #39493
Labels
bug Something isn't working cmd/opampsupervisor needs triage New item requiring triage

Comments

@johannaojeling
Copy link
Member

Component(s)

cmd/opampsupervisor

What happened?

Description

The macOS example config in cmd/opampsupervisor/examples/supervisor_darwin.yaml has diverged from the Linux and Windows configs since #37541, and it is no longer possible to successfully connect to the opamp-go example server without additional setup or changes.

Steps to Reproduce

In open-telemetry/opamp-go clone:

cd internal/examples/server
go run .

In open-telemetry/opentelemetry-collector-contrib clone:

make otelcontribcol
cd cmd/opampsupervisor
go run . --config examples/supervisor_darwin.yaml

Expected Result

Supervisor should successfully connect to the OpAMP server.

Actual Result

Supervisor fails to connect to the OpAMP server and to the logs and traces endpoints.

Supervisor logs: see the Log output section.

Server logs:

2025/04/18 13:26:23.196231 [MAIN] OpAMP Server starting...
2025/04/18 13:26:23.197883 [MAIN] OpAMP Server running...
2025/04/18 13:26:26 http: TLS handshake error from 127.0.0.1:55019: client sent an HTTP request to an HTTPS server
2025/04/18 13:26:27 http: TLS handshake error from 127.0.0.1:55039: client sent an HTTP request to an HTTPS server
2025/04/18 13:26:28 http: TLS handshake error from 127.0.0.1:55048: client sent an HTTP request to an HTTPS server

Collector version

ec1e506

Environment information

Environment

OS: macOS Sequoia 15.4.1
Compiler: go1.24.2 darwin/arm64

OpenTelemetry Collector configuration

Log output

{"level":"debug","ts":1744975586.6715798,"logger":"supervisor","caller":"commander/commander.go:251","msg":"Agent process started","pid":9075}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.726869,"logger":"supervisor","caller":"commander/commander.go:73","msg":"Starting agent","agent":"../../bin/otelcontribcol_darwin_arm64"}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.735687,"logger":"supervisor","caller":"commander/commander.go:130","msg":"Agent process started","pid":9086}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.826865,"logger":"supervisor","caller":"commander/commander.go:341","msg":"Stopping agent process","pid":9086}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.827808,"logger":"supervisor.opamp-server","caller":"supervisor/logger.go:21","msg":"Agent disconnected: websocket: close 1000 (normal): Normal closure"}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.829142,"logger":"supervisor","caller":"commander/commander.go:357","msg":"Agent process successfully stopped.","pid":9086}
2025/04/18 13:26:26 traces export: Post "http://localhost:4318/v1/traces": dial tcp [::1]:4318: connect: connection refused
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"info","ts":1744975586.829694,"logger":"supervisor","caller":"supervisor/supervisor.go:340","msg":"Supervisor starting","id":"019648a6-6567-7d90-b724-4bcb0d75f066"}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"info","ts":1744975586.830057,"logger":"supervisor","caller":"supervisor/supervisor.go:1086","msg":"No last received remote config found"}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.830731,"logger":"supervisor","caller":"supervisor/supervisor.go:1283","msg":"Merged config changed."}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.831359,"logger":"supervisor","caller":"supervisor/supervisor.go:651","msg":"Connecting to OpAMP server...","endpoint":"ws://127.0.0.1:4320/v1/opamp","headers":null}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.831955,"logger":"supervisor","caller":"supervisor/supervisor.go:704","msg":"Starting OpAMP client..."}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.832476,"logger":"supervisor","caller":"supervisor/supervisor.go:708","msg":"OpAMP client started."}
{"level":"error","ts":1744975586.833015,"logger":"supervisor","caller":"supervisor/supervisor.go:662","msg":"Failed to connect to the server","error":"websocket: bad handshake","stacktrace":"github.com/open-telemetry/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor.(*Supervisor).startOpAMPClient.func2\n\t/Users/johannaojeling/repo/johannaojeling/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor/supervisor.go:662\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).tryConnectOnce\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:239\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).ensureConnected\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:282\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runOneCycle\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:326\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runUntilStopped\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:412\ngithub.com/open-telemetry/opamp-go/client/internal.(*ClientCommon).StartConnectAndRun.func1\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/internal/clientcommon.go:208"}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.8333719,"logger":"supervisor","caller":"supervisor/supervisor.go:728","msg":"Starting OpAMP server..."}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"error","ts":1744975586.833537,"logger":"supervisor.opamp-client","caller":"supervisor/logger.go:26","msg":"Server responded with status=400 Bad Request","stacktrace":"github.com/open-telemetry/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor.(*opAMPLogger).Errorf\n\t/Users/johannaojeling/repo/johannaojeling/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor/logger.go:26\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).tryConnectOnce\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:249\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).ensureConnected\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:282\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runOneCycle\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:326\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runUntilStopped\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:412\ngithub.com/open-telemetry/opamp-go/client/internal.(*ClientCommon).StartConnectAndRun.func1\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/internal/clientcommon.go:208"}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.834222,"logger":"supervisor","caller":"supervisor/supervisor.go:748","msg":"OpAMP server started."}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"error","ts":1744975586.834332,"logger":"supervisor","caller":"supervisor/supervisor.go:662","msg":"Failed to connect to the server","error":"websocket: bad handshake","stacktrace":"github.com/open-telemetry/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor.(*Supervisor).startOpAMPClient.func2\n\t/Users/johannaojeling/repo/johannaojeling/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor/supervisor.go:662\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).tryConnectOnce.func1\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:232\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).tryConnectOnce\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:251\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).ensureConnected\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:282\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runOneCycle\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:326\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runUntilStopped\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:412\ngithub.com/open-telemetry/opamp-go/client/internal.(*ClientCommon).StartConnectAndRun.func1\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/internal/clientcommon.go:208"}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"debug","ts":1744975586.834647,"logger":"supervisor","caller":"supervisor/supervisor.go:1396","msg":"Effective config found, starting agent initial time"}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"error","ts":1744975586.834889,"logger":"supervisor.opamp-client","caller":"supervisor/logger.go:26","msg":"Connection failed (websocket: bad handshake), will retry.","stacktrace":"github.com/open-telemetry/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor.(*opAMPLogger).Errorf\n\t/Users/johannaojeling/repo/johannaojeling/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor/logger.go:26\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).ensureConnected\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:288\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runOneCycle\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:326\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runUntilStopped\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:412\ngithub.com/open-telemetry/opamp-go/client/internal.(*ClientCommon).StartConnectAndRun.func1\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/internal/clientcommon.go:208"}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"info","ts":1744975586.8352268,"logger":"supervisor","caller":"supervisor/supervisor.go:1304","msg":"No config present, not starting agent."}
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
2025/04/18 13:26:26 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"error","ts":1744975587.352326,"logger":"supervisor","caller":"supervisor/supervisor.go:662","msg":"Failed to connect to the server","error":"websocket: bad handshake","stacktrace":"github.com/open-telemetry/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor.(*Supervisor).startOpAMPClient.func2\n\t/Users/johannaojeling/repo/johannaojeling/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor/supervisor.go:662\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).tryConnectOnce\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:239\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).ensureConnected\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:282\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runOneCycle\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:326\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runUntilStopped\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:412\ngithub.com/open-telemetry/opamp-go/client/internal.(*ClientCommon).StartConnectAndRun.func1\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/internal/clientcommon.go:208"}
2025/04/18 13:26:27 Post "http://localhost:4318/v1/logs": dial tcp [::1]:4318: connect: connection refused
{"level":"error","ts":1744975587.353229,"logger":"supervisor.opamp-client","caller":"supervisor/logger.go:26","msg":"Server responded with status=400 Bad Request","stacktrace":"github.com/open-telemetry/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor.(*opAMPLogger).Errorf\n\t/Users/johannaojeling/repo/johannaojeling/opentelemetry-collector-contrib/cmd/opampsupervisor/supervisor/logger.go:26\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).tryConnectOnce\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:249\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).ensureConnected\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:282\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runOneCycle\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:326\ngithub.com/open-telemetry/opamp-go/client.(*wsClient).runUntilStopped\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/wsclient.go:412\ngithub.com/open-telemetry/opamp-go/client/internal.(*ClientCommon).StartConnectAndRun.func1\n\t/Users/johannaojeling/go/pkg/mod/github.com/open-telemetry/[email protected]/client/internal/clientcommon.go:208"}

Additional context

No response

@johannaojeling johannaojeling added bug Something isn't working needs triage New item requiring triage labels Apr 18, 2025
Copy link
Contributor

Pinging code owners:

See Adding Labels via Comments if you do not have permissions to add labels yourself.

akshays-19 pushed a commit to akshays-19/opentelemetry-collector-contrib that referenced this issue Apr 23, 2025
…-telemetry#39493)

<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue.
Ex. Adding a feature - Explain what this achieves.-->
#### Description

Fixes the macOS [example
config](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/ec1e5061f599d47ec17c5e4783f60e9ea3a0d1e2/cmd/opampsupervisor/examples/supervisor_darwin.yaml)
and makes it consistent with the Linux and Windows configs, so that the
Supervisor can successfully connect to the [go-opamp
server](https://github.com/open-telemetry/opamp-go/tree/d646431dacb432f56a84111bf94c9741692f53c0/internal/examples/server).

<!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. -->
#### Link to tracking issue
Fixes
open-telemetry#39492

<!--Describe what testing was performed and which tests were added.-->
#### Testing

1. In
[open-telemetry/opamp-go](https://github.com/open-telemetry/opamp-go):

```
cd internal/examples/server
go run .
```

2. In
[open-telemetry/opentelemetry-collector-contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib):

```
make otelcontribcol
cd cmd/opampsupervisor
go run . --config examples/supervisor_darwin.yaml
```

<!--Please delete paragraphs that you did not use before submitting.-->
Fiery-Fenix pushed a commit to Fiery-Fenix/opentelemetry-collector-contrib that referenced this issue Apr 24, 2025
…-telemetry#39493)

<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue.
Ex. Adding a feature - Explain what this achieves.-->
#### Description

Fixes the macOS [example
config](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/ec1e5061f599d47ec17c5e4783f60e9ea3a0d1e2/cmd/opampsupervisor/examples/supervisor_darwin.yaml)
and makes it consistent with the Linux and Windows configs, so that the
Supervisor can successfully connect to the [go-opamp
server](https://github.com/open-telemetry/opamp-go/tree/d646431dacb432f56a84111bf94c9741692f53c0/internal/examples/server).

<!-- Issue number (e.g. open-telemetry#1234) or full URL to issue, if applicable. -->
#### Link to tracking issue
Fixes
open-telemetry#39492

<!--Describe what testing was performed and which tests were added.-->
#### Testing

1. In
[open-telemetry/opamp-go](https://github.com/open-telemetry/opamp-go):

```
cd internal/examples/server
go run .
```

2. In
[open-telemetry/opentelemetry-collector-contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib):

```
make otelcontribcol
cd cmd/opampsupervisor
go run . --config examples/supervisor_darwin.yaml
```

<!--Please delete paragraphs that you did not use before submitting.-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working cmd/opampsupervisor needs triage New item requiring triage
Projects
None yet
1 participant