config

package
v0.0.0-...-e5f2de2 Latest Latest
Warning

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

Go to latest
Published: May 29, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	InfoFile                string              `yaml:"info_file"`
	Hostname                string              `yaml:"hostname"`
	LogLevel                string              `yaml:"loglevel"`
	AofMode                 string              `yaml:"aof_mode"`
	MaintenanceFile         string              `yaml:"maintenance_file"`
	DaemonLockFile          string              `yaml:"daemon_lock_file"`
	PprofAddr               string              `yaml:"pprof_addr"`
	EventTimingLogFile      string              `yaml:"event_timing_log_file"`
	Mode                    string              `yaml:"mode"`
	SentinelMode            SentinelModeConfig  `yaml:"sentinel_mode"`
	Zookeeper               dcs.ZookeeperConfig `yaml:"zookeeper"`
	Valkey                  ValkeyConfig        `yaml:"valkey"`
	LogPollInterval         time.Duration       `yaml:"log_poll_interval"`
	LogBufferSize           int                 `yaml:"log_buffer_size"`
	HealthCheckInterval     time.Duration       `yaml:"healthcheck_interval"`
	InfoFileHandlerInterval time.Duration       `yaml:"info_file_handler_interval"`
	InactivationDelay       time.Duration       `yaml:"inactivation_delay"`
	DcsWaitTimeout          time.Duration       `yaml:"dcs_wait_timeout"`
	DcsReconnectTimeout     time.Duration       `yaml:"dcs_reconnect_timeout"`
	TickInterval            time.Duration       `yaml:"tick_interval"`
	PingStable              int                 `yaml:"ping_stable"`
}

Config contains rdsync application configuration

func DefaultConfig

func DefaultConfig() (Config, error)

DefaultConfig returns default configuration for RdSync

func ReadFromFile

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

ReadFromFile reads config from file (not set values are replaced by default ones)

type SentinelModeConfig

type SentinelModeConfig struct {
	Name                string `yaml:"name"`
	RunID               string `yaml:"run_id"`
	ClusterName         string `yaml:"cluster_name"`
	CacheAuthUser       string `yaml:"cache_auth_user"`
	CacheAuthPassword   string `yaml:"cache_auth_password"`
	CacheRestartCommand string `yaml:"cache_restart_command"`
	CacheUpdateSecret   string `yaml:"cache_update_secret"`
	TLSCAPath           string `yaml:"tls_ca_path"`
	CachePort           int    `yaml:"cache_port"`
	AnnounceHostname    bool   `yaml:"announce_hostname"`
	UseTLS              bool   `yaml:"use_tls"`
}

SentinelModeConfig contains sentinel-mode specific configuration

func DefaultSentinelModeConfig

func DefaultSentinelModeConfig(hostname string) (SentinelModeConfig, error)

DefaultSentinelModeConfig returns default sentinel-mode specific configuration

type ValkeyConfig

type ValkeyConfig struct {
	AuthPassword                        string        `yaml:"auth_password"`
	AofPath                             string        `yaml:"aof_path"`
	RestartCommand                      string        `yaml:"restart_command"`
	TLSCAPath                           string        `yaml:"tls_ca_path"`
	AuthUser                            string        `yaml:"auth_user"`
	DestructiveReplicationRepairCommand string        `yaml:"destructive_replication_repair_command"`
	RestartTimeout                      time.Duration `yaml:"restart_timeout"`
	WaitPoisonPillTimeout               time.Duration `yaml:"wait_poison_pill_timeout"`
	DNSTTL                              time.Duration `yaml:"dns_ttl"`
	FailoverTimeout                     time.Duration `yaml:"failover_timeout"`
	BusyTimeout                         time.Duration `yaml:"busy_timeout"`
	Port                                int           `yaml:"port"`
	WaitPromoteTimeout                  time.Duration `yaml:"wait_promote_timeout"`
	WaitReplicationTimeout              time.Duration `yaml:"wait_replication_timeout"`
	WaitCatchupTimeout                  time.Duration `yaml:"wait_catchup_timeout"`
	DialTimeout                         time.Duration `yaml:"dial_timeout"`
	WaitPromoteForceTimeout             time.Duration `yaml:"wait_promote_force_timeout"`
	WriteTimeout                        time.Duration `yaml:"write_timeout"`
	StaleReplicaLagClose                time.Duration `yaml:"stale_replica_lag_close"`
	StaleReplicaLagOpen                 time.Duration `yaml:"stale_replica_lag_open"`
	DestructiveReplicationRepairTimeout time.Duration `yaml:"destructive_replication_repair_timeout"`
	FailoverCooldown                    time.Duration `yaml:"failover_cooldown"`
	SwitchoverTimeout                   time.Duration `yaml:"switchover_timeout"`
	MaxParallelSyncs                    int           `yaml:"max_parallel_syncs"`
	ClusterBusPort                      int           `yaml:"cluster_bus_port"`
	ReservedConnections                 int           `yaml:"reserved_connections"`
	TurnBeforeSwitchover                bool          `yaml:"turn_before_switchover"`
	UseTLS                              bool          `yaml:"use_tls"`
	AllowDataLoss                       bool          `yaml:"allow_data_loss"`
}

ValkeyConfig contains valkey connection info and params

func DefaultValkeyConfig

func DefaultValkeyConfig() ValkeyConfig

DefaultValkeyConfig returns default configuration for valkey connection info and params

Jump to

Keyboard shortcuts

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