Class: ModSpox::Logger

Inherits:
Object
  • Object
show all
Defined in:
lib/mod_spox/Logger.rb

Class Method Summary collapse

Class Method Details

.do_initializationObject



7
8
9
10
11
12
13
14
15
# File 'lib/mod_spox/Logger.rb', line 7

def self.do_initialization
    Logger.fd(nil) unless Logger.class_variable_defined?(:@@fd)
    Logger.severity unless Logger.class_variable_defined?(:@@severity)
    @@lock = Mutex.new unless Logger.class_variable_defined?(:@@lock)
    @@lock.synchronize do
        @@writer = LogWriter.new(@@fd) unless Logger.class_variable_defined?(:@@writer)
        @@initialized = true
    end
end

.fd(filedes = nil) ⇒ Object

filedes

file descriptor to log to

Sets the file descriptor for logging. By default logs will be sent to STDOUT



26
27
28
# File 'lib/mod_spox/Logger.rb', line 26

def self.fd(filedes=nil)
    @@fd = filedes.nil? ? $stdout : filedes
end

.killObject



40
41
42
# File 'lib/mod_spox/Logger.rb', line 40

def self.kill
    @@writer.kill
end

.log(message, severity = 1) ⇒ Object

message

message to log

severity

severity level (lower is more severe)

Log a message. It is important to note that the lower the severity level of a message, the better chance it has of being outputted



35
36
37
38
# File 'lib/mod_spox/Logger.rb', line 35

def self.log(message, severity=1)
    do_initialization unless Logger.class_variable_defined?(:@@initialized)
    @@writer.log(message) unless @@severity < severity
end

.severity(severity = 1) ⇒ Object

severity

minimum severity for visible logging

Sets the maximum level of visible logs



19
20
21
# File 'lib/mod_spox/Logger.rb', line 19

def self.severity(severity=1)
    @@severity = severity
end