Class: Yabeda::Group
- Inherits:
-
Object
- Object
- Yabeda::Group
- Extended by:
- Dry::Initializer
- Defined in:
- lib/yabeda/group.rb
Overview
Represents a set of metrics grouped under the same name
Direct Known Subclasses
Instance Attribute Summary collapse
-
#name ⇒ Object
readonly
Reader method for the
nameinitializer parameter.
Instance Method Summary collapse
- #adapter(*adapter_names) ⇒ Object
- #default_tag(key, value) ⇒ Object
- #default_tags ⇒ Object
- #except(*metric_names) ⇒ Object
- #initialize(name) ⇒ Object constructor
- #only(*metric_names) ⇒ Object
- #register_metric(metric) ⇒ Object
Constructor Details
#initialize(name) ⇒ Object
Instance Attribute Details
#name ⇒ Object (readonly)
Reader method for the name initializer parameter.
10 |
# File 'lib/yabeda/group.rb', line 10 param :name |
Instance Method Details
#adapter(*adapter_names) ⇒ Object
22 23 24 25 26 27 |
# File 'lib/yabeda/group.rb', line 22 def adapter(*adapter_names) return @adapter if adapter_names.empty? @adapter ||= Concurrent::Array.new @adapter.push(*adapter_names) end |
#default_tag(key, value) ⇒ Object
17 18 19 20 |
# File 'lib/yabeda/group.rb', line 17 def default_tag(key, value) @default_tags ||= Concurrent::Hash.new @default_tags[key] = value end |
#default_tags ⇒ Object
12 13 14 15 |
# File 'lib/yabeda/group.rb', line 12 def @default_tags ||= Concurrent::Hash.new ::Yabeda..merge(@default_tags) end |
#except(*metric_names) ⇒ Object
36 37 38 39 40 41 |
# File 'lib/yabeda/group.rb', line 36 def except(*metric_names) return @except_list if metric_names.empty? @except_list ||= Concurrent::Array.new @except_list.push(*metric_names.map(&:to_sym)) end |
#only(*metric_names) ⇒ Object
29 30 31 32 33 34 |
# File 'lib/yabeda/group.rb', line 29 def only(*metric_names) return @only_list if metric_names.empty? @only_list ||= Concurrent::Array.new @only_list.push(*metric_names.map(&:to_sym)) end |
#register_metric(metric) ⇒ Object
43 44 45 |
# File 'lib/yabeda/group.rb', line 43 def register_metric(metric) define_singleton_method(metric.name) { metric } end |