Myl*_*ell 6 ruby sinatra sidekiq
我正在尝试使用我的sinatra应用程序设置sidekiq,并且我无法启动sidekiq worker以使用配置文件在守护进程模式下运行.
我的项目有以下结构:
project
- config
-- sidekiq.yml #Sidekiq Config File
- app
-- app.rb #Sinatra Application File
- Rakefile
- Gemfile
- etc.
Run Code Online (Sandbox Code Playgroud)
最终目标是创建一些rake任务来处理所有sidekiq任务.
现在,我只是想通过命令行让事情正常工作,然后我会通过rake让它工作.
sidekiq.yml
# Sidekiq Configuration
---
development:
logile: ./log/sidekiq_development.log
verbose: true
pidfile: ./tmp/pids/sidekiq.pid
concurrency: 1
queues:
- [household_import, 7]
Run Code Online (Sandbox Code Playgroud)
当我在项目目录中运行此命令时:
捆绑exec sidekiq -C'./config/sidekiq.yml'-e'development'-d
我得到以下内容:
You really should set a logfile if you're going to daemonize
/Users/gutter007/git/webapps/project/vendor/bundle/gems/sidekiq-2.16.1/lib/sidekiq/cli.rb:141:in
`daemonize'
/Users/gutter007/git/webapps/project/vendor/bundle/gems/sidekiq-2.16.1/lib/sidekiq/cli.rb:39:in
`parse'
/Users/gutter007/git/webapps/project/vendor/bundle/gems/sidekiq-2.16.1/bin/sidekiq:7:in
`<top (required)>'
/Users/gutter007/git/webapps/project/vendor/bundle/bin/sidekiq:23:in
`load'
/Users/gutter007/git/webapps/project/vendor/bundle/bin/sidekiq:23:in
`<main>'
Run Code Online (Sandbox Code Playgroud)
我的困惑是我在配置文件中设置了日志文件.我的假设是它没有正确地读取或读取cofig文件.
我尝试调整路径,并使用配置文件的完整路径,但它似乎没有改变任何错误消息.我也调整了配置文件本身,假设格式可能已关闭,但没有骰子.
有谁看到我在这里做错了什么?
如果您需要更多信息,请与我们联系.
谢谢.
Myl*_*ell 10
我挖掘了sidekiq代码,并调试了我的配置文件问题.
有两个问题:
所以
development:
logfile: ./log/sidekiq_development.log
Run Code Online (Sandbox Code Playgroud)
不行,但是
development:
:logfile: ./log/sidekiq_development.log
#notice the ':' infront of the logfile
Run Code Online (Sandbox Code Playgroud)
的确!
这是我更新的工作日志文件.
# Sidekiq Configuration
---
development:
:logfile: ./log/sidekiq_development.log
:verbose: true
:pidfile: ./log/tmp/pids/sidekiq.pid
:concurrency: 1
:queues:
- [household_import, 7]
Run Code Online (Sandbox Code Playgroud)
以下命令帮助了我,
sidekiq -d -q carrierwave -l sidekiq.log
你可以省略"-q carrierwave"部分,如果你没有使用'carrierwave'
归档时间: |
|
查看次数: |
4406 次 |
最近记录: |