Sha256: 2d03f6da8286db2beb81309527402d1cc447ed5ef0ee7a816d038a8fe271836f

Contents?: true

Size: 869 Bytes

Versions: 2

Compression:

Stored size: 869 Bytes

Contents

module Watchmen
	
	def self.test
		@watchmen.each do |cmd|
			puts "Running #{cmd.name}:"
			puts cmd.data
			puts "Done."
		end
	end
	
	def self.data
		@watchmen.inject({}) do |acc,watchman|
			if !CityWatch.config[:watchmen] || CityWatch.config[:watchmen][watchman.name.to_sym]
				acc[watchman.name] = watchman.data
			end
			acc
		end
	end
	
	def self.register(cls)
		@watchmen ||= []
		@watchmen << cls
	end
	
	def self.get(name)
		@watchmen.select {|w| w.name.to_s == name.to_s }.first
	end
	
	def self.each
		@watchmen.each do |w|
			yield w
		end
	end
	
end

require 'city_watch/util/watchman'
require 'city_watch/watchmen/sysinfo'
require 'city_watch/watchmen/unicorns'
require 'city_watch/watchmen/nginx'
require 'city_watch/watchmen/cpu_usage'
require 'city_watch/watchmen/disk_usage'
require 'city_watch/watchmen/uptime'
require 'city_watch/watchmen/redis'

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
city-watch-0.7.4 lib/city_watch/watchmen.rb
city-watch-0.7.3 lib/city_watch/watchmen.rb