From 8c7f4e9d5f36cff46365a7f8c4b9c21578c1e781 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 18 Jun 2020 11:18:50 +0000 Subject: Add latest changes from gitlab-org/gitlab@13-1-stable-ee --- app/channels/application_cable/channel.rb | 11 +++++++++++ app/channels/application_cable/connection.rb | 8 ++++++++ app/channels/application_cable/logging.rb | 17 +++++++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 app/channels/application_cable/logging.rb (limited to 'app/channels') 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 -- cgit v1.2.3