Skip to content

Instantly share code, notes, and snippets.

@seamusabshere
Created September 15, 2010 17:22
Show Gist options
  • Select an option

  • Save seamusabshere/581086 to your computer and use it in GitHub Desktop.

Select an option

Save seamusabshere/581086 to your computer and use it in GitHub Desktop.
#!/usr/bin/env ruby
PRESUMPTIVE_RAILS_ROOT = '/data/my_app/current'
Dir.chdir PRESUMPTIVE_RAILS_ROOT
require "rubygems"
require "bundler/setup"
require 'daemon_spawn' # use 0.4.0
PID_PATH = '/data/my_app/shared/pids/delayed_job.pid'
LOG_PATH = '/data/my_app/shared/log/delayed_job/delayed_job.log'
TIMEOUT = 90
SIGNAL = 'INT'
class DelayedJobWorker < DaemonSpawn::Base
def start(args)
require File.join('config', 'environment')
f = open LOG_PATH, (File::WRONLY | File::APPEND | File::CREAT)
f.sync = true
RAILS_DEFAULT_LOGGER.auto_flushing = true
RAILS_DEFAULT_LOGGER.instance_variable_set(:@log, f)
Delayed::Worker.logger = RAILS_DEFAULT_LOGGER
Delayed::Worker.new(:quiet => true).start
end
def stop
end
end
DelayedJobWorker.spawn!(:log_file => LOG_PATH,
:pid_file => PID_PATH,
:sync_log => true,
:working_dir => PRESUMPTIVE_RAILS_ROOT,
:singleton => true,
:timeout => TIMEOUT,
:signal => SIGNAL)
@seamusabshere

Copy link
Copy Markdown
Author

for /etc/init.d/delayed_job.sh

@seamusabshere

Copy link
Copy Markdown
Author

the logging stuff is rather clumsy, i recognize that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment