2

我在我的 Rails 应用程序中使用 resque、resque-scheduler gem。为了监控 resque 工人的工作,我正在使用上帝工具。我想添加这样一个神配置,它将监控作业在 resque worker 中运行的时间。如果进程执行超过时间限制,那么它应该重新启动worker。

我在http://god.rubyforge.org/上阅读了帖子。但是,无法根据我的要求查看正确的代码库。

任何信息将不胜感激。

谢谢。

4

2 回答 2

0

你可以在你的工作创建一个 pid 文件的地方做一些事情,你可以使用 God 中的 FileMtime 条件来监控它。作业完成后,它会重新创建 pid 文件,如果该文件早于 x,则使用 god 重新启动该进程。

来源:https ://github.com/mojombo/god/blob/856d321fb135a0b453046e99c266231681bd5ffe/lib/god/conditions/file_mtime.rb

编辑:添加了 github 源

于 2011-10-30T19:49:56.923 回答
0

我有同样的问题:

主要问题是 resque god recipe 不会监控子(分叉)进程,因此您无法控制内存或它们花费的时间。

这是观察子进程的解决方案:

https://github.com/mojombo/god/issues/90 https://github.com/jbgo/god/commit/918bc278e4ca5b8133fe34db06c30ccb93dcb7f0

您可以使用您自己的从源分叉的 gem 来添加这些文件,我更喜欢要求来自上帝食谱的新文件...

对于时间问题,您可以根据给定的条件开发一个新条件(我正在这样做,并将在此处发布)。

于 2012-04-17T12:50:35.610 回答