Class: Prosody::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/prosody/configuration.rb,
sig/configuration.rbs

Overview

Configuration for the Prosody messaging client with type validation

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ void #initialize(options) ⇒ void

Create a new configuration with initial values

Overloads:

  • #initialize(options) ⇒ void

    Parameters:

    • options (Hash[Symbol, untyped])
  • #initialize(options) ⇒ void

    Parameters:

    • options (Object)

Parameters:

  • kwargs (defaults to: {})

    Initial configuration values



63
64
65
66
67
# File 'lib/prosody/configuration.rb', line 63

def initialize(kwargs = {})
  @config = {}
  kwargs.each { |k, v| public_send(:"#{k}=", v) }
  yield self if block_given?
end

Class Method Details

.config_param(name, converter: ->(v) { v }, default: nil) ⇒ void

This method returns an undefined value.

Define a typed configuration parameter with optional conversion and default

Parameters:

  • name

    Configuration parameter name

  • converter (defaults to: ->(v) { v })

    Function to validate and convert input values

  • default (defaults to: nil)

    Value returned when parameter is unset

  • converter: (^(untyped) -> untyped) (defaults to: ->(v) { v })
  • default: (Object) (defaults to: nil)


34
35
36
37
38
# File 'lib/prosody/configuration.rb', line 34

def self.config_param(name, converter: ->(v) { v }, default: nil)
  name_sym = name.to_sym
  define_method(name) { @config.key?(name_sym) ? @config[name_sym] : default }
  define_method(:"#{name}=") { |value| @config[name_sym] = value.nil? ? nil : converter.call(value) }
end

.duration_converter(v) ⇒ Float

Convert duration values to floating point seconds

Parameters:

  • v

    Duration value to convert

  • (Numeric, untyped)

Returns:

  • (Float)

Raises:

  • ArgumentError when value is not a valid duration



48
49
50
51
52
53
54
55
56
# File 'lib/prosody/configuration.rb', line 48

def self.duration_converter(v)
  if defined?(ActiveSupport::Duration) && v.is_a?(ActiveSupport::Duration)
    v.to_f
  elsif v.is_a?(Numeric)
    v.to_f
  else
    raise ArgumentError, "Invalid type for duration: #{v.inspect}"
  end
end

Instance Method Details

#allowed_eventsArray[String]?

Event types the consumer is allowed to process

Returns:

  • (Array[String], nil)


39
# File 'sig/configuration.rbs', line 39

def allowed_events: () -> Array[String]?

#allowed_events=Array[String]

Parameters:

  • (String, _ToA[String])

Returns:

  • (Array[String])


40
# File 'sig/configuration.rbs', line 40

def allowed_events=: (String | _ToA[String]) -> Array[String]

#bootstrap_serversArray[String]?

Kafka bootstrap server addresses

Returns:

  • (Array[String], nil)


31
# File 'sig/configuration.rbs', line 31

def bootstrap_servers: () -> Array[String]?

#bootstrap_servers=Array[String]

Parameters:

  • (String, _ToA[String])

Returns:

  • (Array[String])


32
# File 'sig/configuration.rbs', line 32

def bootstrap_servers=: (String | _ToA[String]) -> Array[String]

#cassandra_datacenterString?

Cassandra datacenter for query routing

Returns:

  • (String, nil)


147
# File 'sig/configuration.rbs', line 147

def cassandra_datacenter: () -> String?

#cassandra_datacenter=String

Parameters:

Returns:

  • (String)


148
# File 'sig/configuration.rbs', line 148

def cassandra_datacenter=: (_ToS) -> String

#cassandra_keyspaceString?

Cassandra keyspace name

Returns:

  • (String, nil)


143
# File 'sig/configuration.rbs', line 143

def cassandra_keyspace: () -> String?

#cassandra_keyspace=String

Parameters:

Returns:

  • (String)


144
# File 'sig/configuration.rbs', line 144

def cassandra_keyspace=: (_ToS) -> String

#cassandra_nodesArray[String]?

