class Darlingtonia::LogStream

Attributes

logger[RW]

@!attribute [rw] logger

@return [Logger]

@!attribute [rw] severity

@return [Logger::Serverity]
severity[RW]

@!attribute [rw] logger

@return [Logger]

@!attribute [rw] severity

@return [Logger::Serverity]

Public Class Methods

new(logger: nil, severity: nil) click to toggle source
# File lib/darlingtonia/log_stream.rb, line 12
def initialize(logger: nil, severity: nil)
  self.logger   = logger   || Logger.new(build_filename)
  self.severity = severity || Logger::INFO
end

Public Instance Methods

<<(msg) click to toggle source
# File lib/darlingtonia/log_stream.rb, line 17
def <<(msg)
  logger.add(severity, msg)
  STDOUT << msg
end

Private Instance Methods

build_filename() click to toggle source
# File lib/darlingtonia/log_stream.rb, line 24
def build_filename
  return ENV['IMPORT_LOG'] if ENV['IMPORT_LOG']
  return rails_log_name if rails_log_name
  './log/darlingtonia_import.log'
end
rails_log_name() click to toggle source
# File lib/darlingtonia/log_stream.rb, line 30
def rails_log_name
  case Rails.env
  when 'production'
    Rails.root.join('log', "csv_import.log").to_s
  when 'development'
    Rails.root.join('log', "dev_csv_import.log").to_s
  when 'test'
    Rails.root.join('log', "test_csv_import.log").to_s
  end
rescue ::NameError
  false
end