0

有什么方法可以让我获取每项工作的开始和时间。我正在使用延迟作业。

4

2 回答 2

1

根据您的设置,您可以包括在作业本身中记录作业的开始时间和结束时间的操作。

class SomeJob < Struct.new(:param1, :param2)
  def perform
    start_time = Time.now

    ## Do Something

    SomeModel.find(id).update_parameters({:start_time => start_time, :end_time => Time.now})
  end
end

可能比分叉存储库更容易,而且我对保留所有这些工作的想法并不疯狂,它会根据负载随着时间的推移减慢队列。

于 2010-06-22T17:06:21.080 回答
0

delay_job 无法跟踪作业的开始时间、持续时间或结束时间。默认情况下,它还会在成功时删除表条目。

您必须将 github 版本分叉并创建一个补丁来跟踪和记录这些信息,或者使用外部方法(http://helderribeiro.net/?p=87使用 monit)来跟踪这些数据(同样使用分叉版本)。

于 2010-06-22T16:19:12.983 回答