はじめに
ProductionのDBへのデプロイ漏れにより、PassengerからRailsが起動できておりませんでした。エラーから原因がわからない若干特異な事象であったので、メモっておきます。
発生事象
gitを通して開発環境から本番環境にデプロイしたところ、passengerからrailsを起動できず、Apacheのerror_logを確認したところ下記が出力されてました。
Checking whether to disconnect long-running connections for process [プロセスID],application [アプリのパス] (production)
対処1
原因がさっぱりわからず、とりあえずApacheのログ出力レベルを下げて再度ログを確認しました。
/etc/httpd/conf/http.conf変更前
1 |
LogLevel warn |
/etc/httpd/conf/http.conf変更後
1 |
LogLevel debug |
Apacheを再起動
1 |
sudo systemctl restart httpd.service |
再度Apacheのerror_logを確認したところ下記が出力されてました。
[authz_core:debug] [pid 24020] mod_authz_core.c(809): [client 153.232.106.3:59729] AH01626: authorization result of Require all granted: granted
[authz_core:debug] [pid 24020] mod_authz_core.c(809): [client 153.232.106.3:59729] AH01626: authorization result of
[authz_core:debug] [pid 24022] mod_authz_core.c(809): [client 153.232.106.3:59730] AH01626: authorization result of Require all granted: granted, referer:[アプリのURL]
[authz_core:debug] [pid 24022] mod_authz_core.c(809): [client 153.232.106.3:59730] AH01626: authorization result of
対処2
上記error_logを見ても相変わらず訳わからなかったのですが、productionモードに当たりをつけて、developmentモードのDBへの変更をProductionモードのDBへ反映したところ見事回復。
【参考】Railsのdevelopment/productionについて
以上です!!!