Sha256: f866684697be82f6c2d162070d4a528c0e4cea073fcc06ef0a776c7b68acc555

Contents?: true

Size: 1.35 KB

Versions: 11

Compression:

Stored size: 1.35 KB

Contents

# frozen_string_literal: true

module Karafka
  module Web
    module Processing
      module Consumers
        # Consumer tracking related contracts
        module Contracts
          # Contract used to validate the stats that are both present in state and metrics
          class AggregatedStats < Web::Contracts::Base
            configure

            required(:batches) { |val| val.is_a?(Integer) && val >= 0 }
            required(:messages) { |val| val.is_a?(Integer) && val >= 0 }
            required(:retries) { |val| val.is_a?(Integer) && val >= 0 }
            required(:dead) { |val| val.is_a?(Integer) && val >= 0 }
            required(:errors) { |val| val.is_a?(Integer) && val >= 0 }
            required(:busy) { |val| val.is_a?(Integer) && val >= 0 }
            required(:enqueued) { |val| val.is_a?(Integer) && val >= 0 }
            required(:workers) { |val| val.is_a?(Integer) && val >= 0 }
            required(:processes) { |val| val.is_a?(Integer) && val >= 0 }
            required(:rss) { |val| val.is_a?(Numeric) && val >= 0 }
            required(:listeners) { |val| val.is_a?(Integer) && val >= 0 }
            required(:utilization) { |val| val.is_a?(Numeric) && val >= 0 }
            required(:lag_stored) { |val| val.is_a?(Integer) }
            required(:lag) { |val| val.is_a?(Integer) }
          end
        end
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
karafka-web-0.7.10 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.9 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.8 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.7 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.6 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.5 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.4 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.3 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.2 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.1 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb
karafka-web-0.7.0 lib/karafka/web/processing/consumers/contracts/aggregated_stats.rb