我正在尝试使用 sinatra 应用程序设置 sidekiq,并且我有
使用配置文件启动 sidekiq 工作程序以在守护程序模式下运行时遇到问题。
我的项目具有以下结构:
project
- config
-- sidekiq.yml #Sidekiq Config File
- app
-- app.rb #Sinatra Application File
- Rakefile
- Gemfile
- etc.
最终目标是创建一些 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]
当我在项目目录中运行此命令时:
捆绑执行 sidekiq -C './config/sidekiq.yml' -e '开发' -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>'
我的困惑是我在配置文件中设置了日志文件。我的假设是它没有正确拾取或读取配置文件。
我尝试调整路径,并使用配置文件的完整路径,但它似乎没有改变任何错误消息。我还调整了配置文件本身,假设格式可能已关闭,但没有骰子。
有人看到我在这里做错了什么吗?
如果您需要更多信息,请告诉我。
thanks.
我深入研究了 sidekiq 代码,并调试了我的配置文件问题。
有两个问题:
- 我错误地拼写了 logfile ... doh!
- 您需要设置每一行
用冒号(:)来表示值。它将 yaml 文件拉入
哈希值,如果没有符号,它将无法识别密钥
So
development:
logfile: ./log/sidekiq_development.log
行不通,但是
development:
:logfile: ./log/sidekiq_development.log
#notice the ':' infront of the logfile
does!
这是我更新的工作日志文件。
# Sidekiq Configuration
---
development:
:logfile: ./log/sidekiq_development.log
:verbose: true
:pidfile: ./log/tmp/pids/sidekiq.pid
:concurrency: 1
:queues:
- [household_import, 7]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)