Module: Labkit::ApplicationSli

Included in:
Apdex, ErrorRate
Defined in:
lib/labkit/application_sli.rb,
lib/labkit/application_sli/apdex.rb,
lib/labkit/application_sli/error_rate.rb

Defined Under Namespace

Modules: ClassMethods Classes: Apdex, ErrorRate

Constant Summary collapse

COUNTER_PREFIX =
'gitlab_sli'

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



39
40
41
# File 'lib/labkit/application_sli.rb', line 39

def name
  @name
end

Class Method Details

.included(mod) ⇒ Object



35
36
37
# File 'lib/labkit/application_sli.rb', line 35

def self.included(mod)
  mod.extend(ClassMethods)
end

Instance Method Details

#increment(labels:, increment_numerator:) ⇒ Object



54
55
56
57
# File 'lib/labkit/application_sli.rb', line 54

def increment(labels:, increment_numerator:)
  total_counter.increment(labels)
  numerator_counter.increment(labels) if increment_numerator
end

#initialize(name) ⇒ Object



41
42
43
44
# File 'lib/labkit/application_sli.rb', line 41

def initialize(name)
  @name = name
  @initialized_with_combinations = false
end

#initialize_counters(possible_label_combinations) ⇒ Object



46
47
48
49
50
51
52
# File 'lib/labkit/application_sli.rb', line 46

def initialize_counters(possible_label_combinations)
  @initialized_with_combinations = possible_label_combinations.any?
  possible_label_combinations.each do |label_combination|
    total_counter.get(label_combination)
    numerator_counter.get(label_combination)
  end
end

#initialized?Boolean

Returns:

  • (Boolean)


59
60
61
# File 'lib/labkit/application_sli.rb', line 59

def initialized?
  @initialized_with_combinations
end