X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/0561bd0c3c07257fd58ded6c7cfa5feeae97af57..36ccf5e18984c80f3903c08fec59e064fbbf4be9:/apps/workbench/config/initializers/lograge.rb diff --git a/apps/workbench/config/initializers/lograge.rb b/apps/workbench/config/initializers/lograge.rb index 321bd037f9..6e7f165c13 100644 --- a/apps/workbench/config/initializers/lograge.rb +++ b/apps/workbench/config/initializers/lograge.rb @@ -6,15 +6,20 @@ ArvadosWorkbench::Application.configure do config.lograge.enabled = true config.lograge.formatter = Lograge::Formatters::Logstash.new config.lograge.custom_options = lambda do |event| + payload = { + request_id: event.payload[:request_id], + } + # Also log params (minus the pseudo-params added by Rails). But if + # params is huge, don't log the whole thing, just hope we get the + # most useful bits in truncate(json(params)). exceptions = %w(controller action format id) - params = {current_request_id: Thread.current[:current_request_id]}. - merge(event.payload[:params].except(*exceptions)) + params = event.payload[:params].except(*exceptions) params_s = Oj.dump(params) - Thread.current[:current_request_id] = nil # Clear for next request if params_s.length > 1000 - { params_truncated: params_s[0..1000] + "[...]" } + payload[:params_truncated] = params_s[0..1000] + "[...]" else - { params: params } + payload[:params] = params end + payload end end