Class: Tnw::Metrics::ReplayGuard

Inherits:
Object
  • Object
show all
Defined in:
lib/tnw/metrics/replay_guard.rb

Class Method Summary collapse

Class Method Details

.verify!(server:, sample_uid:) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
# File 'lib/tnw/metrics/replay_guard.rb', line 4

def self.verify!(server:, sample_uid:)
  if sample_uid.blank?
    raise IngestionError.new(:missing_sample_uid, "Metric sample id is missing")
  end

  if server.metric_samples.exists?(sample_uid: sample_uid)
    raise IngestionError.new(:replayed_sample, "Metric sample has already been accepted")
  end

  true
end