module Splash::Loggers

Loggers namespace

Splash Loggers module

Splash Loggers module

Splash Loggers module

Splash Loggers module

Constants

ALIAS
LEVELS

Public Instance Methods

change_logger(options = {}) click to toggle source

wrapper to change logger, call get_logger with force: true @option options [Symbol] :logger the name of the logger actually in [:cli, :daemon, :dual]

# File lib/splash/loggers.rb, line 38
def change_logger(options = {})
  level = get_logger.level
  options[:force] = true
  get_logger(options).level = level
end
get_logger(options = {}) click to toggle source

factory for Loggers @param [Hash] options @option options [Symbol] :logger the name of the logger actually in [:cli, :daemon, :dual] @option options [Boolean] :force to force new instance creation (Logger is class variable) @return [SPlash::Loggers::<type>] type is Cli, Dual, Daemon, Web

# File lib/splash/loggers.rb, line 18
def get_logger(options = {})
  logger = (get_config.loggers[:list].include? options[:logger])? options[:logger].to_s : get_config.loggers[:default].to_s
  aclass = "Splash::Loggers::#{logger.capitalize}"
  begin
    return @@logger = Kernel.const_get(aclass)::new if options[:force]
    return @@logger ||= Kernel.const_get(aclass)::new
  rescue
    splash_exit case: :configuration_error, more: "Logger specified inexistant : #{logger}"
  end
end
get_session() click to toggle source

build a session number @return [String] Session number

# File lib/splash/loggers.rb, line 31
def get_session
  return "#{Time.now.to_i.to_s}#{rand(999)}"
end