From 2c4ef1f20641b903fc30145d7c11f716a3a67a6c Mon Sep 17 00:00:00 2001 From: Richard Frank Date: Tue, 8 Mar 2016 18:55:27 -0700 Subject: [PATCH 1/5] Puts out unsubs and disconnects --- config.ru | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/config.ru b/config.ru index 6fe1a68..2fd4959 100644 --- a/config.ru +++ b/config.ru @@ -27,7 +27,17 @@ options = { } Faye::WebSocket.load_adapter('thin') -run Faye::RackAdapter.new(options) +client = Faye::RackAdapter.new(options) + +client.on(:unsubscribe) do |client_id| + STDOUT.puts "#{client_id} unsubscribed" +end + +client.on(:disconnect) do |client_id| + STDOUT.puts "#{client_id} disconnected" +end + +run client require 'logger' Faye.logger = Logger.new(STDOUT) From 393ecea832ef92df609629f35ace950437a55284 Mon Sep 17 00:00:00 2001 From: Richard Frank Date: Tue, 8 Mar 2016 19:14:56 -0700 Subject: [PATCH 2/5] bumps log level --- config.ru | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/config.ru b/config.ru index 2fd4959..a8f85a5 100644 --- a/config.ru +++ b/config.ru @@ -28,17 +28,8 @@ options = { Faye::WebSocket.load_adapter('thin') client = Faye::RackAdapter.new(options) - -client.on(:unsubscribe) do |client_id| - STDOUT.puts "#{client_id} unsubscribed" -end - -client.on(:disconnect) do |client_id| - STDOUT.puts "#{client_id} disconnected" -end - run client require 'logger' Faye.logger = Logger.new(STDOUT) -Faye.logger.level = Logger::INFO +Faye.logger.level = Logger::FATAL From 9db35a8bd0c73b5292434ee80560dfccc82bde43 Mon Sep 17 00:00:00 2001 From: Richard Frank Date: Tue, 8 Mar 2016 19:41:31 -0700 Subject: [PATCH 3/5] Adds logging to private Faye --- config.ru | 8 ++++---- lib/private_faye.rb | 3 +++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/config.ru b/config.ru index a8f85a5..9fd6458 100644 --- a/config.ru +++ b/config.ru @@ -13,6 +13,10 @@ module PrivatePub end PrivatePub.set_config secret_token: ENV['SECRET_KEY'] +require 'logger' +Faye.logger = Logger.new(STDOUT) +Faye.logger.level = Logger::INFO + require './lib/private_faye' options = { @@ -29,7 +33,3 @@ options = { Faye::WebSocket.load_adapter('thin') client = Faye::RackAdapter.new(options) run client - -require 'logger' -Faye.logger = Logger.new(STDOUT) -Faye.logger.level = Logger::FATAL diff --git a/lib/private_faye.rb b/lib/private_faye.rb index b726f6d..9ab5ed4 100644 --- a/lib/private_faye.rb +++ b/lib/private_faye.rb @@ -17,8 +17,10 @@ def authenticate_subscribe(message) subscription = PrivatePub.subscription(:channel => message["subscription"], :timestamp => message["ext"]["private_pub_timestamp"]) if message["ext"]["private_pub_signature"] != subscription[:signature] message["error"] = "Incorrect signature." + Faye.logger.info message["error"] elsif PrivatePub.signature_expired? message["ext"]["private_pub_timestamp"].to_i message["error"] = "Signature has expired." + Faye.logger.info message["error"] end end def authenticate_publish(message) @@ -31,6 +33,7 @@ def authenticate_publish(message) raise Error, "No secret_token config set, ensure private_pub.yml is loaded properly." elsif message["ext"]["private_pub_token"] != PrivatePub.config[:secret_token] message["error"] = "Incorrect token." + Faye.logger.info message["error"] else message["ext"]["private_pub_token"] = nil end From 7fb494973d18ba7a0e8c73f810bc30fad0df79e5 Mon Sep 17 00:00:00 2001 From: Richard Frank Date: Tue, 8 Mar 2016 19:45:47 -0700 Subject: [PATCH 4/5] Adds additional logging --- lib/private_faye.rb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/private_faye.rb b/lib/private_faye.rb index 9ab5ed4..d56650a 100644 --- a/lib/private_faye.rb +++ b/lib/private_faye.rb @@ -9,6 +9,9 @@ def incoming(message, callback) end def authenticate_subscribe(message) + Faye.logger.info("Setting up authenticated subscription for:") + Faye.logger.info(message) + if message["ext"].nil? message["error"] = "Extension data is missing" return message From c580ae5d0fc9b975fbb0e195acdcb6749cf946e8 Mon Sep 17 00:00:00 2001 From: Richard Frank Date: Tue, 8 Mar 2016 19:54:04 -0700 Subject: [PATCH 5/5] Adds readability to logs, settles on info on disconnects only (no unsub messages) --- config.ru | 4 ++++ lib/private_faye.rb | 6 +++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/config.ru b/config.ru index 9fd6458..516d985 100644 --- a/config.ru +++ b/config.ru @@ -32,4 +32,8 @@ options = { Faye::WebSocket.load_adapter('thin') client = Faye::RackAdapter.new(options) + +client.on(:disconnect) do |client_id| + Faye.logger.info "#{client_id} has been disconnected" +end run client diff --git a/lib/private_faye.rb b/lib/private_faye.rb index d56650a..2e0036f 100644 --- a/lib/private_faye.rb +++ b/lib/private_faye.rb @@ -9,8 +9,9 @@ def incoming(message, callback) end def authenticate_subscribe(message) - Faye.logger.info("Setting up authenticated subscription for:") + Faye.logger.info("!!! Attempting authenticated subscription for:") Faye.logger.info(message) + Faye.logger.info("!!!") if message["ext"].nil? message["error"] = "Extension data is missing" @@ -20,9 +21,11 @@ def authenticate_subscribe(message) subscription = PrivatePub.subscription(:channel => message["subscription"], :timestamp => message["ext"]["private_pub_timestamp"]) if message["ext"]["private_pub_signature"] != subscription[:signature] message["error"] = "Incorrect signature." + Faye.logger.info "WARNING!!!" Faye.logger.info message["error"] elsif PrivatePub.signature_expired? message["ext"]["private_pub_timestamp"].to_i message["error"] = "Signature has expired." + Faye.logger.info "WARNING!!!" Faye.logger.info message["error"] end end @@ -36,6 +39,7 @@ def authenticate_publish(message) raise Error, "No secret_token config set, ensure private_pub.yml is loaded properly." elsif message["ext"]["private_pub_token"] != PrivatePub.config[:secret_token] message["error"] = "Incorrect token." + Faye.logger.info "WARNING!!!" Faye.logger.info message["error"] else message["ext"]["private_pub_token"] = nil