Help us shape the future of Go! Take the 2026 Go Developer Survey

aws

package
v0.305.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 17, 2026 License: Apache-2.0 Imports: 25 Imported by: 15

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultEC2SDConfig = EC2SDConfig{
	Port:             80,
	RefreshInterval:  model.Duration(60 * time.Second),
	HTTPClientConfig: config.DefaultHTTPClientConfig,
}

DefaultEC2SDConfig is the default EC2 SD configuration.

View Source
var DefaultLightsailSDConfig = LightsailSDConfig{
	Port:             80,
	RefreshInterval:  model.Duration(60 * time.Second),
	HTTPClientConfig: config.DefaultHTTPClientConfig,
}

DefaultLightsailSDConfig is the default Lightsail SD configuration.

Functions

This section is empty.

Types

type EC2Discovery

type EC2Discovery struct {
	*refresh.Discovery
	// contains filtered or unexported fields
}

EC2Discovery periodically performs EC2-SD requests. It implements the Discoverer interface.

func NewEC2Discovery

func NewEC2Discovery(conf *EC2SDConfig, logger *slog.Logger, metrics discovery.DiscovererMetrics) (*EC2Discovery, error)

NewEC2Discovery returns a new EC2Discovery which periodically refreshes its targets.

type EC2Filter

type EC2Filter struct {
	Name   string   `yaml:"name"`
	Values []string `yaml:"values"`
}

EC2Filter is the configuration for filtering EC2 instances.

type EC2SDConfig

type EC2SDConfig struct {
	Endpoint        string         `yaml:"endpoint"`
	Region          string         `yaml:"region"`
	AccessKey       string         `yaml:"access_key,omitempty"`
	SecretKey       config.Secret  `yaml:"secret_key,omitempty"`
	Profile         string         `yaml:"profile,omitempty"`
	RoleARN         string         `yaml:"role_arn,omitempty"`
	RefreshInterval model.Duration `yaml:"refresh_interval,omitempty"`
	Port            int            `yaml:"port"`
	Filters         []*EC2Filter   `yaml:"filters"`

	HTTPClientConfig config.HTTPClientConfig `yaml:",inline"`
}

EC2SDConfig is the configuration for EC2 based service discovery.

func (*EC2SDConfig) Name

func (*EC2SDConfig) Name() string

Name returns the name of the EC2 Config.

func (*EC2SDConfig) NewDiscoverer

NewDiscoverer returns a Discoverer for the EC2 Config.

func (*EC2SDConfig) NewDiscovererMetrics added in v0.50.0

NewDiscovererMetrics implements discovery.Config.

func (*EC2SDConfig) UnmarshalYAML

func (c *EC2SDConfig) UnmarshalYAML(unmarshal func(interface{}) error) error

UnmarshalYAML implements the yaml.Unmarshaler interface for the EC2 Config.

type LightsailDiscovery

type LightsailDiscovery struct {
	*refresh.Discovery
	// contains filtered or unexported fields
}

LightsailDiscovery periodically performs Lightsail-SD requests. It implements the Discoverer interface.

func NewLightsailDiscovery

func NewLightsailDiscovery(conf *LightsailSDConfig, logger *slog.Logger, metrics discovery.DiscovererMetrics) (*LightsailDiscovery, error)

NewLightsailDiscovery returns a new LightsailDiscovery which periodically refreshes its targets.

type LightsailSDConfig

type LightsailSDConfig struct {
	Endpoint        string         `yaml:"endpoint"`
	Region          string         `yaml:"region"`
	AccessKey       string         `yaml:"access_key,omitempty"`
	SecretKey       config.Secret  `yaml:"secret_key,omitempty"`
	Profile         string         `yaml:"profile,omitempty"`
	RoleARN         string         `yaml:"role_arn,omitempty"`
	RefreshInterval model.Duration `yaml:"refresh_interval,omitempty"`
	Port            int            `yaml:"port"`

	HTTPClientConfig config.HTTPClientConfig `yaml:",inline"`
}

LightsailSDConfig is the configuration for Lightsail based service discovery.

func (*LightsailSDConfig) Name

func (*LightsailSDConfig) Name() string

Name returns the name of the Lightsail Config.

func (*LightsailSDConfig) NewDiscoverer

NewDiscoverer returns a Discoverer for the Lightsail Config.

func (*LightsailSDConfig) NewDiscovererMetrics added in v0.50.0

NewDiscovererMetrics implements discovery.Config.

func (*LightsailSDConfig) UnmarshalYAML

func (c *LightsailSDConfig) UnmarshalYAML(unmarshal func(interface{}) error) error

UnmarshalYAML implements the yaml.Unmarshaler interface for the Lightsail Config.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL