proxyconfig

package
v0.0.85 Latest Latest
Warning

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

Go to latest
Published: Feb 27, 2024 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultPromxyConfig = PromxyConfig{}

DefaultPromxyConfig is the default promxy config that the config file is loaded into

Functions

This section is empty.

Types

type ApplyConfigFunc

type ApplyConfigFunc struct {
	F func(*config.Config) error
}

ApplyConfigFunc is a struct that wraps a single function that Applys config into something that implements the `PromReloadable` interface

func (*ApplyConfigFunc) ApplyConfig

func (a *ApplyConfigFunc) ApplyConfig(cfg *config.Config) error

ApplyConfig applies new configuration

type Config

type Config struct {
	// Prometheus configs -- this includes configurations for
	// recording rules, alerting rules, etc.
	PromConfig config.Config `yaml:",inline"`

	// Promxy specific configuration -- under its own namespace
	PromxyConfig `yaml:"promxy"`

	WebConfig web.TLSStruct `yaml:"tls_server_config"`
}

Config is the entire config file. This includes both the Prometheus Config as well as the Promxy config. This is done by "inline-ing" the promxy config into the prometheus config under the "promxy" key

func ConfigFromFile

func ConfigFromFile(path string) (*Config, error)

ConfigFromFile loads a config file at path

func (*Config) String added in v0.0.76

func (c *Config) String() string

type PromReloadable

type PromReloadable interface {
	ApplyConfig(*config.Config) error
}

PromReloadable can apply a prometheus config

type PromReloadableWrap

type PromReloadableWrap struct {
	R PromReloadable
}

PromReloadableWrap wraps a PromReloadable into a Reloadable

func (*PromReloadableWrap) ApplyConfig

func (p *PromReloadableWrap) ApplyConfig(c *Config) error

ApplyConfig applies new configuration

type PromxyConfig

type PromxyConfig struct {
	// Config for each of the server groups promxy is configured to aggregate
	ServerGroups []*servergroup.Config `yaml:"server_groups"`
}

PromxyConfig is the configuration for Promxy itself

type Reloadable

type Reloadable interface {
	ApplyConfig(*Config) error
}

Reloadable can apply a promxy config

func WrapPromReloadable

func WrapPromReloadable(p PromReloadable) Reloadable

WrapPromReloadable wraps a PromReloadable into a Reloadable

Jump to

Keyboard shortcuts

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