RequestId
This is a gem with a collection of middleware for easily cascading Heroku request id's Throughout the system. It includes:
- Rack middleware, which adds the request_id to
Thread.current[:request\_id] - Sidekiq Client middleware, which adds the request_id to the message payload.
- Sidekiq Server middleware, which adds the request_id to
Thread.current[:request_id]from the request_id in the message payload.
Installation
Add this line to your application's Gemfile:
gem 'request_id'
Usage
Add the rack middleware:
use Rack::RequestId
If you're using Sidekiq
Add the client middleware.
Sidekiq.configure_client do |config|
config.client_middleware do |chain|
chain.add Sidekiq::Middleware::Client::RequestId
end
end
Add the server middleware.
Sidekiq.configure_server do |config|
config.client_middleware do |chain|
chain.add Sidekiq::Middleware::Client::RequestId
end
config.server_middleware do |chain|
chain.remove Sidekiq::Middleware::Server::Logging
chain.add Sidekiq::Middleware::Client::RequestId
end
end
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create new Pull Request