class Leafy::Logger::Factory
Public Class Methods
bootstrap()
click to toggle source
# File lib/leafy/logger/factory.rb, line 28 def self.bootstrap Java::IoDropwizardLogging::LoggingFactory.bootstrap end
configurator()
click to toggle source
# File lib/leafy/logger/factory.rb, line 32 def self.configurator objectMapper = Java::IoDropwizardJackson::Jackson.newObjectMapper validator = javax.validation.Validation.buildDefaultValidatorFactory.validator Java::IoDropwizardConfiguration::ConfigurationFactory.new( Java::IoDropwizardLogging::LoggingFactory.java_class, validator, objectMapper, "" ) end
get_logger( name )
click to toggle source
# File lib/leafy/logger/factory.rb, line 24 def self.get_logger( name ) org.slf4j.LoggerFactory.get_logger name end
new( factory = nil )
click to toggle source
# File lib/leafy/logger/factory.rb, line 47 def initialize( factory = nil ) @factory = factory || Java::IoDropwizardLogging::LoggingFactory.new end
new_from_options( options )
click to toggle source
# File lib/leafy/logger/factory.rb, line 38 def self.new_from_options( options ) new( configurator.build( HashSourceProvider.new( options ), 'dummy') ) end
new_from_yaml( yamlfile )
click to toggle source
# File lib/leafy/logger/factory.rb, line 42 def self.new_from_yaml( yamlfile ) raise "no such file #{yamlfile}" unless File.exists?( yamlfile ) new( configurator.build( java.io.File.new( yamlfile ) ) ) end
Public Instance Methods
[]=( name, level )
click to toggle source
# File lib/leafy/logger/factory.rb, line 108 def []=( name, level ) m = @factory.loggers.to_hash m[ name ] = level self.loggers = m end
appenders( *args )
click to toggle source
# File lib/leafy/logger/factory.rb, line 87 def appenders( *args ) if args.size > 0 self.appenders = args else @factory.appenders.to_a end end
appenders=(args)
click to toggle source
# File lib/leafy/logger/factory.rb, line 95 def appenders= args @factory.appenders = args reconfigure end
configure( metrics, name )
click to toggle source
# File lib/leafy/logger/factory.rb, line 126 def configure( metrics, name ) @metrics = metrics @name = name reconfigure end
level(args = nil)
click to toggle source
# File lib/leafy/logger/factory.rb, line 67 def level args = nil if args self.level = args else @factory.level.to_s end end
level=(level)
click to toggle source
# File lib/leafy/logger/factory.rb, line 81 def level= level l = level.to_s.upcase @factory.level = Java::ChQosLogbackClassic::Level.const_get( l ) reconfigure end
loggers( map = nil )
click to toggle source
# File lib/leafy/logger/factory.rb, line 100 def loggers( map = nil ) if map self.loggers = map else Hash[ @factory.loggers.collect {|k,v| [k, v.to_s ] } ] end end
loggers=(map)
click to toggle source
# File lib/leafy/logger/factory.rb, line 121 def loggers= map loggers_set( map ) reconfigure end
reconfigure()
click to toggle source
# File lib/leafy/logger/factory.rb, line 132 def reconfigure @factory.configure( @metrics.metrics, @name ) if @metrics end
reconfigure_from_options( options )
click to toggle source
# File lib/leafy/logger/factory.rb, line 51 def reconfigure_from_options( options ) do_reconfigure( self.class.configurator.build( HashSourceProvider.new( options ), 'dummy') ) end
reconfigure_from_yaml( yamlfile )
click to toggle source
# File lib/leafy/logger/factory.rb, line 55 def reconfigure_from_yaml( yamlfile ) raise "no such file #{yamlfile}" unless File.exists?( yamlfile ) do_reconfigure( self.class.configurator.build( java.io.File.new( yamlfile ) ) ) end
stop()
click to toggle source
# File lib/leafy/logger/factory.rb, line 136 def stop @factory.stop end
Private Instance Methods
do_reconfigure( factory )
click to toggle source
# File lib/leafy/logger/factory.rb, line 60 def do_reconfigure( factory ) @factory.stop @factory = factory reconfigure end
level_set(level)
click to toggle source
# File lib/leafy/logger/factory.rb, line 75 def level_set level l = level.to_s.upcase @factory.level = Java::ChQosLogbackClassic::Level.const_get( l ) end
loggers_set(map)
click to toggle source
# File lib/leafy/logger/factory.rb, line 114 def loggers_set map m = {} map.each { |k,v| m[k] = Java::ChQosLogbackClassic::Level.const_get( v.to_s.upcase ) } @factory.loggers = m end