config

package
v2.5.2 Latest Latest
Warning

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

Go to latest
Published: Mar 22, 2024 License: Apache-2.0 Imports: 7 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 {
	Listener   *ListenerCfg  `valid:"required"`
	Database   *DatabaseCfg  `valid:"required"`
	Publisher  *PublisherCfg `valid:"required"`
	Logger     *cfg.Logger   `valid:"required"`
	Monitoring *cfg.Monitoring
}

Config for wal-listener.

func InitConfig added in v2.4.0

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

InitConfig load config from file.

func (Config) Validate

func (c Config) Validate() error

Validate config data.

type DatabaseCfg

type DatabaseCfg struct {
	Host     string `valid:"required"`
	Port     uint16 `valid:"required"`
	Name     string `valid:"required"`
	User     string `valid:"required"`
	Password string `valid:"required"`
}

DatabaseCfg path of the PostgreSQL DB config.

type FilterStruct

type FilterStruct struct {
	Tables map[string][]string
}

FilterStruct incoming WAL message filter.

type ListenerCfg

type ListenerCfg struct {
	SlotName          string `valid:"required"`
	AckTimeout        time.Duration
	RefreshConnection time.Duration `valid:"required"`
	HeartbeatInterval time.Duration `valid:"required"`
	Filter            FilterStruct
	TopicsMap         map[string]string
}

ListenerCfg path of the listener config.

type Metrics added in v2.4.1

type Metrics struct {
	// contains filtered or unexported fields
}

Metrics Prometheus metrics.

func NewMetrics added in v2.4.1

func NewMetrics() *Metrics

NewMetrics create and initialize new Prometheus metrics.

func (Metrics) IncFilterSkippedEvents added in v2.4.1

func (m Metrics) IncFilterSkippedEvents(table string)

IncFilterSkippedEvents increment skipped by filter events counter.

func (Metrics) IncProblematicEvents added in v2.5.0

func (m Metrics) IncProblematicEvents(kind string)

IncProblematicEvents increment skipped by filter events counter.

func (Metrics) IncPublishedEvents added in v2.4.1

func (m Metrics) IncPublishedEvents(subject, table string)

IncPublishedEvents increment published events counter.

type PublisherCfg added in v2.3.0

type PublisherCfg struct {
	Type            PublisherType `valid:"required"`
	Address         string
	Topic           string `valid:"required"`
	TopicPrefix     string
	EnableTLS       bool   `json:"enable_tls"`
	ClientCert      string `json:"client_cert"`
	ClientKey       string `json:"client_key"`
	CACert          string `json:"ca_cert"`
	PubSubProjectID string `json:"pubsub_project_id"`
}

PublisherCfg represent configuration for any types publisher.

type PublisherType added in v2.3.0

type PublisherType string
const (
	PublisherTypeNats         PublisherType = "nats"
	PublisherTypeKafka        PublisherType = "kafka"
	PublisherTypeRabbitMQ     PublisherType = "rabbitmq"
	PublisherTypeGooglePubSub PublisherType = "google_pubsub"
)

Jump to

Keyboard shortcuts

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