Support streaming bodies and other improvements
Added
- Add Sidekiq worker-level job status metric:
worker_job_count
. This new counter metric'sstatus
tag will beprocessed
for each job that's processed and reports another counter with thefailure
status if the job encountered an error.
Fixed
-
Support streaming bodies. AppSignal's Rack instrumentation now supports streaming bodies in responses, such as those produced by
Async::Cable
. This fixes an issue where AppSignal's Rack instrumentation would cause requests with streaming bodies to crash.If you use our Rack instrumentation through a framework that is automatically instrumented by AppSignal, such as Rails, Hanami, Padrino or Sinatra, this fix is applied automatically.
If your application instruments Rack manually, you must remove the following line from your application's initial setup:
Rubyuse Rack::Events, [Appsignal::Rack::EventHandler.new]
And replace it with the following line:
Rubyuse Appsignal::Rack::EventMiddleware
-
Avoid instrumenting Rails when AppSignal is not active. If AppSignal is configured to start when the Rails application loads, rather than after it has initialised, only add Rails' instrumentation middlewares if AppSignal was actually started.
View the Ruby gem v4.7.0 changelog for more information.