Documentation
      ¶
    
    
  
    
  
    Overview ¶
Package instance provides a mini Prometheus scraper and remote_writer.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( DefaultConfig = Config{ HostFilter: false, WALTruncateFrequency: 60 * time.Minute, MinWALTime: 5 * time.Minute, MaxWALTime: 4 * time.Hour, RemoteFlushDeadline: 1 * time.Minute, WriteStaleOnShutdown: false, // contains filtered or unexported fields } )
Default configuration values
var DefaultGlobalConfig = globalConfig()
    DefaultGlobalConfig holds default global settings to be used across all instances.
Functions ¶
func MarshalConfig ¶
MarshalConfig marshals an instance config based on a provided content type.
Types ¶
type Config ¶
type Config struct {
	Name                     string                      `yaml:"name,omitempty"`
	HostFilter               bool                        `yaml:"host_filter,omitempty"`
	HostFilterRelabelConfigs []*relabel.Config           `yaml:"host_filter_relabel_configs,omitempty"`
	ScrapeConfigs            []*config.ScrapeConfig      `yaml:"scrape_configs,omitempty"`
	RemoteWrite              []*config.RemoteWriteConfig `yaml:"remote_write,omitempty"`
	// How frequently the WAL should be truncated.
	WALTruncateFrequency time.Duration `yaml:"wal_truncate_frequency,omitempty"`
	// Minimum and maximum time series should exist in the WAL for.
	MinWALTime time.Duration `yaml:"min_wal_time,omitempty"`
	MaxWALTime time.Duration `yaml:"max_wal_time,omitempty"`
	RemoteFlushDeadline  time.Duration `yaml:"remote_flush_deadline,omitempty"`
	WriteStaleOnShutdown bool          `yaml:"write_stale_on_shutdown,omitempty"`
	// contains filtered or unexported fields
}
    Config is a specific agent that runs within the overall Prometheus agent. It has its own set of scrape_configs and remote_write rules.
func UnmarshalConfig ¶
UnmarshalConfig unmarshals an instance config from a reader based on a provided content type.
func (*Config) ApplyDefaults ¶
func (c *Config) ApplyDefaults(global GlobalConfig) error
ApplyDefaults applies default configurations to the configuration to all values that have not been changed to their non-zero value. ApplyDefaults also validates the config.
The value for global will be saved.
func (Config) MarshalYAML ¶
MarshalYAML implements yaml.Marshaler.
func (*Config) UnmarshalYAML ¶
UnmarshalYAML implements yaml.Unmarshaler.
type GlobalConfig ¶
type GlobalConfig struct {
	Prometheus  config.GlobalConfig         `yaml:",inline"`
	RemoteWrite []*config.RemoteWriteConfig `yaml:"remote_write,omitempty"`
	ExtraMetrics      bool          `yaml:"-"`
	DisableKeepAlives bool          `yaml:"-"`
	IdleConnTimeout   time.Duration `yaml:"-"`
}
    GlobalConfig holds global settings that apply to all instances by default.
func (GlobalConfig) IsZero ¶
func (c GlobalConfig) IsZero() bool
func (*GlobalConfig) UnmarshalYAML ¶
func (c *GlobalConfig) UnmarshalYAML(unmarshal func(interface{}) error) error
UnmarshalYAML implements yaml.Unmarshaler.
type Mode ¶
type Mode string
Mode controls how instances are created.
var ( ModeDistinct Mode = "distinct" DefaultMode = ModeShared )
Types of instance modes
func (*Mode) UnmarshalYAML ¶
UnmarshalYAML unmarshals a string to a Mode. Fails if the string is unrecognized.