class Egi::Fedcloud::Vmhound::Log
Constants
- SUBSCRIPTION_HANDLE
Attributes
log_prefix[R]
logger[R]
Public Class Methods
debug(message)
click to toggle source
@see info
# File lib/egi/fedcloud/vmhound/log.rb, line 45 def self.debug(message) ActiveSupport::Notifications.instrument(self::SUBSCRIPTION_HANDLE, :level => ::Logger::DEBUG, :message => message) end
error(message)
click to toggle source
@see info
# File lib/egi/fedcloud/vmhound/log.rb, line 61 def self.error(message) ActiveSupport::Notifications.instrument(self::SUBSCRIPTION_HANDLE, :level => ::Logger::ERROR, :message => message) end
fatal(message)
click to toggle source
@see info
# File lib/egi/fedcloud/vmhound/log.rb, line 66 def self.fatal(message) ActiveSupport::Notifications.instrument(self::SUBSCRIPTION_HANDLE, :level => ::Logger::FATAL, :message => message) end
info(message)
click to toggle source
Log
an INFO
message @param message [String] message the message to log; does not need to be a String
# File lib/egi/fedcloud/vmhound/log.rb, line 51 def self.info(message) ActiveSupport::Notifications.instrument(self::SUBSCRIPTION_HANDLE, :level => ::Logger::INFO, :message => message) end
new(log_dev, log_prefix = '')
click to toggle source
Creates a new logger instance.
@param log_dev [IO,String] The log device. This is a filename (String) or IO object (typically STDOUT
) @param log_prefix
[String] String placed in front of every logged message STDERR
, or an open file).
# File lib/egi/fedcloud/vmhound/log.rb, line 14 def initialize(log_dev, log_prefix = '') if log_dev.kind_of? ::Logger @logger = log_dev else @logger = ::Logger.new(log_dev) end @log_prefix = log_prefix.blank? ? '' : log_prefix.strip @log_prefix << ' ' unless @log_prefix.blank? # subscribe to log messages and send to logger @log_subscriber = ActiveSupport::Notifications.subscribe(self.class::SUBSCRIPTION_HANDLE) do |name, start, finish, id, payload| @logger.log(payload[:level], "#{@log_prefix}#{payload[:message]}") if @logger end end
warn(message)
click to toggle source
@see info
# File lib/egi/fedcloud/vmhound/log.rb, line 56 def self.warn(message) ActiveSupport::Notifications.instrument(self::SUBSCRIPTION_HANDLE, :level => ::Logger::WARN, :message => message) end
Public Instance Methods
close()
click to toggle source
# File lib/egi/fedcloud/vmhound/log.rb, line 30 def close ActiveSupport::Notifications.unsubscribe(@log_subscriber) end
level()
click to toggle source
@return [::Logger::Severity]
# File lib/egi/fedcloud/vmhound/log.rb, line 40 def level @logger.level end
level=(severity)
click to toggle source
@param severity [::Logger::Severity] severity
# File lib/egi/fedcloud/vmhound/log.rb, line 35 def level=(severity) @logger.level = severity end