Cassandra nodes (hostnames or IPs)

Returns:

  • (Array[String], nil)


139
# File 'sig/configuration.rbs', line 139

def cassandra_nodes: () -> Array[String]?

#cassandra_nodes=Array[String]

Parameters:

  • (String, _ToA[String])

Returns:

  • (Array[String])


140
# File 'sig/configuration.rbs', line 140

def cassandra_nodes=: (String | _ToA[String]) -> Array[String]

#cassandra_passwordString?

Cassandra authentication password

Returns:

  • (String, nil)


159
# File 'sig/configuration.rbs', line 159

def cassandra_password: () -> String?

#cassandra_password=String

Parameters:

Returns:

  • (String)


160
# File 'sig/configuration.rbs', line 160

def cassandra_password=: (_ToS) -> String

#cassandra_rackString?

Cassandra rack for topology-aware routing

Returns:

  • (String, nil)


151
# File 'sig/configuration.rbs', line 151

def cassandra_rack: () -> String?

#cassandra_rack=String

Parameters:

Returns:

  • (String)


152
# File 'sig/configuration.rbs', line 152

def cassandra_rack=: (_ToS) -> String

#cassandra_retentionFloat?

Cassandra data retention period (seconds)

Returns:

  • (Float, nil)


163
# File 'sig/configuration.rbs', line 163

def cassandra_retention: () -> Float?

#cassandra_retention=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


164
# File 'sig/configuration.rbs', line 164

def cassandra_retention=: (Numeric) -> Float

#cassandra_userString?

Cassandra authentication user

Returns:

  • (String, nil)


155
# File 'sig/configuration.rbs', line 155

def cassandra_user: () -> String?

#cassandra_user=String

Parameters:

Returns:

  • (String)


156
# File 'sig/configuration.rbs', line 156

def cassandra_user=: (_ToS) -> String

#commit_intervalFloat?

Interval between offset commit operations (seconds)

Returns:

  • (Float, nil)


63
# File 'sig/configuration.rbs', line 63

def commit_interval: () -> Float?

#commit_interval=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


64
# File 'sig/configuration.rbs', line 64

def commit_interval=: (Numeric) -> Float

#defer_baseFloat?

Defer base backoff delay (seconds)

Returns:

  • (Float, nil)


207
# File 'sig/configuration.rbs', line 207

def defer_base: () -> Float?

#defer_base=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


208
# File 'sig/configuration.rbs', line 208

def defer_base=: (Numeric) -> Float

#defer_enabledBoolean?

Deferral enabled

Returns:

  • (Boolean, nil)


203
# File 'sig/configuration.rbs', line 203

def defer_enabled: () -> bool?

#defer_enabled=Boolean

Parameters:

  • (Object)

Returns:

  • (Boolean)


204
# File 'sig/configuration.rbs', line 204

def defer_enabled=: (untyped) -> bool

#defer_failure_thresholdFloat?

Defer failure threshold (0.0 to 1.0)

Returns:

  • (Float, nil)


215
# File 'sig/configuration.rbs', line 215

def defer_failure_threshold: () -> Float?

#defer_failure_threshold=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


216
# File 'sig/configuration.rbs', line 216

def defer_failure_threshold=: (Numeric) -> Float

#defer_failure_windowFloat?

Defer failure window (seconds)

Returns:

  • (Float, nil)


219
# File 'sig/configuration.rbs', line 219

def defer_failure_window: () -> Float?

#defer_failure_window=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


220
# File 'sig/configuration.rbs', line 220

def defer_failure_window=: (Numeric) -> Float

#defer_max_delayFloat?

Defer maximum delay (seconds)

Returns:

  • (Float, nil)


211
# File 'sig/configuration.rbs', line 211

def defer_max_delay: () -> Float?

#defer_max_delay=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


212
# File 'sig/configuration.rbs', line 212

def defer_max_delay=: (Numeric) -> Float

#defer_store_cache_sizeInteger?

