Class: WaterDrop::Polling::Config

Inherits:
Object
  • Object
show all
Extended by:
Karafka::Core::Configurable
Defined in:
lib/waterdrop/polling/config.rb

Overview

Configuration for the global FD poller singleton These settings apply to all producers using FD polling mode

Examples:

Configure before creating any producers

WaterDrop::Polling::Config.setup do |config|
  config.thread_priority = -1
  config.poll_timeout = 500
end

Class Method Summary collapse

Class Method Details

.setup {|config| ... } ⇒ Object

Configures the poller settings

Yields:

  • (config)

    Configuration block

Yield Parameters:

  • config (Karafka::Core::Configurable::Node)

    config node



39
40
41
42
43
44
45
46
47
48
# File 'lib/waterdrop/polling/config.rb', line 39

def setup
  configure do |config|
    yield(config)
  end

  Contracts::PollerConfig.new.validate!(
    self.config.to_h,
    Errors::ConfigurationInvalidError
  )
end