我想在 cron 作业中运行我的脚本。此脚本创建多个 Que 作业来完成艰苦的工作。如何跟踪新遗迹中每个工作的活动?
我已经阅读了这篇关于如何跟踪 cronjobs的帖子https://blog.newrelic.com/2012/05/30/using-new-relic-to-monitor-ruby-background-tasks/ ,但是由于 Que 作业是管理的在它自己的工人(我正在使用美洲狮)中,它不会被追踪。
这是一个尝试执行此操作的示例脚本(但它不跟踪任何内容):
class NewrelicTest
def run
Order.all.find_each do |order|
Job.enqueue(order.id)
end
end
class Job < Que::Job
include NewRelic::Agent::Instrumentation::ControllerInstrumentation
def run(id)
order = Order.find(id)
do_heavy_work_here(order)
end
add_transaction_tracer :run, :category => "OtherTransaction/cronjobs"
end
end
NewRelic::Agent.manual_start :app_name => "Background Jobs"
NewrelicTest.new.run
谢谢