lib/liquid/logger.rb in liquid-ext-3.2.0 vs lib/liquid/logger.rb in liquid-ext-3.3.0
- old
+ new
@@ -1,33 +1,39 @@
-require 'liquid/ext/string'
-
-require_relative './slf4j-api-1.7.6.jar'
-require_relative './slf4j-log4j12-1.7.6.jar'
-require_relative './log4j-1.2.17.jar'
java_import 'org.slf4j.LoggerFactory'
module Liquid
class Logger
attr_accessor :progname
+ attr_accessor :appender
def initialize(name, progname = nil)
@progname = progname || File.basename($0)
@logger = LoggerFactory.getLogger(name)
@exceptions = {}
@exception_handlers = [method(:_log_error_exception)]
- reload!
+ unmute!
end
def reload!
root = org.apache.log4j.Logger.getRootLogger
- appender = org.apache.log4j.ConsoleAppender.new
- appender.name = "console"
+ appender = @appender.new
+ appender.name = "default"
appender.layout = org.apache.log4j.PatternLayout.new($conf.log.format)
appender.threshold = org.apache.log4j.Level.toLevel($conf.log.level.to_s)
appender.activateOptions
root.removeAllAppenders
root.addAppender(appender)
+ end
+
+ def mute!
+ @appender = org.apache.log4j.varia.NullAppender
+ reload!
+ end
+
+ def unmute!
+ @appender = org.apache.log4j.ConsoleAppender
+ reload!
end
def trace?
@logger.trace_enabled?
end