原因和解决scheme:在Rails应用程序中的SIGTERM SignalException

我有一个ECS中的dockerized Rails 5应用程序,每次ECS容器循环时都会抛出一个SIGTERM SignalException ,每两个小时左右一次。

运行rake_task assets:precompile时总会发生exceptionrake_task assets:precompile ,这是启动应用程序的第一步(请参阅下面的Makefile )。

它似乎没有对应用程序的function的影响,但我想更好地理解问题,并修复它。

根据我的操作团队:

您的应用每两个小时循环一次。 现在,我们没有给你任何通知或空间让你正常关机。 如果这不是应用程序的问题,也许有办法忽略它?

我应该忽略这个错误吗? 我需要保护它吗? 最好,我想了解正在发生的事情,并妥善处理。

在我看来,全球忽视这个例外只是为了保持我们的错误报告清洁可能是矫枉过正,并可能隐藏未来的实际问题。

Dockerfile

 FROM ruby:2.4.2 # shortened for brevity, install gems, etc. CMD ["rails"] ENTRYPOINT ["make"] 

Makefile文件

 rails: assets bundle exec rails server sidekiq: bundle exec sidekiq db_migrate: bundle exec rake db:migrate db:seed assets: bundle exec rake assets:precompile bundle exec rake assets:clean test: bundle exec rake spec