Sha256: 68024a77b057f27555bb31c2686594b38780d0dbab151ac6269c1861a7bd261f

Contents?: true

Size: 699 Bytes

Versions: 16

Compression:

Stored size: 699 Bytes

Contents

module Faye
  module Logging

    LOG_LEVELS = {
      :fatal  => 4,
      :error  => 3,
      :warn   => 2,
      :info   => 1,
      :debug  => 0
    }

    LOG_LEVELS.each do |level, value|
      define_method(level) { |*args| write_log(args, level) }
    end

  private

    def write_log(message_args, level)
      return unless Faye.logger

      message = message_args.shift.gsub(/\?/) do
        Faye.to_json(message_args.shift)
      end

      banner = "[#{ self.class.name }] "

      if Faye.logger.respond_to?(level)
        Faye.logger.__send__(level, banner + message)
      elsif Faye.logger.respond_to?(:call)
        Faye.logger.call(banner + message)
      end
    end

  end
end

Version data entries

16 entries across 16 versions & 3 rubygems

Version Path
faye-1.4.0 lib/faye/mixins/logging.rb
faye-1.3.0 lib/faye/mixins/logging.rb
faye-1.2.5 lib/faye/mixins/logging.rb
faye-1.1.3 lib/faye/mixins/logging.rb
faye-1.2.4 lib/faye/mixins/logging.rb
faye-1.2.3 lib/faye/mixins/logging.rb
faye-1.2.2 lib/faye/mixins/logging.rb
faye-1.2.1 lib/faye/mixins/logging.rb
faye-1.2.0 lib/faye/mixins/logging.rb
faye-ouvrages-1.1.2.1 lib/faye/mixins/logging.rb
faye-ouvrages-1.1.2 lib/faye/mixins/logging.rb
faye-1.1.2 lib/faye/mixins/logging.rb
faye-1.1.1 lib/faye/mixins/logging.rb
faye-1.1.0 lib/faye/mixins/logging.rb
faye-huboard-1.0.5 lib/faye/mixins/logging.rb
faye-huboard-1.0.4 lib/faye/mixins/logging.rb