config

package
v0.0.0-...-81a4f0c Latest Latest
Warning

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

Go to latest
Published: Dec 1, 2021 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultLoggingLevel        string = "info"
	DefaultRefreshInterval            = 24 * time.Hour
	DefaultCutoffDuration             = 30 * 24 * time.Hour
	DefaultSyncInterval               = 24 * time.Hour
	DefaultDBLockRetryInterval        = 5 * time.Second
	DefaultDBLockTTL                  = 15 * time.Second
	DefaultHttpClientTimeout          = 5 * time.Second
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AppMetricsDBPrunerConfig

type AppMetricsDBPrunerConfig struct {
	DB              db.DatabaseConfig `yaml:"db"`
	RefreshInterval time.Duration     `yaml:"refresh_interval"`
	CutoffDuration  time.Duration     `yaml:"cutoff_duration"`
}

type AppSyncerConfig

type AppSyncerConfig struct {
	DB           db.DatabaseConfig `yaml:"db"`
	SyncInterval time.Duration     `yaml:"sync_interval"`
}

type Config

type Config struct {
	CF                cf.CFConfig                   `yaml:"cf"`
	Health            models.HealthConfig           `yaml:"health"`
	Logging           helpers.LoggingConfig         `yaml:"logging"`
	InstanceMetricsDB InstanceMetricsDbPrunerConfig `yaml:"instance_metrics_db"`
	AppMetricsDB      AppMetricsDBPrunerConfig      `yaml:"app_metrics_db"`
	ScalingEngineDB   ScalingEngineDBPrunerConfig   `yaml:"scaling_engine_db"`
	ScalingEngine     ScalingEngineConfig           `yaml:"scaling_engine"`
	Scheduler         SchedulerConfig               `yaml:"scheduler"`
	AppSyncer         AppSyncerConfig               `yaml:"app_syncer"`
	DBLock            DBLockConfig                  `yaml:"db_lock"`
	HttpClientTimeout time.Duration                 `yaml:"http_client_timeout"`
}

func LoadConfig

func LoadConfig(reader io.Reader) (*Config, error)

func (*Config) Validate

func (c *Config) Validate() error

type DBLockConfig

type DBLockConfig struct {
	LockTTL           time.Duration     `yaml:"ttl"`
	LockRetryInterval time.Duration     `yaml:"retry_interval"`
	DB                db.DatabaseConfig `yaml:"db"`
}

type InstanceMetricsDbPrunerConfig

type InstanceMetricsDbPrunerConfig struct {
	DB              db.DatabaseConfig `yaml:"db"`
	RefreshInterval time.Duration     `yaml:"refresh_interval"`
	CutoffDuration  time.Duration     `yaml:"cutoff_duration"`
}

type ScalingEngineConfig

type ScalingEngineConfig struct {
	URL            string          `yaml:"scaling_engine_url"`
	SyncInterval   time.Duration   `yaml:"sync_interval"`
	TLSClientCerts models.TLSCerts `yaml:"tls"`
}

type ScalingEngineDBPrunerConfig

type ScalingEngineDBPrunerConfig struct {
	DB              db.DatabaseConfig `yaml:"db"`
	RefreshInterval time.Duration     `yaml:"refresh_interval"`
	CutoffDuration  time.Duration     `yaml:"cutoff_duration"`
}

type SchedulerConfig

type SchedulerConfig struct {
	URL            string          `yaml:"scheduler_url"`
	SyncInterval   time.Duration   `yaml:"sync_interval"`
	TLSClientCerts models.TLSCerts `yaml:"tls"`
}

Jump to

Keyboard shortcuts

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