我有一个backroundrb计划的任务,需要很长时间才能运行。然而,这一过程似乎仅在2.5分钟后就结束了。
我的background.yml文件:

:schedules:
  :named_worker:
    :task_name:
      :trigger_args: 0 0 12 * * * *
      :data: input_data

进程运行时,服务器上没有活动。(这意味着服务器上只有我在监视日志文件,直到进程突然停止。)
有什么想法吗?

最佳答案

这里没有多少信息能让我们弄清问题的真相。
因为backgroundrb在后台运行,所以很难监视/调试。
以下是我的一些想法:
编写一个单元测试来测试工作代码本身,并确保没有问题
将“puts”语句放在代码中的多个点,以便在工作进程运行时至少可以看到一些响应。
将整个工作进程包装在一个begin..rescue..end块中,以便您可以捕获可能发生的任何错误并缩短进程。

09-25 17:24