config

package
v0.52.0 Latest Latest
Warning

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

Go to latest
Published: Jun 25, 2026 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Predeclared = iota
	Classic
	Quorum
	Stream
	Exclusive
	JMS
	Delayed
)
View Source
const ReconnectDelay = 1 * time.Second

ReconnectDelay is the default delay between reconnection attempts.

Variables

View Source
var AmqpDurabilityModes = map[AmqpDurabilityMode][]string{
	None:           {"none"},
	Configuration:  {"configuration"},
	UnsettledState: {"unsettled-state"},
}
View Source
var QueueTypes = map[QueueType][]string{
	Predeclared: {"predeclared"},
	Classic:     {"classic"},
	Quorum:      {"quorum"},
	Stream:      {"stream"},
	Exclusive:   {"exclusive"},
	JMS:         {"jms"},
	Delayed:     {"delayed"},
}

Functions

func ParseTemplateValue added in v0.31.0

func ParseTemplateValue(value string) (*template.Template, error)

ParseTemplateValue parses a value as a template. If the value doesn't contain template syntax, it will still be parsed as a template but will return the original string when executed.

Types

type Amqp091Options added in v0.30.0

type Amqp091Options struct {
	Mandatory       bool
	HeaderTemplates map[string]*template.Template
}

type AmqpDurabilityMode

type AmqpDurabilityMode enumflag.Flag
const (
	None AmqpDurabilityMode = iota
	Configuration
	UnsettledState
)

type AmqpModifyOptions added in v0.43.0

type AmqpModifyOptions struct {
	DeliveryFailed      *template.Template
	UndeliverableHere   *template.Template
	AnnotationTemplates []AnnotationTemplate
}

type AmqpOptions

type AmqpOptions struct {
	Subjects               []string
	To                     []string
	SendSettled            bool
	ConsumeSettled         bool
	PropertyFilters        map[string]string
	AppPropertyTemplates   map[string]*template.Template
	MsgAnnotationTemplates map[string]*template.Template
	AppPropertyFilters     map[string]string
	SQLFilter              string
	JMSSelectorFilter      string
	Browse                 bool
	ModifyOptions          AmqpModifyOptions
	ModifyRate             int
}

type AnnotationTemplate added in v0.43.0

type AnnotationTemplate struct {
	Key   *template.Template
	Value *template.Template
}

type Config

type Config struct {
	ExpectedInstances           int
	SyncName                    string
	ConsumerProto               Protocol
	PublisherProto              Protocol
	PublisherId                 string
	ConsumerId                  string
	Uri                         []string
	PublisherUri                []string
	ConsumerUri                 []string
	ManagementUri               []string
	Publishers                  int
	Consumers                   int
	SpreadConnections           bool
	PublishCount                int
	ConsumeCount                int
	PublishTo                   string
	PublishToTemplate           *template.Template
	ConsumeFrom                 string
	ConsumeFromTemplate         *template.Template
	Queues                      QueueType
	Exchange                    string
	BindingKey                  string
	CleanupQueues               bool
	ConsumerCredits             int
	ConsumerLatencyTemplate     *template.Template
	Size                        int
	SizeTemplate                *template.Template
	Rate                        float32
	MaxInFlight                 int
	Duration                    time.Duration
	UseMillis                   bool
	QueueDurability             AmqpDurabilityMode
	MessageDurability           bool
	MessagePriorityTemplate     *template.Template
	MessageTTLTemplate          *template.Template
	StreamOffset                any
	StreamFilterValues          string
	StreamFilterValueSet        []string
	StreamSingleActiveConsumer  bool
	StreamSuperStream           bool
	StreamSuperStreamPartitions int
	ConsumerPriorityTemplate    *template.Template
	Amqp                        AmqpOptions
	Amqp091                     Amqp091Options
	MqttPublisher               MqttOptions
	MqttConsumer                MqttOptions
	MetricTags                  map[string]string
	DetectOutOfOrder            bool
	DetectGaps                  bool
	PrintAllMetrics             bool
	ConsumerStartupDelay        time.Duration
	RequeueWhenPriority         []int
	DiscardWhenPriority         []int
	RequeueRate                 int
	DiscardRate                 int
	ParallelPublishers          bool
	ParallelConsumers           bool
	PublisherBatchSize          int
	ConsumerBatchSize           int
	PublisherBatchWait          time.Duration
	ConsumerBatchWait           time.Duration
	InsecureSkipTLSVerify       bool
	QueueArgs                   map[string]any
}

func NewConfig added in v0.2.0

func NewConfig() Config

type MqttOptions added in v0.2.0

type MqttOptions struct {
	Version                  int
	QoS                      int
	CleanSession             bool
	SessionExpiryInterval    time.Duration
	SubscriptionsPerConsumer int
	UserPropertyTemplates    map[string]*template.Template
}

type Protocol added in v0.13.0

type Protocol int
const (
	AMQP Protocol = iota
	AMQP091
	STOMP
	MQTT
	MQTT5
	STREAM
)

type QueueType added in v0.13.0

type QueueType enumflag.Flag

Jump to

Keyboard shortcuts

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