Class: Endow::Logger

Inherits:
Object
  • Object
show all
Defined in:
lib/endow/logger.rb

Class Method Summary collapse

Class Method Details

.attempts_segment(attempt, attempts) ⇒ Object



38
39
40
41
42
# File 'lib/endow/logger.rb', line 38

def self.attempts_segment( attempt, attempts )
  attempts.blank? ?
    "Attempt #{attempt}" :
    "Attempt #{attempt} of #{attempts}"
end

.error_labelObject



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

def self.error_label
  "Service ERROR"
end

.green_prefixObject



22
23
24
25
# File 'lib/endow/logger.rb', line 22

def self.green_prefix
  #TODO change to another ANSI library
  "#{indention}[#{ANSI.green { label }}]"
end

.indentionObject



52
53
54
# File 'lib/endow/logger.rb', line 52

def self.indention
  "  "
end

.labelObject



44
45
46
# File 'lib/endow/logger.rb', line 44

def self.label
  "Service Connection"
end

.log(msg) ⇒ Object



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

def self.log( msg )
  return unless logger
  #TODO make this more adaptable
  logger.info( msg )
end

.log_connection(service, attempt, attempts = nil) ⇒ Object



4
5
6
# File 'lib/endow/logger.rb', line 4

def self.log_connection( service, attempt, attempts=nil )
  log "#{green_prefix} #{service.class.name} (#{attempts_segment attempt, attempts}) #{service_options service}"
end

.log_graceful_error(msg) ⇒ Object



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

def self.log_graceful_error( msg )
  log "#{red_prefix} #{msg}"
end

.loggerObject



18
19
20
# File 'lib/endow/logger.rb', line 18

def self.logger
  Endow.configuration.logger
end

.red_prefixObject



27
28
29
30
# File 'lib/endow/logger.rb', line 27

def self.red_prefix
  #TODO change to another ANSI library
  "#{indention}[#{ANSI.red { error_label }}]"
end

.service_options(service) ⇒ Object



32
33
34
35
36
# File 'lib/endow/logger.rb', line 32

def self.service_options( service )
  service.respond_to?( :options_for_log ) ?
    "with #{service.options_for_log.inspect}" :
    nil
end