class DogWatch::Monitor
Provides a container around each monitor block
Attributes
client[R]
config[RW]
responses[R]
Public Class Methods
new(name = nil, &block)
click to toggle source
@param [String] name @param [Proc] block @return [DogWatch::Model::Monitor]
# File lib/dogwatch/monitor.rb, line 16 def initialize(name = nil, &block) @name = name @monitors = [] @config = nil instance_exec(&block) end
Public Instance Methods
get()
click to toggle source
@return [Array]
# File lib/dogwatch/monitor.rb, line 33 def get @responses = @monitors.map do |m| validate = @client.validate(m) if validate.status == :error validate else @client.execute(m) end end end
monitor(name, &block)
click to toggle source
@param [String] name @param [Proc] block @return [Array]
# File lib/dogwatch/monitor.rb, line 26 def monitor(name, &block) monitor = DogWatch::Model::Monitor.new(name) monitor.instance_eval(&block) @monitors << monitor end