Module: Tablexi

Defined in:
lib/tablexi/logger.rb,
lib/tablexi/logger/rollbar.rb,
lib/tablexi/logger/version.rb,
lib/tablexi/logger/standard.rb,
lib/tablexi/logger/new_relic.rb,
lib/tablexi/logger/severities.rb,
lib/tablexi/logger/option_filter/humanize_request.rb

Defined Under Namespace

Classes: Logger

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.loggerObject



14
15
16
# File 'lib/tablexi/logger.rb', line 14

def logger
  @logger ||= default_logger
end

Class Method Details

.default_logger(base_logger = bare_logger) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
# File 'lib/tablexi/logger.rb', line 18

def default_logger(base_logger = bare_logger)
  Logger.new.tap do |logger|
    logger.option_filters << Tablexi::Logger::OptionFilter::HumanizeRequest
    Tablexi::Logger::SEVERITIES.each do |severity|
      logger.handlers[severity] << Tablexi::Logger::Standard.new(base_logger, severity: severity)
    end
    trackable_severities = i(error fatal unknown)
    logger.handle trackable_severities, &Tablexi::Logger::Rollbar if defined?(::Rollbar)
    logger.handle trackable_severities, &Tablexi::Logger::NewRelic if defined?(::NewRelic)
  end
end