config

package
v0.28.0 Latest Latest
Warning

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

Go to latest
Published: Nov 21, 2023 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AWSConfig

type AWSConfig struct {
	Region       string `json:"region" validate:"required"`
	AWSPartition string `json:"aws_partition" validate:"required"`
}

type Config

type Config struct {
	LogLevel           string                   `json:"log_level" validate:"required"`
	AWS                AWSConfig                `json:"aws"`
	RDSBrokerInfo      RDSBrokerInfoConfig      `json:"rds_broker"`
	Scheduler          SchedulerConfig          `json:"scheduler"`
	LoggregatorEmitter LoggregatorEmitterConfig `json:"loggregator_emitter"`
	locket.ClientLocketConfig
}

func LoadConfig

func LoadConfig(configFile string) (*Config, error)

func (Config) Validate

func (c Config) Validate() error

type LoggregatorEmitterConfig

type LoggregatorEmitterConfig struct {
	MetronURL  string `json:"url" validate:"required"`
	CACertPath string `json:"ca_cert" validate:"required"`
	CertPath   string `json:"client_cert" validate:"required"`
	KeyPath    string `json:"client_key" validate:"required"`
}

type RDSBrokerInfoConfig

type RDSBrokerInfoConfig struct {
	DBPrefix           string `json:"db_prefix" validate:"required"`
	BrokerName         string `json:"broker_name" validate:"required"`
	MasterPasswordSeed string `json:"master_password_seed" validate:"required"`
}

type SchedulerConfig

type SchedulerConfig struct {
	InstanceRefreshInterval    int  `json:"instance_refresh_interval" validate:"required,gte=1,lte=3600"`
	CollectorTimeoutMs         *int `json:"collector_timeout_ms" validate:"isdefault,gte=0,lte=15000"`
	CollectorRetryIntervalMs   *int `json:"collector_retry_interval_ms" validate:"isdefault,gte=0,lte=10000"`
	CollectorMaxRetries        *int `json:"collector_max_retries" validate:"isdefault,gte=0,lte=10"`
	SQLMetricCollectorInterval int  `json:"sql_metrics_collector_interval" validate:"required,gte=0,lte=3600"`
	CWMetricCollectorInterval  int  `json:"cloudwatch_metrics_collector_interval" validate:"required,gte=0,lte=3600"`
}

Jump to

Keyboard shortcuts

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