Class: Leafy::Logger::Factory
- Inherits:
-
Object
- Object
- Leafy::Logger::Factory
show all
- Includes:
- JRuby::Synchronized
- Defined in:
- lib/leafy/logger/factory.rb
Defined Under Namespace
Classes: HashSourceProvider
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(factory = nil) ⇒ Factory
Returns a new instance of Factory.
47
48
49
|
# File 'lib/leafy/logger/factory.rb', line 47
def initialize( factory = nil )
@factory = factory || Java::IoDropwizardLogging::LoggingFactory.new
end
|
Class Method Details
.bootstrap ⇒ Object
28
29
30
|
# File 'lib/leafy/logger/factory.rb', line 28
def self.bootstrap
Java::IoDropwizardLogging::LoggingFactory.bootstrap
end
|
.configurator ⇒ Object
32
33
34
35
36
|
# 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) ⇒ Object
24
25
26
|
# File 'lib/leafy/logger/factory.rb', line 24
def self.get_logger( name )
org.slf4j.LoggerFactory.get_logger name
end
|
.new_from_options(options) ⇒ Object
38
39
40
|
# 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) ⇒ Object
42
43
44
45
|
# 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
|
Instance Method Details
#[]=(name, level) ⇒ Object
108
109
110
111
112
|
# 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) ⇒ Object
87
88
89
90
91
92
93
|
# 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) ⇒ Object
95
96
97
98
|
# File 'lib/leafy/logger/factory.rb', line 95
def appenders= args
@factory.appenders = args
reconfigure
end
|
126
127
128
129
130
|
# File 'lib/leafy/logger/factory.rb', line 126
def configure( metrics, name )
@metrics = metrics
@name = name
reconfigure
end
|
#level(args = nil) ⇒ Object
67
68
69
70
71
72
73
|
# 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) ⇒ Object
81
82
83
84
85
|
# 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) ⇒ Object
100
101
102
103
104
105
106
|
# 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) ⇒ Object
121
122
123
124
|
# File 'lib/leafy/logger/factory.rb', line 121
def loggers= map
loggers_set( map )
reconfigure
end
|
132
133
134
|
# File 'lib/leafy/logger/factory.rb', line 132
def reconfigure
@factory.configure( @metrics.metrics, @name ) if @metrics
end
|
51
52
53
|
# File 'lib/leafy/logger/factory.rb', line 51
def reconfigure_from_options( options )
do_reconfigure( self.class.configurator.build( HashSourceProvider.new( options ), 'dummy') )
end
|
55
56
57
58
|
# 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 ⇒ Object
136
137
138
|
# File 'lib/leafy/logger/factory.rb', line 136
def stop
@factory.stop
end
|