2009-10-13 14 views
5

Daemon'ları kullanarak, komut dosyasının günlüğünün/log/dizinine girdiğini ve pid'in/tmp/pids /?Daemon'un günlük ve pid dizinleri nasıl belirlenir?

Dokümanları okudum ve şunu görüyorum: dir /: dir_mode, ama her ikisini de değil, yalnızca birini ya da diğerini yapabilirim - bana sorarsanız gerçekten kötü bir seçenek kümesi gibi görünüyor.

cevap

3

Vanilya Daemons istediğini yapabilir, ama tamir edilebilir. Bunun gibi bir şey deneyin:

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 

Muhtemelen * günlük dosyasının mantığının asıllar gibi hareket etmesini isteyebilirsiniz; sadece def.logfile için daemons kaynağını tarayın. Ayrıca, Application alt sınıfını da yamalıyordum ama bu, Daemon'un başka bir yerinde isimle eşleştiriliyor, bu da işleri zorlaştırıyor.