DEV: reduce logging when no external id is specified

Previously we were returning an unknown sso error and logging a message
when external id was blank. This noise is not needed.
This commit is contained in:
Sam Saffron
2020-04-08 12:42:28 +10:00
parent 236833ed5d
commit 0375a5ac0b
4 changed files with 35 additions and 27 deletions

View File

@@ -385,3 +385,26 @@ def silence_stdout
ensure
STDOUT.unstub(:write)
end
class TrackingLogger < ::Logger
attr_reader :messages
def initialize(level: nil)
super(nil)
@messages = []
@level = level
end
def add(*args, &block)
if !level || args[0].to_i >= level
@messages << args
end
end
end
def track_log_messages(level: nil)
old_logger = Rails.logger
logger = Rails.logger = TrackingLogger.new(level: level)
yield logger.messages
logger.messages
ensure
Rails.logger = old_logger
end