Maximum deferred store cache entries. Env: PROSODY_DEFER_STORE_CACHE_SIZE

Returns:

  • (Integer, nil)


223
# File 'sig/configuration.rbs', line 223

def defer_store_cache_size: () -> Integer?

#defer_store_cache_size=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


224
# File 'sig/configuration.rbs', line 224

def defer_store_cache_size=: (Integer | _ToInt) -> Integer

#failure_topicString?

Topic to send failed messages to

Returns:

  • (String, nil)


127
# File 'sig/configuration.rbs', line 127

def failure_topic: () -> String?

#failure_topic=String

Parameters:

Returns:

  • (String)


128
# File 'sig/configuration.rbs', line 128

def failure_topic=: (_ToS) -> String

#group_idString?

Kafka consumer group ID

Returns:

  • (String, nil)


99
# File 'sig/configuration.rbs', line 99

def group_id: () -> String?

#group_id=String

Parameters:

Returns:

  • (String)


100
# File 'sig/configuration.rbs', line 100

def group_id=: (_ToS) -> String

#idempotence_cache_sizeInteger?

Size of the cache used for message idempotence

Returns:

  • (Integer, nil)


75
# File 'sig/configuration.rbs', line 75

def idempotence_cache_size: () -> Integer?

#idempotence_cache_size=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


76
# File 'sig/configuration.rbs', line 76

def idempotence_cache_size=: (Integer | _ToInt) -> Integer

#idempotence_ttlFloat?

TTL for deduplication records in Cassandra (in seconds)

Returns:

  • (Float, nil)


83
# File 'sig/configuration.rbs', line 83

def idempotence_ttl: () -> Float?

#idempotence_ttl=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


84
# File 'sig/configuration.rbs', line 84

def idempotence_ttl=: (Numeric) -> Float

#idempotence_versionString?

Version string for cache-busting deduplication hashes

Returns:

  • (String, nil)


79
# File 'sig/configuration.rbs', line 79

def idempotence_version: () -> String?

#idempotence_version=String

Parameters:

Returns:

  • (String)


80
# File 'sig/configuration.rbs', line 80

def idempotence_version=: (_ToS) -> String

#loader_cache_sizeInteger?

Maximum messages retained by the shared Kafka loader. Env: PROSODY_LOADER_CACHE_SIZE. Default: 1024

Returns:

  • (Integer, nil)


227
# File 'sig/configuration.rbs', line 227

def loader_cache_size: () -> Integer?

#loader_cache_size=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


228
# File 'sig/configuration.rbs', line 228

def loader_cache_size=: (Integer | _ToInt) -> Integer

#loader_discard_thresholdInteger?

Sequential-read distance before the loader seeks. Env: PROSODY_LOADER_DISCARD_THRESHOLD. Default: 100

Returns:

  • (Integer, nil)


235
# File 'sig/configuration.rbs', line 235

def loader_discard_threshold: () -> Integer?

#loader_discard_threshold=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


236
# File 'sig/configuration.rbs', line 236

def loader_discard_threshold=: (Integer | _ToInt) -> Integer

#loader_seek_timeoutFloat?

Kafka loader seek timeout (seconds). Env: PROSODY_LOADER_SEEK_TIMEOUT. Default: 30

Returns:

  • (Float, nil)


231
# File 'sig/configuration.rbs', line 231

def loader_seek_timeout: () -> Float?

#loader_seek_timeout=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


232
# File 'sig/configuration.rbs', line 232

def loader_seek_timeout=: (Numeric) -> Float

#max_concurrencyInteger?

Maximum number of concurrent message processing tasks

Returns:

  • (Integer, nil)


87
# File 'sig/configuration.rbs', line 87

def max_concurrency: () -> Integer?

#max_concurrency=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


88
# File 'sig/configuration.rbs', line 88

def max_concurrency=: (Integer | _ToInt) -> Integer

#max_retriesInteger?

Maximum number of retry attempts

Returns:

  • (Integer, nil)


95
# File 'sig/configuration.rbs', line 95

