module Dclog

Constants

VERSION

Public Class Methods

method_missing(method, *args) click to toggle source
# File lib/dclog.rb, line 14
def method_missing(method, *args)
  caller = caller_locations.first.label
  message = args[0]

  log_to_stdout(method, caller, message)
end
respond_to_missing?(method, include_private = false) click to toggle source
Calls superclass method
# File lib/dclog.rb, line 21
def respond_to_missing?(method, include_private = false)
  valid_level?(method) || super
end

Private Class Methods

log_to_stdout(severity, caller, message) click to toggle source
# File lib/dclog.rb, line 35
def log_to_stdout(severity, caller, message)
  raise_no_method_error!(severity) unless valid_level?(severity)

  Sidekiq.logger.send(severity, caller) { message } if defined?(Sidekiq)
  Rails.logger.send(severity, caller) { message }
end
raise_no_method_error!(severity) click to toggle source
# File lib/dclog.rb, line 31
def raise_no_method_error!(severity)
  raise NoMethodError, "undefined method '#{severity}' for Log:Class"
end
valid_level?(severity) click to toggle source
# File lib/dclog.rb, line 27
def valid_level?(severity)
  %i[info warn error fatal debug].include?(severity)
end