Sha256: e97a6d6c72b0af113818ca3a5689c89bee20f7cbf40ad07bf7bff9665955ee5f

Contents?: true

Size: 786 Bytes

Versions: 1

Compression:

Stored size: 786 Bytes

Contents

require_relative "environment"
require_relative "parser"
require_relative "config"

module StatsWhisper

  module Caller

    include Parser
    include Config

    def gather_stats(env, response_time)

      if timing_allowed?(env["REQUEST_PATH"])
        StatsWhisper.backend.timing(build_key(app_name, 'http', env["REQUEST_METHOD"],
                                              parse(env["REQUEST_PATH"]),
                                              'response_time'),
                                    response_time)
      end
      StatsWhisper.backend.increment(build_key(app_name, 'http', 'visits'))
    end

    def timing_allowed?(request_path)
      whitelist.empty? || whitelist.any? do |pattern|
        Regexp.new(pattern) =~ request_path
      end

    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
stats_whisper-0.2.2.1 lib/stats_whisper/caller.rb