Class: StatsD::Instrument::DatagramBuilder
- Inherits:
-
Object
- Object
- StatsD::Instrument::DatagramBuilder
show all
- Defined in:
- lib/statsd/instrument/datagram_builder.rb
Overview
Note:
This class is part of the new Client implementation that is intended
to become the new default in the next major release of this library.
Class Method Summary
collapse
Instance Method Summary
collapse
-
#c(name, value, sample_rate, tags) ⇒ Object
-
#d(name, value, sample_rate, tags) ⇒ Object
-
#g(name, value, sample_rate, tags) ⇒ Object
-
#h(name, value, sample_rate, tags) ⇒ Object
-
#initialize(prefix: nil, default_tags: nil) ⇒ DatagramBuilder
constructor
A new instance of DatagramBuilder.
-
#kv(name, value, sample_rate, tags) ⇒ Object
-
#latency_metric_type ⇒ Object
-
#ms(name, value, sample_rate, tags) ⇒ Object
-
#s(name, value, sample_rate, tags) ⇒ Object
Constructor Details
#initialize(prefix: nil, default_tags: nil) ⇒ DatagramBuilder
Returns a new instance of DatagramBuilder.
20
21
22
23
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 20
def initialize(prefix: nil, default_tags: nil)
@prefix = prefix.nil? ? "" : "#{normalize_name(prefix)}."
@default_tags = normalize_tags(default_tags)
end
|
Class Method Details
.datagram_class ⇒ Object
16
17
18
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 16
def self.datagram_class
StatsD::Instrument::Datagram
end
|
.unsupported_datagram_types(*types) ⇒ Object
8
9
10
11
12
13
14
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 8
def self.unsupported_datagram_types(*types)
types.each do |type|
define_method(type) do |_, _, _, _|
raise NotImplementedError, "Type #{type} metrics are not supported by #{self.class.name}."
end
end
end
|
Instance Method Details
#c(name, value, sample_rate, tags) ⇒ Object
25
26
27
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 25
def c(name, value, sample_rate, tags)
generate_generic_datagram(name, value, "c", sample_rate, tags)
end
|
#d(name, value, sample_rate, tags) ⇒ Object
45
46
47
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 45
def d(name, value, sample_rate, tags)
generate_generic_datagram(name, value, "d", sample_rate, tags)
end
|
#g(name, value, sample_rate, tags) ⇒ Object
29
30
31
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 29
def g(name, value, sample_rate, tags)
generate_generic_datagram(name, value, "g", sample_rate, tags)
end
|
#h(name, value, sample_rate, tags) ⇒ Object
41
42
43
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 41
def h(name, value, sample_rate, tags)
generate_generic_datagram(name, value, "h", sample_rate, tags)
end
|
#kv(name, value, sample_rate, tags) ⇒ Object
49
50
51
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 49
def kv(name, value, sample_rate, tags)
generate_generic_datagram(name, value, "kv", sample_rate, tags)
end
|
#latency_metric_type ⇒ Object
53
54
55
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 53
def latency_metric_type
:ms
end
|
#ms(name, value, sample_rate, tags) ⇒ Object
33
34
35
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 33
def ms(name, value, sample_rate, tags)
generate_generic_datagram(name, value, "ms", sample_rate, tags)
end
|
#s(name, value, sample_rate, tags) ⇒ Object
37
38
39
|
# File 'lib/statsd/instrument/datagram_builder.rb', line 37
def s(name, value, sample_rate, tags)
generate_generic_datagram(name, value, "s", sample_rate, tags)
end
|