Sha256: b18d921a49ee54a8e1ad7d87ad48640d192b7b42d9c5ab74284c617d63abb6aa

Contents?: true

Size: 668 Bytes

Versions: 5

Compression:

Stored size: 668 Bytes

Contents

module Alblogs
  class RequestMatcher
    attr_reader :range

    def initialize(options)
      @range = options[:start_time]..options[:end_time]
      @exclude_filter = options[:exclude_filter]
      @include_filter = options[:include_filter]
      @request_times_over = options[:request_times_over]
    end

    def match?(entry)
      return false unless @range.cover?(entry.timestamp)
      return false if @include_filter && ! @include_filter.match?(entry.line)
      return false if @exclude_filter && @exclude_filter.match?(entry.line)
      return false if @request_times_over && @request_times_over > entry.target_processing_time
      true
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
alblogs-0.1.8 lib/alblogs/request_matcher.rb
alblogs-0.1.7 lib/alblogs/request_matcher.rb
alblogs-0.1.4 lib/alblogs/request_matcher.rb
alblogs-0.1.2 lib/alblogs/request_matcher.rb
alblogs-0.1.0 lib/alblogs/request_matcher.rb