问题标签 [clockwork]

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 投票
1 回答
164 浏览

ruby-on-rails - RSS - Feedjira 更新,rails 中的时钟工作宝石

我是 Rails 新手,所以我观看了 railscast #168 以了解 feedjira 的工作原理。我知道它现在是如何工作的。我也得到了工作的功能。我在更新部分苦苦挣扎,我无法让“15 分钟”更新工作。

所以我下载了一个名为“Clockwork”的gem,但我不知道如何将clockwork gem 与feed_entry.rb 的更新联系起来。我希望 rss 提要每 15 分钟和每 1 小时更新一次。

这是文档提供的代码,https://github.com/tomykaira/clockwork

我生成了一个模型调用时钟。

但我还不确定如何使用它。

0 投票
2 回答
1023 浏览

ruby-on-rails - RailsAdmin 在使用 Clockwork 和 CKEditor 时无法加载模型

我目前遇到2个错误。日志中的一项包括:

另一个是当我运行测试以访问 rails_admin 时:

使用 rails 4.2.2 和 ruby​​ 2.2.1

我安装了发条宝石并要求它为假。

我的时钟文件在 lib 文件夹中并且工作正常:

这是我的 rails_admin 初始化程序。该错误以前发生在 ckeditor 循环中,并说 configure: content, :ck_editor 有 2 for 0 参数。

我在 Rails Admin 中遇到错误发生的位置,但不确定如何以正确的方式解决它:https ://github.com/sferik/rails_admin/blob/master/lib/rails_admin/abstract_model.rb#L20

感谢您的任何解决!

0 投票
1 回答
2095 浏览

php - Laravel 在运行时禁用提供程序(Clockwork)

我正在安装带有Clockwork的 laravel 设置。而且我有一个工匠命令需要很长时间才能运行,因此发条会消耗太多内存。我仍然需要那个扩展。仅运行命令时如何禁用它?

0 投票
1 回答
975 浏览

ruby-on-rails - Rails发条不运行代码

我在 Rails 3.2 应用程序中使用 gem 'clockwork'。该应用程序在 Heroku 上运行。时钟作业在凌晨 1 点运行 - 但它没有执行代码。

这是clock.rb代码:

日志显示:

9 月 4 日 00:00:05 ndeavor-staging app/clock.1: #<NoMethodError: undefined method `woschedules_run_jobplans_path' for Clockwork:Module>

如果我耙路线,我会得到:

0 投票
1 回答
320 浏览

ruby-on-rails - 在 Heroku 上的 Rails 部署期间动态生成时钟文件(或任何文件)

我使用Clockwork gem 在使用 Heroku 部署的 Rails 应用程序上安排作业。

clock.rb对于不熟悉的人,它基本上是从您的应用程序根目录中的文件中读取的。

...并且有一个专用的 Dyno 运行时钟过程。

那么如果我不想对时钟文件进行硬编码怎么办?我希望能够clock.rb在应用程序启动时动态生成使用 ERB。这使我可以灵活地根据环境配置等来安排或不安排某些任务......

  1. Heroku 是否允许您在任何时候将文件“写入”到本地文件系统,以便我可以clock.rb在初始化步骤中生成和写入文件?

  2. 有没有办法在bundle exec我创建clock.rb文件之后延迟使用命令启动测功机的执行?我可以从一个假/空文件开始,然后在初始化期间填充一个新文件,但我仍然需要一种方法让时钟通过重新启动bundle exec clockwork...命令来重新拾取它。

任何其他创造性的解决方案表示赞赏。

谢谢!

0 投票
2 回答
218 浏览

ruby-on-rails - Date.today 与实际日期不对应

Date.today关于使用方法的当前时间,我在日志中注意到一个非常奇怪的问题。基本上,我有一个每天晚上 00:00 运行的 cron 作业(使用发条),以检查哪些订阅到期,以便它尝试自动更新它们。该作业执行一个方法,该方法又执行一个查询,如下所示:

大多数情况下,这都能正确执行。但是,从我的日志观察来看,似乎有时Date.today与实际日期不符。从我的日志中提取:

注意:日期是将来的,因为我是手动设置时间来测试它是否正确执行。

如果您查看第一种情况,您将看到语句在 执行2016-05-01T00:00:00.015901,而 Date.today 产生2016-04-30。第二种情况显然是正确的,因为日志日期对应于 Date.today。

最大的问题是我无法重现它。我从我的日志中看到的唯一一件事是它已经发生了 24 次中的 3 次。这里可能有什么问题?Rails 是否有可能以某种方式将输入参数缓存到查询中?

我的 Ruby 版本是:ruby 2.2.1p85(2015-02-26 修订版 49769)[x86_64-linux]

我的 Rails 版本是:4.2.1

0 投票
1 回答
430 浏览

ruby-on-rails - 仅在一个生产实例上运行发条(rails capistrano)

我有一个带有两个实例 app1 和 app2 的生产服务器,我使用 capistrano 来部署我的应用程序,即:cap app1 deploy,cap app2 deploy。

我现在正在配置发条来安排我延迟的工作。但是会发生什么,作业被安排了两次,因为在部署应用程序后,时钟进程同时在 app1 和 app2 上运行。

如何强制 capistrano 仅在 app2 上运行发条进程?

感谢您的提示。米罗斯拉夫

解决方案

将以下设置添加到 deploy.rb 中:

然后只配置其中一个实例使用角色:clock,即:

0 投票
1 回答
52 浏览

ruby-on-rails - Sidekiq 的活动记录查询偶尔会为零

我的项目由一台有发条的机器组成,它在数据库中创建新模型。

我还在模型 after_create 中使用 perform_async 创建了一个 sidekiq 任务。

我的问题是这样的:偶尔,当sidekiq作业开始时,它会查询它所产生的模型(如果模型X创建了一个带有参数的sidekiq作业-X,sidekiq作业查询具有id X的模型)-它得到一个零!

怎么可能?我无法追踪问题是什么或影响它的因素。

在我重试工作后它成功了。- 但它是在 AFTER_CREATE 制作的,因此模型应该已经提交给数据库。

谢谢您的帮助!

0 投票
1 回答
436 浏览

ruby-on-rails - Clockwork gem 正在尝试访问生产中的开发数据库

我正在尝试sudo bundle exec clockwork config/clock.rb在生产中使用以下命令启动发条。但它会引发以下错误 ActiveRecord::AdapterNotSpecified: 'development' database is not configured. Available: ["production"]。它在本地正常工作。我们在服务器中有 Puma 服务器和 JRuby 设置。

0 投票
0 回答
290 浏览

ruby - 发条宝石“at:”时间不触发事件

我的发条script.rb看起来像:

如果我在我的笔记本电脑上运行它,它是美国东部标准时间的“12:58”,然后等到“13:01”,则不会触发任何事件。此外,需要明确的是,clockworks 启动时输出中列出的时间是正确的 EST 时间,因此这似乎不是时区问题。

如果我改为运行类似的东西every(1.minute, 'test'),它会按预期工作。

为什么at:在上面不起作用?