Sha256: 9c1fe6a336f66fb8f2857afdd063b913f2658e4f3ffe84074172f1991bf98d44

Contents?: true

Size: 833 Bytes

Versions: 2

Compression:

Stored size: 833 Bytes

Contents

# frozen_string_literal: true

require 'logger'

class DualLogger

  def config
    @application.config
  end

  def initialize application
    @application = application
    v_para = {
      level: config[:verbose].severity
    }
    @verb = Logger::new STDERR, **v_para
    if config[:log][:enable]
      f_para = {
        level: config[:log][:level].severity,
      }
      f_para[:shift_age] = config[:log][:shift][:age] if config[:log][:shift][:age]
      f_para[:shift_level] = config[:log][:shift][:level] if config[:log][:shift][:level]
      @file = Logger::new config[:log][:file], **f_para
    else
      @file = nil
    end
  end

  def log task, level, message
    task = task.name if task.respond_to?(:name)
    @verb.log(level.severity, message, task)
    @file.log(level.severity, message, task) if @file
  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
inat-get-0.8.0.12 lib/inat/app/logging.rb
inat-get-0.8.0.11 lib/inat/app/logging.rb