Class: GovukSidekiq::APIHeaders::ServerMiddleware
- Inherits:
-
Object
- Object
- GovukSidekiq::APIHeaders::ServerMiddleware
- Defined in:
- lib/govuk_sidekiq/api_headers.rb
Overview
Server-side middleware runs ‘around’ job processing.
github.com/mperham/sidekiq/wiki/Middleware#server-side-middleware
Instance Method Summary collapse
Instance Method Details
#call(_worker, message, _queue) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/govuk_sidekiq/api_headers.rb', line 38 def call(_worker, , _queue) last_arg = ["args"].last if last_arg.is_a?(Hash) && last_arg.keys.include?("request_id") ["args"].pop request_id = last_arg["request_id"] authenticated_user = last_arg["authenticated_user"] GdsApi::GovukHeaders.set_header(:govuk_request_id, request_id) GdsApi::GovukHeaders.set_header(:x_govuk_authenticated_user, authenticated_user) Sidekiq::Context.add("govuk_request_id", request_id) end yield end |