Skip to content

Commit

Permalink
refactor: capabilities to protobufs.AgentCapabilities
Browse files Browse the repository at this point in the history
  • Loading branch information
haoqixu committed Nov 28, 2023
1 parent 4f936dd commit 1fe3061
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 5 deletions.
12 changes: 12 additions & 0 deletions extension/opampextension/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (
"errors"

"github.com/oklog/ulid/v2"
"github.com/open-telemetry/opamp-go/protobufs"
"go.opentelemetry.io/collector/config/configopaque"
"go.opentelemetry.io/collector/config/configtls"
)
Expand All @@ -29,6 +30,17 @@ type Capabilities struct {
ReportsEffectiveConfig bool `mapstructure:"reports_effective_config"`
}

func (caps Capabilities) toAgentCapabilities() protobufs.AgentCapabilities {
// All Agents MUST report status.
agentCapabilities := protobufs.AgentCapabilities_AgentCapabilities_ReportsStatus

if caps.ReportsEffectiveConfig {
agentCapabilities |= protobufs.AgentCapabilities_AgentCapabilities_ReportsEffectiveConfig
}

return agentCapabilities
}

// OpAMPServer contains the OpAMP transport configuration.
type OpAMPServer struct {
WS *OpAMPWebsocket `mapstructure:"ws"`
Expand Down
6 changes: 1 addition & 5 deletions extension/opampextension/opamp_agent.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,7 @@ func (o *opampAgent) Start(_ context.Context, _ component.Host) error {
},
OnMessageFunc: o.onMessage,
},
Capabilities: protobufs.AgentCapabilities_AgentCapabilities_ReportsStatus,
}

if o.capabilities.ReportsEffectiveConfig {
settings.Capabilities |= protobufs.AgentCapabilities_AgentCapabilities_ReportsEffectiveConfig
Capabilities: o.capabilities.toAgentCapabilities(),
}

if err := o.createAgentDescription(); err != nil {
Expand Down

0 comments on commit 1fe3061

Please sign in to comment.