def max_retries: () -> Integer?

#max_retries=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


96
# File 'sig/configuration.rbs', line 96

def max_retries=: (Integer | _ToInt) -> Integer

#max_retry_delayFloat?

Maximum delay between retries (seconds)

Returns:

  • (Float, nil)


71
# File 'sig/configuration.rbs', line 71

def max_retry_delay: () -> Float?

#max_retry_delay=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


72
# File 'sig/configuration.rbs', line 72

def max_retry_delay=: (Numeric) -> Float

#max_uncommittedInteger?

Maximum messages to process before committing offsets

Returns:

  • (Integer, nil)


91
# File 'sig/configuration.rbs', line 91

def max_uncommitted: () -> Integer?

#max_uncommitted=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


92
# File 'sig/configuration.rbs', line 92

def max_uncommitted=: (Integer | _ToInt) -> Integer

#message_spansString?

Span linking for message execution spans ('child' or 'follows_from')

Returns:

  • (String, nil)


251
# File 'sig/configuration.rbs', line 251

def message_spans: () -> String?

#message_spans=String

Parameters:

Returns:

  • (String)


252
# File 'sig/configuration.rbs', line 252

def message_spans=: (_ToS) -> String

#mockBoolean?

Use mock Kafka implementation for testing

Returns:

  • (Boolean, nil)


43
# File 'sig/configuration.rbs', line 43

def mock: () -> bool?

#mock=Boolean

Parameters:

  • (Object)

Returns:

  • (Boolean)


44
# File 'sig/configuration.rbs', line 44

def mock=: (untyped) -> bool

#modeSymbol?

Operation mode: :pipeline, :low_latency, or :best_effort

Returns:

  • (Symbol, nil)


131
# File 'sig/configuration.rbs', line 131

def mode: () -> Symbol?

#mode=Symbol

Parameters:

  • (Symbol, String)

Returns:

  • (Symbol)


132
# File 'sig/configuration.rbs', line 132

def mode=: (Symbol | String) -> Symbol

#monopolization_cache_sizeInteger?

Monopolization cache size

Returns:

  • (Integer, nil)


199
# File 'sig/configuration.rbs', line 199

def monopolization_cache_size: () -> Integer?

#monopolization_cache_size=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


200
# File 'sig/configuration.rbs', line 200

def monopolization_cache_size=: (Integer | _ToInt) -> Integer

#monopolization_enabledBoolean?

Monopolization detection enabled

Returns:

  • (Boolean, nil)


187
# File 'sig/configuration.rbs', line 187

def monopolization_enabled: () -> bool?

#monopolization_enabled=Boolean

Parameters:

  • (Object)

Returns:

  • (Boolean)


188
# File 'sig/configuration.rbs', line 188

def monopolization_enabled=: (untyped) -> bool

#monopolization_thresholdFloat?

Monopolization detection threshold (0.0 to 1.0)

Returns:

  • (Float, nil)


191
# File 'sig/configuration.rbs', line 191

def monopolization_threshold: () -> Float?

#monopolization_threshold=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


192
# File 'sig/configuration.rbs', line 192

def monopolization_threshold=: (Numeric) -> Float

#monopolization_windowFloat?

Monopolization detection window (seconds)

Returns:

  • (Float, nil)


195
# File 'sig/configuration.rbs', line 195

def monopolization_window: () -> Float?

#monopolization_window=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


196
# File 'sig/configuration.rbs', line 196

def monopolization_window=: (Numeric) -> Float

#peer_advertised_connectString?

Connect URI for remote peers. Prosody reads PROSODY_PEER_ADVERTISED_CONNECT when absent.

Returns:

  • (String, nil)


111
# File 'sig/configuration.rbs', line 111

def peer_advertised_connect: () -> String?

#peer_advertised_connect=String

Parameters:

Returns:

  • (String)


112
# File 'sig/configuration.rbs', line 112

def peer_advertised_connect=: (_ToS) -> String

#peer_bind_addressString?

