Class: Prometheus::Collector::Extensions::Base
- Inherits:
-
Object
- Object
- Prometheus::Collector::Extensions::Base
- Defined in:
- lib/prometheus/collector/extensions.rb
Direct Known Subclasses
Class Attribute Summary collapse
Class Method Summary collapse
Instance Method Summary collapse
Class Attribute Details
.logger ⇒ Object
15 16 17 |
# File 'lib/prometheus/collector/extensions.rb', line 15 def logger @logger ||= Prometheus::Collector.logger end |
.schedule ⇒ Object
19 20 21 |
# File 'lib/prometheus/collector/extensions.rb', line 19 def schedule @schedule ||= '* * * * *' end |
Class Method Details
.install ⇒ Object
23 24 25 26 |
# File 'lib/prometheus/collector/extensions.rb', line 23 def install logger.info "Install #{name.to_sym}" Prometheus::Collector::Extensions::Runnable.register name.to_sym, new end |
Instance Method Details
#call ⇒ Object
33 34 35 36 |
# File 'lib/prometheus/collector/extensions.rb', line 33 def call log 'Starting call' run end |
#callback ⇒ Object
42 43 44 |
# File 'lib/prometheus/collector/extensions.rb', line 42 def callback proc { log 'Finished call' } end |
#errback ⇒ Object
46 47 48 49 50 51 52 53 54 |
# File 'lib/prometheus/collector/extensions.rb', line 46 def errback proc do |error| log "Exception in call: '#{error}'", level: :error log 'Backtrace:', level: :debug error.backtrace.each do |l| log l, level: :debug end end end |
#log(msg, level: :info) ⇒ Object
29 30 31 |
# File 'lib/prometheus/collector/extensions.rb', line 29 def log(msg, level: :info) self.class.logger.send(level, self.class) { msg } if self.class.logger end |
#run ⇒ Object
38 39 40 |
# File 'lib/prometheus/collector/extensions.rb', line 38 def run raise 'Not Implemented - please implement a run function' end |