class Nagare::Config

Configuration class for Nagare. See the README for possible values and what they do

Attributes

dlq_stream[RW]
error_handler[RW]
group_name[RW]
max_retries[RW]
min_idle_time[RW]
redis_url[RW]
suffix[RW]
threads[RW]

Public Class Methods

configure() { |self| ... } click to toggle source

Runs code in the block passed in to configure Nagare and sets defaults when values are not set.

returns [Nagare::Config] self rubocop:disable Metrics/CyclomaticComplexity, Metrics/PerceivedComplexity, Metrics/MethodLength, Metrics/AbcSize

# File lib/nagare/config.rb, line 16
def configure
  yield(self)
  @dead_consumer_timeout ||= 5000
  @group_name ||= 'nagare'
  @redis_url = redis_url || ENV['REDIS_URL'] || 'redis://localhost:6379'
  @threads ||= 1
  @suffix ||= nil
  @min_idle_time ||= 600_000
  @error_handler ||= proc do |message, error|
    Nagare.logger.error "Failed to process message #{message}"
    Nagare.logger.error error.message
    Nagare.logger.error error.backtrace.join("\n")
  end
  @dlq_stream ||= 'dlq'
  @max_retries ||= 10
  self
end