aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorKazuki Yamaguchi <k@rhe.jp>2015-04-18 20:07:27 +0900
committerKazuki Yamaguchi <k@rhe.jp>2015-04-18 20:07:27 +0900
commita0e537fe0b1c0871594233974e52181e270811f7 (patch)
tree95bdb21cddb057d037efd53817a143da74f1107e /lib
parent7e5e12ef98bdf774af2733346fdbc3bca0739585 (diff)
downloadaclog-a0e537fe0b1c0871594233974e52181e270811f7.tar.gz
web/collector: fix WorkerManager.status
Diffstat (limited to 'lib')
-rw-r--r--lib/collector/control_server.rb17
-rw-r--r--lib/collector/node_manager.rb19
2 files changed, 15 insertions, 21 deletions
diff --git a/lib/collector/control_server.rb b/lib/collector/control_server.rb
index 3889817..904cd97 100644
--- a/lib/collector/control_server.rb
+++ b/lib/collector/control_server.rb
@@ -1,28 +1,27 @@
module Collector
class ControlServer
- def register_account(account)
- NodeManager.register_account(Marshal.load(account))
+ def register_account(account_id)
+ NodeManager.register_account(Account.find(account_id))
end
- def deactivate_account(account)
- NodeManager.unregister_account(Marshal.load(account))
+ def deactivate_account(account_id)
+ NodeManager.unregister_account(Account.find(account_id))
end
def status
active_node_statuses = Settings.collector.nodes_count.times.map do |number|
node = NodeManager.active_connections[number]
if node
- { activated_time: node.activated_time,
+ { activated_time: node.activated_time.to_i,
connection_id: node.connection_id }
else
nil
end
end
- res = { start_time: Daemon.start_time,
- active_node_statuses: active_node_statuses,
- inactive_nodes_count: NodeManager.inactive_connections.size }
- Marshal.dump(res)
+ { start_time: Daemon.start_time.to_i,
+ active_node_statuses: active_node_statuses,
+ inactive_nodes_count: NodeManager.inactive_connections.size }
end
end
end
diff --git a/lib/collector/node_manager.rb b/lib/collector/node_manager.rb
index 4c308af..e58433e 100644
--- a/lib/collector/node_manager.rb
+++ b/lib/collector/node_manager.rb
@@ -15,8 +15,7 @@ module Collector
def unregister(node_connection)
self.node_connections.delete(node_connection)
- i = self.active_connections.find_index(node_connection)
- if i
+ if i = self.active_connections.find_index(node_connection)
self.active_connections[i] = nil
else
self.inactive_connections.delete(node_connection)
@@ -25,25 +24,21 @@ module Collector
end
def register_account(account)
- n = account.id % Settings.collector.nodes_count
- if self.active_connections[n]
- self.active_connections[n].register_account(account)
+ if con = self.active_connections[account.worker_number]
+ con.register_account(account)
end
end
def unregister_account(account)
- n = account.id % Settings.collector.nodes_count
- if self.active_connections[n]
- self.active_connections[n].unregister_account(account)
+ if con = self.active_connections[account.worker_number]
+ con.unregister_account(account)
end
end
private
def bind
- first_inactive_id = self.active_connections.find_index(nil)
- if first_inactive_id
- con = self.inactive_connections.shift
- if con
+ if first_inactive_id = self.active_connections.find_index(nil)
+ if con = self.inactive_connections.shift
self.active_connections[first_inactive_id] = con
con.activated_time = Time.now
Rails.logger.warn("NodeManager") { "Registered node ##{con.connection_id} as group ##{first_inactive_id}" }