lib/sapience/base.rb in sapience-0.2.12 vs lib/sapience/base.rb in sapience-0.2.13
- old
+ new
@@ -173,11 +173,11 @@
#
# logger.with_payload(tracking_number: 12345) do
# logger.debug('Hello World', result: 'blah')
# end
def with_payload(payload)
- current_payload = self.payload
+ current_payload = self.payload
Thread.current[:sapience_payload] = current_payload ? current_payload.merge(payload) : payload
yield
ensure
Thread.current[:sapience_payload] = current_payload
end
@@ -220,10 +220,13 @@
# Support filtering all messages to this logger using a Regular Expression
# or Proc
fail ArgumentError, ":filter must be a Regexp or Proc" unless filter.nil? || filter.is_a?(Regexp) || filter.is_a?(Proc)
@filter = filter.is_a?(Regexp) ? filter.freeze : filter
- @name = klass.is_a?(String) ? klass : klass.name
+ @name = klass if klass.is_a?(String)
+ @name ||= klass.name if klass.respond_to?(:name)
+ @name ||= klass.class.name
+
if level.nil?
# Allow the global default level to determine this loggers log level
@level_index = nil
@level = nil
else