Sha256: fbe563a747d4eb2c286ff5bf0e27ecfae4f7d62bd8ddb8aba7f280510c13a56e

Contents?: true

Size: 1.04 KB

Versions: 12

Compression:

Stored size: 1.04 KB

Contents

require 'lumberjack'

module Forklift
  module Base
    class Logger

      def initialize(forklift)
        @forklift = forklift
      end

      def forklift
        @forklift
      end

      def messages
        @messages ||= []
      end

      def logger
        log_dir = "#{forklift.config[:project_root]}/log"
        @logger ||= ::Lumberjack::Logger.new("#{log_dir}/forklift.log", :buffer_size => 0)
      end

      def log(message, severity="info")
        timed_message = "[Forklift @ #{Time.now}] #{message}"
        puts timed_message unless forklift.config[:logger][:stdout] != true
        logger.send(severity.to_sym, message) unless logger.nil?
        messages << timed_message
      end

      def debug(message)
        if forklift.config[:logger][:debug] == true
          log("[debug] #{message}")
        end
      end

      def emphatically(message)
        log "" if message.length > 0
        log "*** #{message} ***"
        log ""
      end

      def fatal(message)
        log "!!! #{message} !!!"
      end

    end
    end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
forklift_etl-1.1.0 lib/forklift/base/logger.rb
forklift_etl-1.0.19 lib/forklift/base/logger.rb
forklift_etl-1.0.18 lib/forklift/base/logger.rb
forklift_etl-1.0.17 lib/forklift/base/logger.rb
forklift_etl-1.0.16 lib/forklift/base/logger.rb
forklift_etl-1.0.15 lib/forklift/base/logger.rb
forklift_etl-1.0.14 lib/forklift/base/logger.rb
forklift_etl-1.0.12 lib/forklift/base/logger.rb
forklift_etl-1.0.11 lib/forklift/base/logger.rb
forklift_etl-1.0.10 lib/forklift/base/logger.rb
forklift_etl-1.0.9 lib/forklift/base/logger.rb
forklift_etl-1.0.8 lib/forklift/base/logger.rb