diff options
-rw-r--r-- | collector/daemon.rb | 2 | ||||
-rw-r--r-- | collector/node_connection.rb | 22 |
2 files changed, 13 insertions, 11 deletions
diff --git a/collector/daemon.rb b/collector/daemon.rb index 432ac20..a978952 100644 --- a/collector/daemon.rb +++ b/collector/daemon.rb @@ -15,7 +15,7 @@ module Collector EM.run do sock_path = File.join(Rails.root, "tmp", "sockets", "collector.sock") - File.delete(sock_path) if File.exists?(sock_path) + File.delete(sock_path) if File.exist?(sock_path) control = MessagePack::RPC::Server.new control.listen(MessagePack::RPC::UNIXServerTransport.new(sock_path), Collector::ControlServer.new) EM.defer { control.run } diff --git a/collector/node_connection.rb b/collector/node_connection.rb index 511af2a..5b4f254 100644 --- a/collector/node_connection.rb +++ b/collector/node_connection.rb @@ -41,12 +41,7 @@ module Collector def register_account(account) send_message(event: :register, - data: { id: account.id, - consumer_key: Settings.consumer.key, - consumer_secret: Settings.consumer.secret, - oauth_token: account.oauth_token, - oauth_token_secret: account.oauth_token_secret, - user_id: account.user_id }) + data: account_data(account)) log(:info, "Registered account ##{account.id}/#{account.user_id}") end @@ -59,11 +54,9 @@ module Collector def activate(block_number) @activated_at = Time.now + accs = Account.active.where("id % ? = ?", Settings.collector.nodes_count, block_number) send_message(event: :activate, - data: { users: [] }) - Account.active.where("id % ? = ?", Settings.collector.nodes_count, block_number).each do |a| - register_account(a) - end + data: { accounts: accs.map(&method(:account_data)) }) end private @@ -149,6 +142,15 @@ module Collector send_message(event: :heartbeat, data: id) end + def account_data(account) + { id: account.id, + consumer_key: Settings.consumer.key, + consumer_secret: Settings.consumer.secret, + oauth_token: account.oauth_token, + oauth_token_secret: account.oauth_token_secret, + user_id: account.user_id } + end + def log(level, message) Rails.logger.__send__(level, "Node(#{@connection_id})") { message } end |