Class: Logger

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/asker/logger.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.closeObject



48
49
50
# File 'lib/asker/logger.rb', line 48

def self.close
  @logfile.close
end

.create(logpath) ⇒ Object



38
39
40
41
42
43
44
45
46
# File 'lib/asker/logger.rb', line 38

def self.create(logpath)
  @logfile = File.open(logpath, "w")
  @logfile.write("=" * 50 + "\n")
  @logfile.write("Created by : #{Asker::NAME}")
  @logfile.write(" (version #{Asker::VERSION})\n")
  @logfile.write("File       : #{File.basename(logpath)}\n")
  @logfile.write("Time       : #{Time.new}\n")
  @logfile.write("=" * 50 + "\n\n")
end

.error(msg) ⇒ Object



23
24
25
26
27
# File 'lib/asker/logger.rb', line 23

def self.error(msg)
  msg = Rainbow("[ERROR] #{msg}\n").red.bright
  Warning.warn msg if @verbose
  @logfile&.write(msg)
end

.info(msg) ⇒ Object



12
13
14
15
# File 'lib/asker/logger.rb', line 12

def self.info(msg)
  puts msg if @verbose
  @logfile&.write(msg)
end

.verbose(msg) ⇒ Object



29
30
31
32
# File 'lib/asker/logger.rb', line 29

def self.verbose(msg)
  print msg if @verbose
  @logfile&.write(msg)
end

.verboseln(msg) ⇒ Object



34
35
36
# File 'lib/asker/logger.rb', line 34

def self.verboseln(msg)
  verbose(msg + "\n")
end

.warn(msg) ⇒ Object



17
18
19
20
21
# File 'lib/asker/logger.rb', line 17

def self.warn(msg)
  msg = Rainbow("[WARN] #{msg}\n").yellow.bright
  puts msg if @verbose
  @logfile&.write(msg)
end

Instance Method Details

#set_verbose(value) ⇒ Object



8
9
10
# File 'lib/asker/logger.rb', line 8

def set_verbose(value)
  @verbose = (value == "yes")
end