diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 14:18:50 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-06-18 14:18:50 +0300 |
commit | 8c7f4e9d5f36cff46365a7f8c4b9c21578c1e781 (patch) | |
tree | a77e7fe7a93de11213032ed4ab1f33a3db51b738 /app/channels | |
parent | 00b35af3db1abfe813a778f643dad221aad51fca (diff) |
Add latest changes from gitlab-org/gitlab@13-1-stable-ee
Diffstat (limited to 'app/channels')
-rw-r--r-- | app/channels/application_cable/channel.rb | 11 | ||||
-rw-r--r-- | app/channels/application_cable/connection.rb | 8 | ||||
-rw-r--r-- | app/channels/application_cable/logging.rb | 17 |
3 files changed, 36 insertions, 0 deletions
diff --git a/app/channels/application_cable/channel.rb b/app/channels/application_cable/channel.rb index 9aec2305390..0de2b0185b5 100644 --- a/app/channels/application_cable/channel.rb +++ b/app/channels/application_cable/channel.rb @@ -2,5 +2,16 @@ module ApplicationCable class Channel < ActionCable::Channel::Base + include Logging + + private + + def notification_payload(_) + super.merge!(params: params.except(:channel)) + end + + def request + connection.request + end end end diff --git a/app/channels/application_cable/connection.rb b/app/channels/application_cable/connection.rb index 87c833f3593..1361269f2a2 100644 --- a/app/channels/application_cable/connection.rb +++ b/app/channels/application_cable/connection.rb @@ -2,8 +2,12 @@ module ApplicationCable class Connection < ActionCable::Connection::Base + include Logging + identified_by :current_user + public :request + def connect self.current_user = find_user_from_session_store end @@ -18,5 +22,9 @@ module ApplicationCable def session_id Rack::Session::SessionId.new(cookies[Gitlab::Application.config.session_options[:key]]) end + + def notification_payload(_) + super.merge!(params: request.params) + end end end diff --git a/app/channels/application_cable/logging.rb b/app/channels/application_cable/logging.rb new file mode 100644 index 00000000000..4152f8c779f --- /dev/null +++ b/app/channels/application_cable/logging.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +module ApplicationCable + module Logging + private + + def notification_payload(_) + super.merge!( + Labkit::Correlation::CorrelationId::LOG_KEY => request.request_id, + user_id: current_user&.id, + username: current_user&.username, + remote_ip: request.remote_ip, + ua: request.env['HTTP_USER_AGENT'] + ) + end + end +end |