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