-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
Local configuration is overwritten #32048
Comments
Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
The reason for this behavior is that the |
Thanks for your reply. I know that the effective.yaml file is meant for the supervisor to write, and the supervisor retrieves remote configurations from the OpAMP server. The phenomenon described in this issue is that when the remote configuration provided by the OpAMP server is empty (item.body is
the final configuration will become the default configuration provided by the supervisor. Thecause of this issue is that the OpAMP server sends an empty configuration when the connection is first established. Has OTel considered implementing restrictions for this scenario?"(for example, using the saved configuration) |
Why is the server doing this? I don't think this is compliant with the spec. Which server implementation is this? |
@tigrannajaryan I'm using the OpAMP-go server example. When a connection is established for the first time, since the OpAMP server does not have the OTel's RemoteConfig, it will return an empty configuration (non-nil) |
I think the server should send back the config after the agent sends the first message that contains the AgentDescription message. If that is not happening then I think it is a server bug. |
I also think it is a server error. I would like to ask if OTel needs to deal with this situation? After all, it is very important to ensure that the agent configuration is effective in remote configuration. |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
If this happens, will OTel judge this better to ensure the stability of OTel? |
I am not sure what exactly the Supervisor can do in this situation if the server misbehaves. I suggest to file a bug against the server (please include the repro steps). |
This issue has been inactive for 60 days. It will be closed in 60 days if there is no activity. To ping code owners by adding a component label, see Adding Labels via Comments, or if you are unsure of which component this issue relates to, please ping Pinging code owners:
See Adding Labels via Comments if you do not have permissions to add labels yourself. |
Component(s)
cmd/opampsupervisor
What happened?
Description
When I run
opampsupervisor
(the backend program is OpAMP's sample server), I noticed thatEffectivConfig
gets cleared, leaving only the contents of ownMetricsCfg and ExtraLocalConfig.Steps to Reproduce
opampsupervisor
can connect to the backend normallyeffective.yaml
opampsupervisor
effective.yaml
.Expected Result
The content I filled in to the local configuration file named effective.yaml will not be cleared after the connection is established.
Actual Result
The configuration content I filled in was cleared
Collector version
all
Environment information
Environment
OS: Darwin
Compiler: go 1.21
OpenTelemetry Collector configuration
Log output
No response
Additional context
I know the reason is that the backend server returns an empty remote configuration. However, I believe that the
opampsupervisor
needs to handle such situations to avoid the issue where configurations get overwritten due to logic errors in the backend.The text was updated successfully, but these errors were encountered: