我正在使用mina_sidekiq进行部署。 当我跟踪部署时,我可以看到:
-----> Start sidekiq
$ bundle exec sidekiq -d -e production -C /root/sites/mina_deploy/current/config/sidekiq.yml -i 0 -P /root/sites/mina_deploy/shared/pids/sidekiq.pid -L /root/sites/mina_deploy/current/log/sidekiq.log
所以这应该得到我的配置文件,其中包含队列:
---
:queues:
- default
- [mailer, 10]
但是当我运行sidekiq webview时,我只能看到默认队列。 在localhost中它可以正常工作
我的mina部署文件包含以下内容:
...
require 'mina_sidekiq/tasks'
task setup: :environment do
queue! %[mkdir -p "#{deploy_to}/#{shared_path}/log"]
queue! %[chmod g+rx,u+rwx "#{deploy_to}/#{shared_path}/log"]
queue! %[mkdir -p "#{deploy_to}/#{shared_path}/config"]
queue! %[chmod g+rx,u+rwx "#{deploy_to}/#{shared_path}/config"]
# sidekiq needs a place to store its pid file and log file
queue! %[mkdir -p "#{deploy_to}/#{shared_path}/pids/"]
queue! %[chmod g+rx,u+rwx "#{deploy_to}/#{shared_path}/pids"]
...
end
task deploy: :environment do
deploy do
invoke :'sidekiq:quiet'
invoke :'git:clone'
invoke :'deploy:link_shared_paths'
invoke :'bundle:install'
invoke :'rails:assets_precompile'
invoke :'deploy:cleanup'
to :launch do
queue "mkdir -p #{deploy_to}/#{current_path}/tmp/"
queue "touch #{deploy_to}/#{current_path}/tmp/restart.txt"
invoke :'sidekiq:restart'
invoke :'puma:restart'
end
end
end
为什么我不能得到正确的队列?
答案 0 :(得分:1)
拔了很多头发后,我尝试在服务器上运行sidekiq,因为Redis版本而无法启动。没有警告,因此无法追踪。更新到更高版本的Redis并再次使用mina进行部署,这一切都得到了解决。 我要感谢JörgThalheim与我一起寻找问题的头脑风暴。
答案 1 :(得分:0)
在您实际将作业推送给他们之前,队列不会显示在Web UI中。