def self.extend_object(log_client)
class <<log_client
include ::Swiftcore::Analogger::Client::LoggerInterface
alias analog log
def add(severity, message = nil, progname = nil, &block)
level = severity
case severity
when Numeric
severity = LevelToSeverity[level]
when Symbol
severity = severity.to_s.downcase
level = SeverityToLevel[severity]
when String
severity = severity.to_s.downcase
level = SeverityToLevel[severity]
else
raise ArgumentError.new('#add accepts either Numeric, Symbol or String')
end
return true unless @level <= level
severity = MapUnknownTo if severity == 'unknown'
progname ||= @service
if message.nil?
if block_given?
message = yield
else
message = progname
progname = @service
end
end
analog( severity, message )
true
end
alias log add
end
log_client.level ||= 0
log_client
end