Class: Trinidad::Extensions::LoggingServerExtension

Inherits:
ServerExtension
  • Object
show all
Includes:
LoggingJars
Defined in:
lib/trinidad_logging_extension.rb

Constant Summary

Constants included from LoggingJars

Trinidad::Extensions::LoggingJars::LOG4J_VERSION, Trinidad::Extensions::LoggingJars::LOGBACK_VERSION, Trinidad::Extensions::LoggingJars::SLF4J_VERSION

Instance Method Summary collapse

Methods included from LoggingJars

#require_common_jars, #require_jul_jars, #require_log4j_jars, #require_logback_jars

Instance Method Details

#configure(tomcat) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/trinidad_logging_extension.rb', line 12

def configure(tomcat)
  @options[:logging_system] ||= 'log4j'
  @options[:config] ||= @options[:logging_system].eql? 'logback' ?
     'config/trinidad-logging.xml' : 'config/trinidad-logging.properties'

  require_common_jars

  case @options[:logging_system]
  when 'log4j'
    set_config_property 'log4j.configuration'
    require_log4j_jars
    configure_jul_bridge
  when 'logback'
    set_config_property 'logback.configurationFile'
    require_logback_jars
    configure_jul_bridge
  when 'jul', 'jdk14', 'util'
    set_config_property('java.util.logging.config.file', false)
    require_jul_jars
    java_import 'java.util.logging.LogManager'
    java.util.logging.LogManager.getLogManager.readConfiguration
  else
    return
  end
end

#configure_jul_bridgeObject



38
39
40
41
# File 'lib/trinidad_logging_extension.rb', line 38

def configure_jul_bridge
  java_import 'org.slf4j.bridge.SLF4JBridgeHandler'
  org.slf4j.bridge.SLF4JBridgeHandler.install
end

#set_config_property(property_name, url = true) ⇒ Object



43
44
45
46
47
48
49
# File 'lib/trinidad_logging_extension.rb', line 43

def set_config_property(property_name, url=true)
  config_file = File.expand_path(@options[:config])
  if url
    config_file = java.io.File.new(config_file).to_url.to_s
  end
  java.lang.System.set_property(property_name, config_file)
end