mirror of
https://github.com/ditkrg/rabbit_carrots.git
synced 2026-01-25 07:06:39 +00:00
Enhances logger initialization by introducing a logger adapter for improved compatibility and flexibility
This commit is contained in:
parent
aee5a1e3cb
commit
076e1f52ce
@ -11,7 +11,7 @@ module RabbitCarrots
|
|||||||
end
|
end
|
||||||
|
|
||||||
def initialize(logger: nil)
|
def initialize(logger: nil)
|
||||||
@logger = logger || Logger.new(Rails.env.production? ? '/proc/self/fd/1' : $stdout)
|
@logger = create_logger_adapter(logger || Logger.new(Rails.env.production? ? '/proc/self/fd/1' : $stdout))
|
||||||
@threads = []
|
@threads = []
|
||||||
@running = true
|
@running = true
|
||||||
@shutdown_requested = false
|
@shutdown_requested = false
|
||||||
@ -115,5 +115,24 @@ module RabbitCarrots
|
|||||||
logger.error "Bunny session error: #{e.message}"
|
logger.error "Bunny session error: #{e.message}"
|
||||||
request_shutdown
|
request_shutdown
|
||||||
end
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def create_logger_adapter(logger)
|
||||||
|
return logger if logger.respond_to?(:info) && logger.respond_to?(:error) && logger.respond_to?(:warn)
|
||||||
|
|
||||||
|
adapter = Object.new
|
||||||
|
def adapter.info(msg)
|
||||||
|
@logger.write("[INFO] #{msg}\n")
|
||||||
|
end
|
||||||
|
def adapter.error(msg)
|
||||||
|
@logger.write("[ERROR] #{msg}\n")
|
||||||
|
end
|
||||||
|
def adapter.warn(msg)
|
||||||
|
@logger.write("[WARN] #{msg}\n")
|
||||||
|
end
|
||||||
|
adapter.instance_variable_set(:@logger, logger)
|
||||||
|
adapter
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user