2009-10-13 15 views
5

Używając Demonów, w jaki sposób mogę określić, że log mojego skryptu trafia do/log /, a jego pid idzie w/tmp/pids /?Jak określić katalog logów i pid demona?

Czytałem dokumentację i widzę: dir /: dir_mode, ale mogę tylko sprawić, by działała jedna lub druga, a nie obie - wydaje się bardzo złym zestawem opcji, jeśli mnie pytasz.

Odpowiedz

3

Nie wygląda jak wanilia. Daemons może robić, co chcesz, ale można go naprawić. Spróbuj czegoś takiego:

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 

Prawdopodobnie chcesz logikę * logfile działać bardziej jak oryginały; wystarczy zeskanować źródło demów dla pliku def.log. Mógłbym też załatać podklasę o nazwie Application, ale jest ona tworzona przez nazwę gdzie indziej w module Daemon, co sprawia, że ​​sprawy są trudne.