Method: Datadog::CI::AsyncWriter#initialize
- Defined in:
- lib/datadog/ci/async_writer.rb
#initialize(transport:, options: {}) ⇒ AsyncWriter
Returns a new instance of AsyncWriter.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/datadog/ci/async_writer.rb', line 25 def initialize(transport:, options: {}) @transport = transport # Workers::Polling settings self.enabled = .fetch(:enabled, true) # Workers::Async::Thread settings self.fork_policy = Core::Workers::Async::Thread::FORK_POLICY_RESTART # Workers::IntervalLoop settings self.loop_base_interval = [:interval] || DEFAULT_INTERVAL self.loop_back_off_ratio = [:back_off_ratio] if .key?(:back_off_ratio) self.loop_back_off_max = [:back_off_max] if .key?(:back_off_max) @buffer_size = .fetch(:buffer_size, DEFAULT_BUFFER_MAX_SIZE) self.buffer = buffer_klass.new(@buffer_size) @shutdown_timeout = .fetch(:shutdown_timeout, DEFAULT_SHUTDOWN_TIMEOUT) @stopped = false end |