newrelic: log country of each request in newrelic.
Log the country of each HTTP request in NewRelic. Uses the CF-IPCountry header set by Cloudflare.
This commit is contained in:
@@ -24,7 +24,14 @@ class DanbooruLogger
|
||||
def self.add_session_attributes(request, session, user)
|
||||
request_params = request.parameters.with_indifferent_access.except(:controller, :action)
|
||||
session_params = session.to_h.with_indifferent_access.slice(:session_id, :started_at)
|
||||
user_params = { id: user&.id, name: user&.name, level: user&.level_string, ip: request.remote_ip, safe_mode: CurrentUser.safe_mode? }
|
||||
user_params = {
|
||||
id: user&.id,
|
||||
name: user&.name,
|
||||
level: user&.level_string,
|
||||
ip: request.remote_ip,
|
||||
country: request.headers["CF-IPCountry"],
|
||||
safe_mode: CurrentUser.safe_mode?
|
||||
}
|
||||
|
||||
add_attributes("request.params", request_params)
|
||||
add_attributes("session.params", session_params)
|
||||
|
||||
@@ -10,6 +10,7 @@ class SessionLoaderTest < ActiveSupport::TestCase
|
||||
@request.stubs(:cookie_jar).returns({})
|
||||
@request.stubs(:parameters).returns({})
|
||||
@request.stubs(:session).returns({})
|
||||
@request.stubs(:headers).returns({})
|
||||
SessionLoader.any_instance.stubs(:initialize_session_cookies)
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user