Address for the peer listener. Prosody reads PROSODY_PEER_BIND_ADDRESS when absent.

Returns:

  • (String, nil)


107
# File 'sig/configuration.rbs', line 107

def peer_bind_address: () -> String?

#peer_bind_address=String

Parameters:

Returns:

  • (String)


108
# File 'sig/configuration.rbs', line 108

def peer_bind_address=: (_ToS) -> String

#peer_cache_capacityInteger?

Peer cache capacity. Prosody reads PROSODY_PEER_CACHE_CAPACITY when absent.

Returns:

  • (Integer, nil)


119
# File 'sig/configuration.rbs', line 119

def peer_cache_capacity: () -> Integer?

#peer_cache_capacity=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


120
# File 'sig/configuration.rbs', line 120

def peer_cache_capacity=: (Integer | _ToInt) -> Integer

#peer_network_nameString?

Network name for direct routes. Prosody reads PROSODY_PEER_NETWORK_NAME when absent.

Returns:

  • (String, nil)


115
# File 'sig/configuration.rbs', line 115

def peer_network_name: () -> String?

#peer_network_name=String

Parameters:

Returns:

  • (String)


116
# File 'sig/configuration.rbs', line 116

def peer_network_name=: (_ToS) -> String

#peer_registration_ttlFloat?

Peer registration lease. Prosody reads PROSODY_PEER_REGISTRATION_TTL when absent.

Returns:

  • (Float, nil)


123
# File 'sig/configuration.rbs', line 123

def peer_registration_ttl: () -> Float?

#peer_registration_ttl=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


124
# File 'sig/configuration.rbs', line 124

def peer_registration_ttl=: (Numeric) -> Float

#poll_intervalFloat?

Interval between Kafka poll operations (seconds)

Returns:

  • (Float, nil)


59
# File 'sig/configuration.rbs', line 59

def poll_interval: () -> Float?

#poll_interval=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


60
# File 'sig/configuration.rbs', line 60

def poll_interval=: (Numeric) -> Float

#probe_portInteger, ...

Health probe port configuration (port number, false, or nil)

Returns:

  • (Integer, false, nil)


135
# File 'sig/configuration.rbs', line 135

def probe_port: () -> (Integer | false | nil)

#probe_port=Integer, ...

Parameters:

  • (Integer, Symbol, String, false, nil)

Returns:

  • (Integer, false, nil)


136
# File 'sig/configuration.rbs', line 136

def probe_port=: (Integer | Symbol | String | false | nil) -> (Integer | false | nil)

#retry_baseFloat?

Base delay for retry operations (seconds)

Returns:

  • (Float, nil)


67
# File 'sig/configuration.rbs', line 67

def retry_base: () -> Float?

#retry_base=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


68
# File 'sig/configuration.rbs', line 68

def retry_base=: (Numeric) -> Float

#scheduler_cache_sizeInteger?

Scheduler: cache size for per-key virtual time

Returns:

  • (Integer, nil)


183
# File 'sig/configuration.rbs', line 183

def scheduler_cache_size: () -> Integer?

#scheduler_cache_size=Integer

Parameters:

  • _ToInt (Integer)

Returns:

  • (Integer)


184
# File 'sig/configuration.rbs', line 184

def scheduler_cache_size=: (Integer | _ToInt) -> Integer

#scheduler_failure_weightFloat?

Scheduler: failure/retry task weight (0.0 to 1.0)

Returns:

  • (Float, nil)


171
# File 'sig/configuration.rbs', line 171

def scheduler_failure_weight: () -> Float?

#scheduler_failure_weight=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


172
# File 'sig/configuration.rbs', line 172

def scheduler_failure_weight=: (Numeric) -> Float

#scheduler_max_waitFloat?

Scheduler: max wait for urgency boost (seconds)

Returns:

  • (Float, nil)


175
# File 'sig/configuration.rbs', line 175

def scheduler_max_wait: () -> Float?

#scheduler_max_wait=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


