Module: Tablexi

Defined in:
lib/tablexi/logger.rb,
lib/tablexi/logger/railtie.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

.bare_logger=(value) ⇒ Object

Sets the attribute bare_logger

Parameters:

  • value

    the value to set the attribute bare_logger to.



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

def bare_logger=(value)
  @bare_logger = value
end

.loggerObject



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

def logger
  @logger ||= default_logger
end

Class Method Details

.default_logger(base_logger = bare_logger) ⇒ Object



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

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 = [: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