4 months ago, I released newrelic-workling gem, which helps us montior the performance of background jobs. We used it to find out a GC performance issue. But we still have some cron jobs, who call rake tasks, running in the black box.
So I created a new project newrelic-rake that adds newrelic instrument for rake tasks. Now when I go to the newrelic, I can see the rake tasks listed in Background tasks section, it shows me the average execution time and call count for all rake tasks.
I can also see the performance breakdown for each rake task.
This rake task probably needs to use persistence net http or some c extension http client, and reduce the GC calls.
It's really important to do monitor first, then do optimize.