我试过撬和远程撬,但没有运气。我熟悉日志记录,但我希望能够单步执行我的代码并查看变量。
有谁知道我可以用来调试 Sidekiq 的任何东西?
我试过撬和远程撬,但没有运气。我熟悉日志记录,但我希望能够单步执行我的代码并查看变量。
有谁知道我可以用来调试 Sidekiq 的任何东西?
工人被设计成可以轻松运行。将 pry 放入您的工作代码并在 rails 控制台中运行它。
> MyWorker.new.perform(some_args)
我想出的最好的东西是这个宝石gem 'pry-remote'
,它工作得很好,可以阻止所有进程运行。它的工作原理就像pry
只是放入binding.remote_pry
并且你有一个停止点。
您可以使用 byebug,但您必须在作业的类定义中使用它。例如,
class SomeJob < ActiveJob::Base
require 'byebug'
def perform(*args)
byebug
end
end
然后在你的 Rails 控制台中运行
SomeJob.perform_now(*args)
这将导致断点出现在您使用 rails 控制台中的典型 byebug 提示符调用 byebug 的地方。