延迟作业错误挂钩

时间:2015-01-20 12:55:14

标签: ruby-on-rails ruby delayed-job

当作业首次出现错误时,是否会触发一次延迟作业错误挂钩,或者每次作业在重试时出错时都会触发它。我的代码似乎是在第一个错误上触发一次,并且它不会触发重试错误?

1 个答案:

答案 0 :(得分:1)

每次尝试失败后都会发生

error次点击,而failure次尝试次数大于max_attempts后会触发一次。

如果error仅运行一次,请检查:

  1. max_attempts设置为1。尝试明确设置最大尝试次数:

    def max_attempts
       3   
    end
    
  2. 您的error挂钩中有例外。尝试添加救援条款:

    def error
        # your code
    rescue => e
        Rails.logger.error "houston we have a problem #{e.message}"
    end