176
# File 'sig/configuration.rbs', line 176

def scheduler_max_wait=: (Numeric) -> Float

#scheduler_wait_weightFloat?

Scheduler: wait time priority weight

Returns:

  • (Float, nil)


179
# File 'sig/configuration.rbs', line 179

def scheduler_wait_weight: () -> Float?

#scheduler_wait_weight=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


180
# File 'sig/configuration.rbs', line 180

def scheduler_wait_weight=: (Numeric) -> Float

#send_timeoutFloat?

Maximum time to wait for a send operation (seconds)

Returns:

  • (Float, nil)


47
# File 'sig/configuration.rbs', line 47

def send_timeout: () -> Float?

#send_timeout=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


48
# File 'sig/configuration.rbs', line 48

def send_timeout=: (Numeric) -> Float

#shutdown_timeoutFloat?

Maximum time to wait for clean shutdown (seconds)

Returns:

  • (Float, nil)


55
# File 'sig/configuration.rbs', line 55

def shutdown_timeout: () -> Float?

#shutdown_timeout=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


56
# File 'sig/configuration.rbs', line 56

def shutdown_timeout=: (Numeric) -> Float

#slab_sizeFloat?

Timer slab partitioning duration (seconds)

Returns:

  • (Float, nil)


167
# File 'sig/configuration.rbs', line 167

def slab_size: () -> Float?

#slab_size=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


168
# File 'sig/configuration.rbs', line 168

def slab_size=: (Numeric) -> Float

#source_systemString?

Identifier for the system producing messages

Returns:

  • (String, nil)


103
# File 'sig/configuration.rbs', line 103

def source_system: () -> String?

#source_system=String

Parameters:

Returns:

  • (String)


104
# File 'sig/configuration.rbs', line 104

def source_system=: (_ToS) -> String

#stall_thresholdFloat?

Time threshold for detecting stalled consumers (seconds)

Returns:

  • (Float, nil)


51
# File 'sig/configuration.rbs', line 51

def stall_threshold: () -> Float?

#stall_threshold=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


52
# File 'sig/configuration.rbs', line 52

def stall_threshold=: (Numeric) -> Float

#state_cache_dirString?

Root directory for the local keyed-state cache. Falls back to PROSODY_STATE_CACHE_DIR. Must not be an empty string.

Returns:

  • (String, nil)


271
# File 'sig/configuration.rbs', line 271

def state_cache_dir: () -> String?

#state_cache_dir=String

Parameters:

Returns:

  • (String)


272
# File 'sig/configuration.rbs', line 272

def state_cache_dir=: (_ToS) -> String

#state_collectionsArray[untyped]?

Keyed-state collections to register before subscribe. Accepts an array of definition objects (from Prosody.value/map/deque and their message_* siblings) or already-serialized registration hashes.

Returns:

  • (Array[untyped], nil)


261
# File 'sig/configuration.rbs', line 261

def state_collections: () -> Array[untyped]?

#state_collections=Array[untyped]

Parameters:

  • (Object)

Returns:

  • (Array[untyped])


262
# File 'sig/configuration.rbs', line 262

def state_collections=: (untyped) -> Array[untyped]

#state_owned_cache_sizeString?

Capacity of the owning keyed-state cache. Accepts a human-readable size. Uses PROSODY_STATE_OWNED_CACHE_SIZE when omitted. Otherwise, the engine selects its default.

Returns:

  • (String, nil)


277
# File 'sig/configuration.rbs', line 277

def state_owned_cache_size: () -> String?

#state_owned_cache_size=String

Parameters:

  • _ToS (String)

Returns:

  • (String)


278
# File 'sig/configuration.rbs', line 278

def state_owned_cache_size=: (String | _ToS) -> String

#state_read_cacheFloat, ...

Default published-read cache TTL in seconds, or false to bypass it. Uses PROSODY_STATE_READ_CACHE_TTL when omitted, then 5 seconds.

Returns:

  • (Float, false, nil)


288
# File 'sig/configuration.rbs', line 288

