同一个Monit工作的分期和生产版本

我有monitconfiguration为监视我的应用程序的生产版本的作业:

# in /etc/monitrc: include /etc/monit/delayed_job.my_app.production.monitrc # in /etc/monit/delayed_job.my_app.production.monitrc check process delayed_job with pidfile /var/www/apps/myapp_production/shared/pids/delayed_job.pid start program = "/var/www/apps/myapp_production/current/script/delayed_job -e production start" stop program = "/var/www/apps/myapp_production/current/script/delayed_job -e production stop" 

我也想在同一个盒子上监视暂存版本,但我不能完全弄清楚是否允许我想要做什么。 我的第一个猜测就是做一个gsub/production/staging

 # in /etc/monitrc: include /etc/monit/delayed_job.my_app.staging.monitrc # in /etc/monit/delayed_job.my_app.staging.monitrc: check process delayed_job with pidfile /var/www/apps/myapp_staging/shared/pids/delayed_job.pid start program = "/var/www/apps/myapp_staging/current/script/delayed_job -e staging start" stop program = "/var/www/apps/myapp_staging/current/script/delayed_job -e staging stop" 

但是现在我有两个名为“delayed_job”的进程。 我怎么能告诉monit哪一个开始和停止? 我希望能够做到这样的事情

 monit start delayed_job.production 

但我认为进程名称必须是进程的实际名称,这是由脚本名称决定的。

我不知道monit(事实上从来没有使用过)。 也许我有点天真,但是如果你已经把一个进程的PID传给一个文件,没有理由使用你的进程名。

这将导致一个简单的声明:

check process delayed_job.production with pidfile ...

你已经试过了吗?