-
- Downloads
Log Sidekiq exceptions properly in JSON format
As mentioned in https://github.com/mperham/sidekiq/wiki/Error-Handling, Sidekiq can be configured with an exception handler. We use this to log the exception in a structured way so that `corrrelation_id`, `class`, and other useful fields are available. The previous error backtrace in the `StructuredLogger` class did not provide useful information because Sidekiq swallows the exception and raises a `JobRetry::Skip` exception. Closes #29425
parent
e8790766
No related branches found
No related tags found
Pipeline #83857522 passed with warnings
Stage: prepare
Stage: test
Stage: review-prepare
Stage: review
Stage: qa
Stage: post-test
Showing
- changelogs/unreleased/sh-handle-exceptions-sidekiq.yml 5 additions, 0 deletionschangelogs/unreleased/sh-handle-exceptions-sidekiq.yml
- config/initializers/sidekiq.rb 4 additions, 0 deletionsconfig/initializers/sidekiq.rb
- lib/gitlab/sidekiq_logging/exception_handler.rb 27 additions, 0 deletionslib/gitlab/sidekiq_logging/exception_handler.rb
- lib/gitlab/sidekiq_logging/structured_logger.rb 1 addition, 6 deletionslib/gitlab/sidekiq_logging/structured_logger.rb
- spec/lib/gitlab/sidekiq_logging/exception_handler_spec.rb 44 additions, 0 deletionsspec/lib/gitlab/sidekiq_logging/exception_handler_spec.rb
- spec/lib/gitlab/sidekiq_logging/structured_logger_spec.rb 1 addition, 2 deletionsspec/lib/gitlab/sidekiq_logging/structured_logger_spec.rb