Module: Phobos::Configuration

Included in:
Phobos
Defined in:
lib/phobos/configuration.rb

Instance Method Summary collapse

Instance Method Details

#configure(configuration) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/phobos/configuration.rb', line 7

def configure(configuration)
  @config = fetch_configuration(configuration)
  @config.class.send(:define_method, :producer_hash) do
    Phobos.config.producer&.to_hash&.except(:kafka)
  end
  @config.class.send(:define_method, :consumer_hash) do
    Phobos.config.consumer&.to_hash&.except(:kafka)
  end
  @config.listeners ||= []
  configure_logger
end

#configure_loggerObject

:nodoc:



20
21
22
23
24
25
26
27
28
29
30
# File 'lib/phobos/configuration.rb', line 20

def configure_logger
  Logging.backtrace(true)
  Logging.logger.root.level = silence_log ? :fatal : config.logger.level

  configure_ruby_kafka_logger
  configure_phobos_logger

  logger.info do
    Hash(message: 'Phobos configured', env: ENV['RAILS_ENV'] || ENV['RACK_ENV'] || 'N/A')
  end
end