module Metricize::SharedMethods

Public Instance Methods

establish_redis_connection() click to toggle source
# File lib/metricize/shared.rb, line 4
def establish_redis_connection
  log_message "metricize_version=#{VERSION} connecting to Redis at #{@queue_host}:#{@queue_port}", :info
  with_error_handling do
    @redis = Redis.connect(:host => @queue_host, :port => @queue_port)
    @redis.ping
  end
end

Private Instance Methods

establish_logger(options) click to toggle source
# File lib/metricize/shared.rb, line 21
def establish_logger(options)
  @logger = options[:logger] || Logger.new(STDOUT)
end
initialize_redis(options) click to toggle source
# File lib/metricize/shared.rb, line 14
def initialize_redis(options)
  @queue_host  = options[:queue_host] || '127.0.0.1'
  @queue_port  = options[:queue_port] || 6379
  @queue_name  = options[:queue_name] || 'metricize_queue'
  establish_redis_connection
end
log_message(message, level = :debug) click to toggle source
# File lib/metricize/shared.rb, line 25
def log_message(message, level = :debug)
  message = "[#{self.class} #{Process.pid}] " + message
  @logger.send(level.to_sym, message)
end
round(value, num_places) click to toggle source
# File lib/metricize/shared.rb, line 34
def round(value, num_places)
  factor = 10.0**num_places
  ((value * factor).round) / factor
end
time_delta_ms(start_time) click to toggle source
# File lib/metricize/shared.rb, line 30
def time_delta_ms(start_time)
  (((Time.now - start_time) * 100000.0).round) / 100.0
end
with_error_handling() { || ... } click to toggle source
# File lib/metricize/shared.rb, line 39
def with_error_handling
  yield
rescue StandardError => e
  log_message %Q(#{e.class}:#{e.message}\n#{e.backtrace.join("\n")}), :error
end