Class: Unicorns

Inherits:
Object
  • Object
show all
Includes:
Watchman
Defined in:
lib/city_watch/watchmen/unicorns.rb

Class Method Summary collapse

Methods included from Watchman

#data, included

Class Method Details

.dataObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/city_watch/watchmen/unicorns.rb', line 5

def self.data
	out = PS.data.inject({:masters => [], :workers => [], :master_memory => 0, :worker_memory => 0, :total_memory => 0}) do |acc,line|
		if line[:command][/^start master/]
			acc[:masters] << line
			acc[:master_memory] += line[:rss].to_i
			acc[:total_memory] += line[:rss].to_i
		end
		if line[:command][/^start worker/]
			acc[:workers] << line
			acc[:worker_memory] += line[:rss].to_i
			acc[:total_memory] += line[:rss].to_i
		end
		acc
	end
	out.merge({:num_masters => out[:masters].count, :num_workers => out[:workers].count, :summary => [:num_masters, :num_workers]})
end