railsinator-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
2006-Dec-08 01:59 UTC
help with debugging daemons on debian
I''m trying to get a daemon to work on debian using daemons gem. I installed daemons via gems and I''m running version 1.0.3. I used daemon_generator from http://kylemaxwell.typepad.com/everystudent/2006/08/after_writing_r.html I created a daemon called test and ran it on OSX with no problem, meaning that ./script/daemons start and ./script/daemons stop both work fine. I moved it to a debian system, modifed test.rb to use the production environment, and I can''t get it to work. I''ve tried a bunch of things. It doesn''t seem to start reliably On the debian system ./script/daemons start sometimes works. I see the daemon running, I see the monitor daemon running, and messages are going into the production log file. If I try to stop it with ./script/daemons stop the test daemon stops but the monitor does *not* stop. Then I get a log file for the test daemon with # Logfile created on Thu Dec 07 15:33:33 -0800 2006 by logger.rb/1.5.2.9 failed to allocate memory stack level too deep exception reentered uninitialized constant Rails no such file to load -- rails.rb No such file or directory - [snip]/log/test.rb.pid no such file to load -- openssl no such file to load -- http-access2 no such file to load -- xmlscan/scanner no such file to load -- xml/parser no such file to load -- tmail/scanner_c.so no such file to load -- tmail/base64.so test.rb.log (END) Here is lib/daemons/test.rb: #!/usr/bin/env ruby #You might want to change this ENV["RAILS_ENV"] ||= "production" require File.dirname(__FILE__) + "/../../config/environment" $running = true; Signal.trap("TERM") do $running = false end while($running) do # Replace this with your code ActiveRecord::Base.logger << "This daemon is still running at #{Time.now}.\n" sleep 10 end and here is the ctl file: #!/usr/bin/env ruby require ''rubygems'' require "daemons" require ''yaml'' require ''erb'' require ''active_support'' options = YAML.load( ERB.new( IO.read( File.dirname(__FILE__) + "/../../config/daemons.yml" )).result).with_indifferent_access options[:dir_mode] = options[:dir_mode].to_sym Daemons.run File.dirname(__FILE__) + ''/test.rb'', options # this is a comment Thank you --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---