У меня есть пользовательский демон в моем приложении Rails. Это довольно просто (ищет в БД «запланированные» задания и «запускает» их). Это отлично работало в средах разработки и тестирования, но, конечно, демон отказывается даже запускаться в производство. Что еще хуже, я не могу заставить его генерировать какой-либо вывод журнала, поэтому я не уверен, что происходит не так.
На самом деле, даже в среде разработки демон не генерировал никакого вывода журнала. Вот мой конфиг / daemons.yml:
dir_mode: script
dir: ../../log
multiple: true
backtrace: true
monitor: true
log_output: true
И мой lib / daemon / xyz_ctl:
#!/usr/local/bin/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)
options["dir_mode"] = options["dir_mode"].to_sym
Daemons.run File.dirname(__FILE__) + '/xyz.rb', options
В каталоге журнала нет ничего, кроме файлов .log, и они не получают никакого вывода. Любые идеи о том, как я могу получить это, чтобы даже вывести некоторые записи?