diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2016-01-22 10:46:29 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2016-01-22 10:46:29 +0900 |
commit | 91a306d97c3ca8cdbfa79eb4791af3ab3f6f6a2a (patch) | |
tree | 1ca728b66ba37270c9118c0c9c680070e095a75b | |
parent | db1cc70d823fc2f1c0689ce3f1eebba83b284f58 (diff) | |
download | aclog-91a306d97c3ca8cdbfa79eb4791af3ab3f6f6a2a.tar.gz |
collector: send accounts with :avtivate event
-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 |