lib/backup/logger.rb in backup-3.6.0 vs lib/backup/logger.rb in backup-3.7.0
- old
+ new
@@ -1,10 +1,11 @@
# encoding: utf-8
require 'backup/logger/console'
require 'backup/logger/logfile'
require 'backup/logger/syslog'
+require 'backup/logger/fog_adapter'
module Backup
class Logger
class Config
@@ -116,10 +117,12 @@
def reset!
@config = @logger = nil
end
end
+ MUTEX = Mutex.new
+
##
# Returns an Array of Message objects for all logged messages received.
# These are used to attach log files to Mail notifications.
attr_reader :messages
@@ -132,11 +135,13 @@
##
# Sends a message to the Logger using the specified log level.
# +obj+ may be any Object that responds to #to_s (i.e. an Exception)
[:info, :warn, :error].each do |level|
- define_method level, lambda {|obj| log(obj, level) }
+ define_method level, lambda {|obj|
+ MUTEX.synchronize { log(obj, level) }
+ }
end
##
# Returns true if any +:warn+ level messages have been received.
def has_warnings?
@@ -178,10 +183,10 @@
end
private
def log(obj, level)
- message = Message.new(Time.now, level, obj.to_s.split("\n"))
+ message = Message.new(Time.now.utc, level, obj.to_s.split("\n"))
message.level = :info if message.level == :warn &&
message.matches?(@config.ignores)
@has_warnings ||= message.level == :warn
@has_errors ||= message.level == :error