Class: Mystro::Log

Inherits:
Object
  • Object
show all
Defined in:
lib/mystro/log.rb

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.loggersObject (readonly)

Returns the value of attribute loggers.



6
7
8
# File 'lib/mystro/log.rb', line 6

def loggers
  @loggers
end

Class Method Details

.add(level, dest, format = Yell::DefaultFormat) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/mystro/log.rb', line 15

def add(level, dest, format=Yell::DefaultFormat)
  if [STDOUT, STDERR].include?(dest)
    console_disable
    @loggers["STDOUT"] = Yell.new(dest, :level => level, :format => format)
  else
    @loggers.delete(dest) if @loggers[dest]
    FileUtils.mkdir_p(File.dirname(dest))
    @loggers[dest] = Yell.new(:datefile, dest,
                              :level => level, :format => format,
                              :keep  => 7, :symlink => true)
  end
end

.console_debugObject



32
33
34
35
36
# File 'lib/mystro/log.rb', line 32

def console_debug
  console_disable
  @loggers["STDOUT"] = Yell.new(STDOUT, :level => [:debug, :info, :warn], :format => Yell::NoFormat)
  @loggers["STDERR"] = Yell.new(STDERR, :level => [:error, :fatal], :format => Yell::NoFormat)
end

.console_disableObject



28
29
30
# File 'lib/mystro/log.rb', line 28

def console_disable
  %w{STDOUT STDERR}.each { |s| @loggers.delete(s) }
end

.console_quietObject



38
39
40
41
42
# File 'lib/mystro/log.rb', line 38

def console_quiet
  console_disable
  @loggers["STDOUT"] = Yell.new(STDOUT, :level => [:warn], :format => Yell::NoFormat)
  @loggers["STDERR"] = Yell.new(STDERR, :level => [:error, :fatal], :format => Yell::NoFormat)
end

.initObject



8
9
10
11
12
13
# File 'lib/mystro/log.rb', line 8

def init
  @loggers           = { }
  @loggers["STDOUT"] = Yell.new(STDOUT, :level => [:info, :warn], :format => Yell::NoFormat)
  @loggers["STDERR"] = Yell.new(STDERR, :level => [:error, :fatal], :format => Yell::NoFormat)
  #@loggers["/tmp/mystro.log"] = Yell.new(:datefile, "/tmp/mystro.log", :level => :debug, :format => Yell::DefaultFormat, :keep => 7, :symlink => true)
end

.resetObject



52
53
54
# File 'lib/mystro/log.rb', line 52

def reset
  @loggers = {}
end