config

package
v0.0.0-...-d88ec87 Latest Latest
Warning

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

Go to latest
Published: Feb 13, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AdminConfValidator

func AdminConfValidator(v interface{}, param string) error

AdminConfValidator for "admins" section in brim Yaml configuration

func RegionsConfValidator

func RegionsConfValidator(v interface{}, param string) error

// RegionsConfValidator for "regions" section in brim Yaml configuration

func SupervisorConfValidator

func SupervisorConfValidator(v interface{}, param string) error

// SupervisorConfValidator for "SupervisorConfValidator" section in brim Yaml configuration

func ValidateBrimConfig

func ValidateBrimConfig(bc BrimConf) bool

ValidateBrimConfig Brim Yaml values validation

func WALConfValidator

func WALConfValidator(v interface{}, param string) error

TODO: WHY NEVER USED

Types

type BrimConf

type BrimConf struct {
	// Database    model.DBConfig   `yaml:"database"`
	Admins  admin.AdminsConf `yaml:"admins" validate:"AdminConfValidator=Admins"`
	Regions RegionsConf      `yaml:"regions" validate:"RegionsConfValidator=Regions"`

	Logging LoggingConfig `yaml:"Logging,omitempty"`
	// Creds                     []auth.Creds     `yaml:"Creds,omitempty"`
	Metrics                   metrics.Config `yaml:"Metrics,omitempty"`
	DefaultPermanentProcessID uint64         `yaml:"DefaultPermanentProcessID"`
	Supervisor                SupervisorConf `yaml:"Supervisor"`
	WorkerCount               int            `yaml:"workercount"`
	WALConf                   WALConf        `yaml:"WAL"`
	// contains filtered or unexported fields
}

BrimConf is read from configuration file

func Configure

func Configure(confFilePath string) (BrimConf, error)

Configure creates BrimConf

func (*BrimConf) EndpointRegionMapping

func (bc *BrimConf) EndpointRegionMapping() RegionsData

EndpointRegionMapping returns region to endpoint map

type LoggingConfig

type LoggingConfig struct {
	Mainlog log.LoggerConfig `yaml:"Mainlog"`
	APILog  log.LoggerConfig `yaml:"APILog"`
	DBLog   log.LoggerConfig `yaml:"DBLog"`
}

LoggingConfig hold the configuration for loggers

type RegionConfig

type RegionConfig struct {
	Users []admin.ConfigUser `yaml:"users"`
}

RegionConfig brim-specific settings for region

type RegionData

type RegionData struct {
	RegionKey, ClusterDomain string
}

RegionData with key and cluster domain

type RegionsConf

type RegionsConf map[string]RegionConfig //spare

RegionsConf map of region settings

type RegionsData

type RegionsData map[string]RegionData

RegionsData for mapping backend endpoint with RegionsData

type SourceProps

type SourceProps = map[string]string

type SourceType

type SourceType = string

type SupervisorConf

type SupervisorConf struct {
	MaxInstancesRunningInAPIMode uint `yaml:"MaxInstancesRunningInAPIMode"`
	MaxInstancesRunningInDbMode  uint `yaml:"MaxInstancesRunningInDbMode"`
	MaxTasksRunningCount         uint `yaml:"MaxTasksRunningCount"`
}

SupervisorConf keeps supervisor limits

type WALConf

type WALConf struct {
	NoRecordsSleepDuration  time.Duration `yaml:"NoRecordsSleepDuration"`
	MaxRecordsPerQuery      int           `yaml:"MaxRecordsPerQuery"`
	MaxConcurrentMigrations int           `yaml:"MaxConcurrentMigrations"`
	BurstFeeder             bool          `yaml:"BurstFeeder"`
	MaxEmittedTasksCount    int           `yaml:"MaxEmittedTasksCount"`
	TaskEmissionDuration    time.Duration `yaml:"TaskEmissionDuration"`
	FeederTaskFailureDelay  time.Duration `yaml:"FeederTaskFailureDelay"`
}

Jump to

Keyboard shortcuts

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