From c05868e7f1234d750f3039613d18331a8e8bc85e Mon Sep 17 00:00:00 2001 From: evazion Date: Mon, 11 Jan 2021 21:42:54 -0600 Subject: [PATCH] users: log restricted signups to NewRelic. When a new user creates an account and their account is automatically restricted, log the reason why to NewRelic. --- app/controllers/users_controller.rb | 1 + app/logical/user_verifier.rb | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 448f46c6f..1ee303cbb 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -70,6 +70,7 @@ class UsersController < ApplicationController password_confirmation: params[:user][:password_confirmation] ) + user_verifier.log! if user_verifier.requires_verification? UserEvent.build_from_request(@user, :user_creation, request) if params[:user][:email].present? diff --git a/app/logical/user_verifier.rb b/app/logical/user_verifier.rb index 0e17e8446..fdc7965e0 100644 --- a/app/logical/user_verifier.rb +++ b/app/logical/user_verifier.rb @@ -26,6 +26,10 @@ class UserVerifier end end + def log! + DanbooruLogger.add_attributes("user_verifier", to_h) + end + private def ip_address @@ -55,5 +59,9 @@ class UserVerifier IpLookup.new(ip_address).is_proxy? end + def to_h + { is_ip_banned: is_ip_banned?, is_logged_in: is_logged_in?, is_recent_signup: is_recent_signup?, is_proxy: is_proxy? } + end + memoize :is_ip_banned?, :is_proxy?, :is_recent_signup? end