使用守护进程,如何指定我的脚本的日志进入/ log /并且其pid进入/ tmp/pids /?
我已经阅读了文档,我看到了:dir /:dir_mode,但我只能让它做一个或另一个,而不是两个 - 如果你问我,它似乎是一个非常糟糕的选项.
看起来香草不能Daemons做你想做的事,但它是可以修复的。尝试这样的事情:
require 'rubygems'
require 'daemons'
module Daemons
class Application
def logfile; '/log/f1'; end
def output_logfile; '/log/f2'; end
end
end
Daemons.run '/tmp/test.rb',
:dir => '/tmp/pids',
:dir_mode => :normal,
:ontop => false,
:log_output => true
Run Code Online (Sandbox Code Playgroud)
您可能希望 *logfile 的逻辑更像原来的逻辑;只需扫描守护程序源中的 def.logfile。我也宁愿修补 的子类Application,但它是通过模块守护进程中其他地方的名称实例化的,因此这使事情变得棘手。