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

file

package
v1.7.2 Latest Latest
Warning

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

Go to latest
Published: Feb 15, 2018 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (

	// DefaultSDConfig is the default file SD configuration.
	DefaultSDConfig = SDConfig{
		RefreshInterval: model.Duration(5 * time.Minute),
	}
)

Functions

This section is empty.

Types

type Discovery

type Discovery struct {
	// contains filtered or unexported fields
}

Discovery provides service discovery functionality based on files that contain target groups in JSON or YAML format. Refreshing happens using file watches and periodic refreshes.

func NewDiscovery

func NewDiscovery(conf *SDConfig, logger log.Logger) *Discovery

NewDiscovery returns a new file discovery for the given paths.

func (*Discovery) Run

func (d *Discovery) Run(ctx context.Context, ch chan<- []*targetgroup.Group)

Run implements the Discoverer interface.

type SDConfig

type SDConfig struct {
	Files           []string       `yaml:"files"`
	RefreshInterval model.Duration `yaml:"refresh_interval,omitempty"`

	// Catches all undefined fields and must be empty after parsing.
	XXX map[string]interface{} `yaml:",inline"`
}

SDConfig is the configuration for file based discovery.

func (*SDConfig) UnmarshalYAML

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

UnmarshalYAML implements the yaml.Unmarshaler interface.

type TimestampCollector

type TimestampCollector struct {
	Description *prometheus.Desc
	// contains filtered or unexported fields
}

TimestampCollector is a Custom Collector for Timestamps of the files.

func NewTimestampCollector

func NewTimestampCollector() *TimestampCollector

NewTimestampCollector creates a TimestampCollector.

func (*TimestampCollector) Collect

func (t *TimestampCollector) Collect(ch chan<- prometheus.Metric)

Collect creates constant metrics for each file with last modified time of the file.

func (*TimestampCollector) Describe

func (t *TimestampCollector) Describe(ch chan<- *prometheus.Desc)

Describe method sends the description to the channel.

Jump to

Keyboard shortcuts

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