ActiveJob is a highly anticipated feature of Ruby on Rails 4.2. It gives developers a single API to control a variety of frameworks for controlling the execution of background jobs for tasks like sending confirmation emails or scheduling regular cleanups. This is great for us, and for you, because it allows New Relic to instrument a variety of these background job frameworks at once. Rails 4.2 is currently in beta and we’ve added this support to version 220.127.116.117 of our Ruby agent to help you figure out how to use it effectively.
In the example below, we’re using sucker punch in our app. Previously, our agent would have had to have special support for this framework, but with Rails 4.2’s ActiveJob support and the New Relic Ruby agent, we see transaction breakdowns and traces for sucker punch.
New Relic’s Ruby agent instruments when your software enqueues ActiveJobs. Background transactions are started for any ActiveJob performed where the agent didn’t already provide specific instrumentation (such as DelayedJob, Resque, and Sidekiq).
Since Rails 4.2 is still in beta, we’d love to hear any feedback on this instrumentation to help make it be rock solid for Rails 4.2’s general release!