Module: Applitools::EyesLogger

Extended by:
EyesLogger, Forwardable
Included in:
EyesLogger
Defined in:
lib/applitools/eyes_logger.rb

Defined Under Namespace

Classes: NullLogger

Constant Summary collapse

MANDATORY_METHODS =
[:debug, :info, :warn, :error, :fatal, :close].freeze
OPTIONAL_METHODS =
[].freeze

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.add_thread_id_to_log_handler!(log_handler) ⇒ Object

noinspection SpellCheckingInspection



16
17
18
19
20
21
22
# File 'lib/applitools/eyes_logger.rb', line 16

def self.add_thread_id_to_log_handler!(log_handler)
  original_formatter = Logger::Formatter.new
  log_handler.formatter = proc do |severity, datetime, progname, msg|
    updated_progname = "#{progname} (#{Thread.current.object_id})"
    original_formatter.call(severity, datetime, updated_progname, msg.dump)
  end
end

Instance Method Details

#log_handlerObject



38
39
40
# File 'lib/applitools/eyes_logger.rb', line 38

def log_handler
  @log_handler
end

#log_handler=(log_handler) ⇒ Object

Raises:

  • (Applitools::EyesError)


31
32
33
34
35
36
# File 'lib/applitools/eyes_logger.rb', line 31

def log_handler=(log_handler)
  raise Applitools::EyesError.new('log_handler must implement Logger!') unless valid?(log_handler)

  Applitools::EyesLogger.add_thread_id_to_log_handler! log_handler
  @log_handler = log_handler
end

#loggerObject



42
43
44
# File 'lib/applitools/eyes_logger.rb', line 42

def logger
  self
end