Amazon ec2 Sidekiq断管错误

Amazon ec2 Sidekiq断管错误,amazon-ec2,ruby-on-rails-5,sidekiq,foreman,neo4j.rb,Amazon Ec2,Ruby On Rails 5,Sidekiq,Foreman,Neo4j.rb,我正在尝试从Heroku迁移到AWS,但我的Sidekiq作业一直失败,出现以下错误: Errno::EPIPE:io_write时管道破裂- 我可以使用perform\u now从控制台成功运行作业,Heroku中的一切都很好,因此我认为问题出在AWS设置的某个地方。我看到过关于堆栈溢出和Github的不正确守护进程的引用,但不确定如何解决这个问题 现在,我使用以下命令启动进程: foreman start-f Procfile-p 3000-e$VAR\u文件& 最后,我尝试了使用和不使用&

我正在尝试从Heroku迁移到AWS,但我的Sidekiq作业一直失败,出现以下错误:

Errno::EPIPE:io_write时管道破裂-

我可以使用
perform\u now
从控制台成功运行作业,Heroku中的一切都很好,因此我认为问题出在AWS设置的某个地方。我看到过关于堆栈溢出和Github的不正确守护进程的引用,但不确定如何解决这个问题

现在,我使用以下命令启动进程:

foreman start-f Procfile-p 3000-e$VAR\u文件&

最后,我尝试了使用和不使用
&
的命令

我的proc文件如下所示:

web:bundle exec puma-t1:2-p${PORT:-3000}-e${RACK\u ENV:-production}
辅助程序:bundle exec sidekiq-C config/sidekiq.yml
日志:tail-f log/production.log

我也试过这样做,按照这里的说明():

worker:bundle exec sidekiq-C config/sidekiq.yml 2>&1 | logger-t sidekiq

我的
sidekiq.yml
已将
logfile
设置为
/log/sidekiq.log
,我相信这会将日志重定向到STDOUT之外

我已经看过这里的讨论()并且可以验证
rails12factor
gem不在我的gem文件中

但错误依然存在。。。有人能帮忙吗

更新:我终于可以获得堆栈跟踪,并看到它来自Neo4j.rb gem中的
put
语句:

2017-04-07T15:46:53.553Z 697 TID-12a6r4警告:错误号::EPIPE:io_写入时管道破裂
2017-04-07T15:46:53.553Z 697 TID-12a6r4警告:/var/lib/gems/2.3.0/bundler/gems/neo4j-c804cb33bef8/lib/neo4j/session_manager.rb:60:in'write'
/var/lib/gems/2.3.0/bundler/gems/neo4j-c804cb33bef8/lib/neo4j/session_manager.rb:60:in'put'
/var/lib/gems/2.3.0/bundler/gems/neo4j-c804cb33bef8/lib/neo4j/session_manager.rb:60:in'put'


但我仍然不确定如何缓解这个问题。我试过使用
RAILS\u LOG\u TO\u STDOUT=enabled
设置和取消设置。

我与gem维护人员交谈,他们删除了v
8.0.13
中的puts语句。它解决了我的问题

我与gem维护人员交谈,他们删除了v
8.0.13
中的put语句。它解决了我的问题