问题标签 [whenever]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3387 浏览

ruby-on-rails - 每当 gem 只有一台机器上有 cronjob 时?

我们有大约十几台服务器的大规模部署。我们想使用Whenever gem,但我想不出一种方法来说明cron 作业应该在哪台机器上运行!我们只希望这些作业在执行后台作业的服务器上运行。

有没有办法指定这个?

0 投票
1 回答
2127 浏览

ruby-on-rails-3 - 为什么我的 cron 作业没有在 OS X 上运行(由只要 gem 配置)?

我已经建立了一个 cron 工作,使用了伟大的每当 gem。

我设置了 cron 作业:

crontab 文件看起来不错,它显示:

如果我执行运行程序,它可以正常工作,但是,cron 作业似乎不起作用(我也没有看到正在创建日志)。

我错过了什么?

(我正在使用 Mac OS X,10.6.6)

更新

我想我发现了问题:路径名包含空格,并且无论何时 gem 都没有正确处理这个问题,crontab 填充不正确(缺少所需的反斜杠),所以执行了 cronjobs,但是命令的路径是错的。

0 投票
2 回答
3411 浏览

ruby-on-rails - Rails cron 与任何时候

我不明白为什么“无论何时”都不起作用

时间表.rb

ping.rb

crontab -l

rails runner "Ping.check_pings" ==> 在命令行中工作

我在“rails s”中运行我的项目进行了尝试,但没有我做错了什么?

0 投票
1 回答
2040 浏览

ruby-on-rails - 每当红宝石在铁轨上

在我的日程安排中:

每当在我的 crontabs 中创建这个

我试图在我的控制台中运行该命令并且它有效。为什么它不能自动工作,我要疯了!

在我的系统日志中

0 投票
4 回答
3267 浏览

ruby-on-rails - 每当 Rails 3 ubuntu 的 crontab 文件中的 PATH

我正在使用带有rails 3 的 gem。在我的生产服务器 (ubuntu) 上,运行器任务不运行。我尝试按照此 github ticket:set job_template中的说明设置to get 。然而,这并不能解决问题。-l -i

这个特定的生产 ubuntu 的问题是 ruby​​ 路径不在echo $PATH

而红宝石路径是 /var/rails/myapp/shared/bundle/ruby/1.8/bin

因此,如果我手动编辑 crontab 文件并添加 PATH=/var/rails/myapp/shared/bundle/ruby/1.8/bin: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games到 crontab 文件中,则运行器任务将正确执行。

但是,每次进行部署时,我都需要手动编辑 crontab 文件以将 PATH 语句添加到其中。

有什么方法可以在 crontab 文件中添加此 PATH 行,以便在每次部署后无需手动执行此操作?

谢谢

0 投票
3 回答
10506 浏览

ruby - 在 cron 中设置路径,以便它可以找到 ruby

我的红宝石在 /usr/local/bin 中。每当找不到它,并且在我的 cron 文件顶部设置 PATH 也不起作用,我认为是因为每当在新的 bash 实例中运行命令时。

我怎么知道我的红宝石二进制文件在哪里?从 /usr/bin 建立符号链接对我来说似乎很乱,但我想这可能是唯一的选择。

这个问题在 schedule.rb 中提供env :PATH, "..."了一个解决方案,但是(a)我在文档中的任何地方都找不到该功能的任何文档(b)它似乎没有解决提问者的问题(不幸的是,它需要不平凡周转时间让我尝试一下)。 更新实际上它在这个页面的底部,我现在就试试。

更多信息

  1. 我无法修改 cron 命令,因为它是由任何时候生成的
  2. 我验证了如果我用 制作一个新的 bash shell bash -l,/usr/bin/env 发现 ruby​​ 就好了
  3. 我刚刚从该用户的命令行尝试了 cron 中的确切命令,从 /bin/bash 开始,它起作用了。

所以,这很神秘……

0 投票
1 回答
2212 浏览

ruby-on-rails - 使用无论何时 gem 调度顺序任务

我正在使用无论何时为 Rails 应用程序安排任务。

我有一个任务:

我的观点是,当我将它写入我的 crontab 时,无论何时使用 -w,我都会看到它会生成两个同时运行的独立任务。问题是,两者在逻辑上都是一个序列,这意味着,如果命令“do_this”已经成功运行,rake 任务“do_that”应该运行。

我尝试像命令“do_this”&& rake“do_that”一样联系两者,但我收到了语法错误。

  • 是否存在任何技巧来在任何时候创建任务之间的这种依赖关系?

  • crontab 是同时、并行执行作业还是处理队列中同时安排的 N 个任务?

0 投票
0 回答
348 浏览

ruby-on-rails - 如何为控制器方法创建 crontabs?

  • 资源“项目”
  • 控制器“项目”-> 方法“检查项目”
  • 查看“项目”-> link_to check_item

我需要为用户创建一个输入表单,以在我的视图中输入时间段“N [秒或分钟或小时]”和新的“link_to”,这将为 check_item 创建一个具有 N 间隔的新 cronjob。此外,我需要创建“停止所有预定作业”和“启动所有预定作业”按钮。

我想使用 linux crontab,所以我发现 gem "whenever"(https://github.com/javan/whenever)。我不明白如何连接用户在视图中输入的变量、来自项目控制器的方法 check_item 和 myapp/config/schedule.rb(由无论何时创建)。

0 投票
1 回答
2618 浏览

whenever - 每当 gem 在 Rails 中用于 cronjob 处理时如何?

我们应该如何使用rails 3中的gem进行cronjob处理?我有一个 rake 任务,我需要每 5 分钟运行一次,我该怎么做?

0 投票
3 回答
2299 浏览

ruby-on-rails - Rails:无论何时+delayed_job 来优化rake 任务?

我全天都使用任何时候调用 rake 任务,但每个任务都会启动一个新的 Rails 环境。如何在不为每个作业重新启动 Rails 的情况下全天运行任务?

这是我想出的,很想得到一些反馈...?

  1. 将每个 rake 任务重构为适当模型中的方法。

  2. 使用delayed_job gem 分配低优先级并确保这些方法异步运行。

  3. 指示何时调用每个 Model.method 而不是调用 rake 任务

这个解决方案有意义吗?它是否有助于避免为每个作业启动一个新的 Rails 环境?..还是有更好的方法来做到这一点?

--

运行导轨 3