Skip to content
The simple way to create and monitor a Ruby daemon
Ruby
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib
spec
templates
.gitignore
MIT-LICENSE
README.markdown
Rakefile
require.rb

README.markdown

With PID

The simple way to create and monitor a Ruby daemon.

Works by generating a bash file and executing it instead of doing any Ruby process tricks.

Requirements

sudo gem install with_pid

Ruby script

/data/my_app/current/bin/dj

#!/usr/bin/env ruby

require 'rubygems'
require 'with_pid'

with_pid(
  :action => ARGV[0], # start or stop
  :command => "/data/my_app/current/script/runner 'Delayed::Worker.new.start'",
  :name => "dj",
  :pid => "/var/run/dj/dj.pid",
  :tmp => "/data/my_app/current/tmp",
  :user => "deploy"
)

Be sure to run chmod +x /data/my_app/current/bin/dj.

It is up to you to make sure that the command you execute runs in a continuous loop.

Monit

check process delayed_job
  with pidfile /var/run/dj/dj.pid
  start program = "/data/my_app/current/bin/dj start"
  stop program = "/data/my_app/current/bin/dj stop"
  group delayed_job
You can’t perform that action at this time.