在完成我自己的 monit 和 sidekiq 配置之后,我可以分享对我运行 ubuntu 有用的东西。
首先,如果您在该发行版上,则存在一个用于 ubuntu 的 sidekiq upstart 脚本。有用于 sidekiq 和管理工作人员的脚本:https ://github.com/mperham/sidekiq/tree/master/examples/upstart/manage-one
当我使用 rvm 时,我在使用默认的 upstart 脚本时遇到了一些错误。检查 /var/logs/upstart/sidekiq-0.log 可以发现一些问题。这一行:
exec bin/sidekiq -i ${index} -e production -C config/sidekiq.yml -P tmp/pids/sidekiq-${index}.pid
需要改为exec bundle exec sidekiq
+选项
然后,为了使所有内容与我的 rvm 安装保持一致,我更改了以下内容:
#source $HOME/.rvm/scripts/rvm
source /usr/local/rvm/scripts/rvm
在 /etc/monit/monitrc 我引用了新贵脚本并具有:
# sidekiq
check process sidekiq
with pidfile /var/www/apps/myapp/current/tmp/pids/sidekiq-0.pid
start program = "/usr/bin/sudo start sidekiq index=0"
stop program = "/usr/bin/sudo stop sidekiq index=0"
if totalmem is greater than 500 MB for 2 cycles then restart # eating up memory?
if 3 restarts within 5 cycles then timeout