def state_read_cache: () -> (Float | false)?

#state_read_cache=Float, false

Parameters:

  • false (Numeric)

Returns:

  • (Float, false)


289
# File 'sig/configuration.rbs', line 289

def state_read_cache=: (Numeric | false) -> (Float | false)

#state_read_cache_sizeString?

Capacity of the published-state read cache. Uses PROSODY_STATE_READ_CACHE_SIZE when omitted. It then uses the owned cache size when set, or 1 MiB when both sizes are unset.

Returns:

  • (String, nil)


283
# File 'sig/configuration.rbs', line 283

def state_read_cache_size: () -> String?

#state_read_cache_size=String

Parameters:

  • _ToS (String)

Returns:

  • (String)


284
# File 'sig/configuration.rbs', line 284

def state_read_cache_size=: (String | _ToS) -> String

#state_recovery_delayFloat?

Delay in whole seconds between staging a provisional cell and the recovery sweep. Falls back to PROSODY_STATE_RECOVERY_DELAY (read by core).

Returns:

  • (Float, nil)


293
# File 'sig/configuration.rbs', line 293

def state_recovery_delay: () -> Float?

#state_recovery_delay=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


294
# File 'sig/configuration.rbs', line 294

def state_recovery_delay=: (Numeric) -> Float

#subscribed_topicsArray[String]?

Kafka topics to subscribe to

Returns:

  • (Array[String], nil)


35
# File 'sig/configuration.rbs', line 35

def subscribed_topics: () -> Array[String]?

#subscribed_topics=Array[String]

Parameters:

  • (String, _ToA[String])

Returns:

  • (Array[String])


36
# File 'sig/configuration.rbs', line 36

def subscribed_topics=: (String | _ToA[String]) -> Array[String]

#subsystemString?

Subsystem under which published JSON collections are advertised. Uses PROSODY_SUBSYSTEM when omitted. Published collections require it.

Returns:

  • (String, nil)


266
# File 'sig/configuration.rbs', line 266

def subsystem: () -> String?

#subsystem=String

Parameters:

Returns:

  • (String)


267
# File 'sig/configuration.rbs', line 267

def subsystem=: (_ToS) -> String

#telemetry_enabledBoolean?

Whether the telemetry emitter is enabled

Returns:

  • (Boolean, nil)


247
# File 'sig/configuration.rbs', line 247

def telemetry_enabled: () -> bool?

#telemetry_enabled=Boolean

Parameters:

  • (Object)

Returns:

  • (Boolean)


248
# File 'sig/configuration.rbs', line 248

def telemetry_enabled=: (untyped) -> bool

#telemetry_topicString?

Kafka topic to produce internal telemetry events to

Returns:

  • (String, nil)


243
# File 'sig/configuration.rbs', line 243

def telemetry_topic: () -> String?

#telemetry_topic=String

Parameters:

Returns:

  • (String)


244
# File 'sig/configuration.rbs', line 244

def telemetry_topic=: (_ToS) -> String

#timeoutFloat?

Handler execution timeout (seconds)

Returns:

  • (Float, nil)


239
# File 'sig/configuration.rbs', line 239

def timeout: () -> Float?

#timeout=Float

Parameters:

  • (Numeric)

Returns:

  • (Float)


240
# File 'sig/configuration.rbs', line 240

def timeout=: (Numeric) -> Float

#timer_spansString?

Span linking for timer execution spans ('child' or 'follows_from')

Returns:

  • (String, nil)


255
# File 'sig/configuration.rbs', line 255

def timer_spans: () -> String?

#timer_spans=String

Parameters:

Returns:

  • (String)


256
# File 'sig/configuration.rbs', line 256

def timer_spans=: (_ToS) -> String

#to_hashHash[Symbol, untyped]

Convert configuration to a hash with non-nil values only

Returns:

  • (Hash[Symbol, untyped])


392
393
394
# File 'lib/prosody/configuration.rb', line 392

def to_hash
  @config.dup.compact
end