Versions in this module Expand all Collapse all v0 v0.21.2 Aug 27, 2025 Changes in this version + var ErrAvailableComponentsMissing = errors.New("AvailableComponents is nil") + var ErrCustomCapabilityNotSupported = errors.New("CustomCapability of CustomMessage is not supported") + var ErrCustomMessageMissing = errors.New("CustomMessage is nil") + var ErrCustomMessagePending = errors.New("custom message already set") + var ErrNoAvailableComponentHash = errors.New("AvailableComponents.Hash is empty") + var ErrReportsAvailableComponentsNotSet = errors.New("ReportsAvailableComponents capability is not set") + type Callbacks struct + CheckRedirect func(req *http.Request, viaReq []*http.Request, via []*http.Response) error + DownloadHTTPClient func(ctx context.Context, file *protobufs.DownloadableFile) (*http.Client, error) + GetEffectiveConfig func(ctx context.Context) (*protobufs.EffectiveConfig, error) + OnCommand func(ctx context.Context, command *protobufs.ServerToAgentCommand) error + OnConnect func(ctx context.Context) + OnConnectFailed func(ctx context.Context, err error) + OnConnectionSettings func(ctx context.Context, settings *protobufs.ConnectionSettingsOffers) error + OnError func(ctx context.Context, err *protobufs.ServerErrorResponse) + OnMessage func(ctx context.Context, msg *MessageData) + OnOpampConnectionSettings func(ctx context.Context, settings *protobufs.OpAMPConnectionSettings) error + SaveRemoteConfigStatus func(ctx context.Context, status *protobufs.RemoteConfigStatus) + func (c *Callbacks) SetDefaults() + type InstanceUid [16]byte + type Logger interface + Debugf func(ctx context.Context, format string, v ...interface{}) + Errorf func(ctx context.Context, format string, v ...interface{}) + type MessageData struct + AgentIdentification *protobufs.AgentIdentification + CustomCapabilities *protobufs.CustomCapabilities + CustomMessage *protobufs.CustomMessage + OfferedConnectionsSettingsHash []byte + OtherConnSettings map[string]*protobufs.OtherConnectionSettings + OwnLogsConnSettings *protobufs.TelemetryConnectionSettings + OwnMetricsConnSettings *protobufs.TelemetryConnectionSettings + OwnTracesConnSettings *protobufs.TelemetryConnectionSettings + PackageSyncer PackagesSyncer + PackagesAvailable *protobufs.PackagesAvailable + RemoteConfig *protobufs.AgentRemoteConfig + type PackageState struct + Exists bool + Hash []byte + Type protobufs.PackageType + Version string + type PackagesStateProvider interface + AllPackagesHash func() ([]byte, error) + CreatePackage func(packageName string, typ protobufs.PackageType) error + DeletePackage func(packageName string) error + FileContentHash func(packageName string) ([]byte, error) + LastReportedStatuses func() (*protobufs.PackageStatuses, error) + PackageState func(packageName string) (state PackageState, err error) + Packages func() ([]string, error) + SetAllPackagesHash func(hash []byte) error + SetLastReportedStatuses func(statuses *protobufs.PackageStatuses) error + SetPackageState func(packageName string, state PackageState) error + UpdateContent func(ctx context.Context, packageName string, data io.Reader, ...) error + type PackagesSyncer interface + Done func() <-chan struct{} + Sync func(ctx context.Context) error + type StartSettings struct + Callbacks Callbacks + Capabilities protobufs.AgentCapabilities + DownloadReporterInterval *time.Duration + EnableCompression bool + Header http.Header + HeaderFunc func(http.Header) http.Header + HeartbeatInterval *time.Duration + InstanceUid InstanceUid + LastConnectionSettingsStatus *protobufs.ConnectionSettingsStatus + OpAMPServerURL string + PackagesStateProvider PackagesStateProvider + RemoteConfigStatus *protobufs.RemoteConfigStatus + TLSConfig *tls.Config