[fix #4529] Log user email in manager space
This commit is contained in:
parent
63b1b49a68
commit
dae7a3bfd0
3 changed files with 48 additions and 0 deletions
|
@ -141,6 +141,8 @@ class ApplicationController < ActionController::Base
|
||||||
Raven.user_context(sentry_user)
|
Raven.user_context(sentry_user)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# private method called by rails fwk
|
||||||
|
# see https://github.com/roidrage/lograge
|
||||||
def append_info_to_payload(payload)
|
def append_info_to_payload(payload)
|
||||||
super
|
super
|
||||||
|
|
||||||
|
|
|
@ -19,5 +19,29 @@ module Manager
|
||||||
redirect_to manager_sign_in_path
|
redirect_to manager_sign_in_path
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
# private method called by rails fwk
|
||||||
|
# see https://github.com/roidrage/lograge
|
||||||
|
def append_info_to_payload(payload)
|
||||||
|
super
|
||||||
|
|
||||||
|
payload.merge!({
|
||||||
|
user_agent: request.user_agent,
|
||||||
|
user_id: current_user&.id,
|
||||||
|
user_email: current_user&.email
|
||||||
|
}.compact)
|
||||||
|
|
||||||
|
if browser.known?
|
||||||
|
payload.merge!({
|
||||||
|
browser: browser.name,
|
||||||
|
browser_version: browser.version.to_s,
|
||||||
|
platform: browser.platform.name
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
payload
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
22
spec/controllers/manager/application_controller_spec.rb
Normal file
22
spec/controllers/manager/application_controller_spec.rb
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
describe Manager::ApplicationController, type: :controller do
|
||||||
|
describe 'append_info_to_payload' do
|
||||||
|
let(:current_user) { create(:administration) }
|
||||||
|
let(:payload) { {} }
|
||||||
|
|
||||||
|
before do
|
||||||
|
allow(@controller).to receive(:current_user).and_return(current_user)
|
||||||
|
@controller.send(:append_info_to_payload, payload)
|
||||||
|
end
|
||||||
|
|
||||||
|
it do
|
||||||
|
[:db_runtime, :view_runtime, :variant, :rendered_format].each do |key|
|
||||||
|
payload.delete(key)
|
||||||
|
end
|
||||||
|
expect(payload).to eq({
|
||||||
|
user_agent: 'Rails Testing',
|
||||||
|
user_id: current_user.id,
|
||||||
|
user_email: current_user.email
|
||||||
|
})
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in a new issue