LoginSignup
0
0

ChatGPTを使ってデプロイ後のエラーを解決します。【herokuのログを確認】

Posted at

Ruby on rails を学習中の方の参考にしてもらえたら嬉しいです。
アプリケーションを作成している時に出てくるエラーとその解決方法について掲載します。少しでも参考にしていただけると幸いです。
今回は今回はRuby on railsで作成したアプリをherokuにデプロイした際に起きたエラーの解決方法をお話しします。

はじめに

今回のエラーはherokuにデプロイができているのにサイトが表示されないというエラーを解決していきます。
どこからエラーを見つけて、どうやって解決していったのか?というヒントになれば幸いです。

エラーを確認します

スクリーンショット 2023-06-17 21.47.48.png
デプロイした時にこんなエラーが出ることがあります。コレは以下の画像のように内容を翻訳してみると解決策を探せます。
スクリーンショット 2023-06-21 5.14.35.png

ということでデプロイしたアプリのシークレットキーがアプリに書き込んだシークレットキーと合っているか確認します。
スクリーンショット 2023-06-21 5.14.06.png

確認後に再度デプロイしても以下のようにエラーになってしまいました。
スクリーンショット 2023-06-21 5.14.23.png

次にエラーをターミナルで確認してみます。

エラーを表示している文章にログを確認しろと言っていたので、確認してみます。
確認にはこのようなコマンドを使います
heroku logs --tail --app (〇〇-〇〇-production)
上記の()の中の名前はherokuで使っているアプリ名を入れます
スクリーンショット 2023-06-21 5.14.44.png

ターミナルでコマンドを入れると以下のようなメッセージが出てくるので、ChatGPTに読み込ませます↓
スクリーンショット 2023-06-21 6.58.43.png

こんな答えが返ってきました。
スクリーンショット 2023-06-21 6.58.55.png
上記の画像の返答からajaxのコードに間違いがあるんじゃないかと考えましたが、1のクラッシュしている云々の方を探るためにherokuのログを確認することにしました。↓

herokuのエラーログを確認する

スクリーンショット 2023-06-21 6.55.37.png
アプリのアクティビティーログを確認すると赤い表示の部分があります。これをクリックして出てきたエラーメッセージをChatGPTに読ませます↓
スクリーンショット 2023-06-21 6.59.03.png

いよいよエラーの本丸に迫ります

上記の画像からの回答は以下のように出ました↓
スクリーンショット 2023-06-21 6.59.11.png
上記の画像からこのエラーを解決するには、Rails.application.load_serverというメソッド呼び出しを調査し、修正が必要です。存在しないメンッドを呼び出すことはできないため、その呼び出しを修正するか、もしくは、必要に応じてそのメソッドを定義する必要があります。という一文に注目してRails.application.load_serverという記述を確認してみます。
以下のようにvscodeで検索をかけて見つかりました。
こんなコードを書いた覚えはないのですが、バージョンを更新をした時か、rails newした時に書かれたものかと思います。
スクリーンショット 2023-06-21 6.55.48.png
上記の記述の中のコードをどのように修正したら良いかをChatGPTに聞いてしまいます↓
スクリーンショット 2023-06-21 6.59.22.png

質問に対する返答はこうです↓
スクリーンショット 2023-06-21 6.59.30.png
なんと、ありがとうございます。
不要ということで、以下の画像のように削除しました。
スクリーンショット 2023-06-21 7.11.37.png

削除したことをコミット&プッシュしてデプロイし直すと・・・
🎉じゃーん🎉
スクリーンショット 2023-06-21 6.57.04.png
アプリがちゃんとデプロイされて表示されるようになりました。挙動も正しく動いているようなので、今回のエラーはコレにて一件落着です。

最後に

いかがでしたでしょうか?
今回はアプリケーションをデプロイできた後のエラーを解決していきました。メッセージに出ている文言を頼りにメッセージが何を表しているのか?どこに誤りがあるのかを確認していけば必ず解決できるはずです。

ちなみに、今回のエラーの解決はおそらくChatGPTが無かったらかなりの時間がかかったと思います。
自分が書いていていないコードに誤りがあったという発想は私にはできませんでした。
なので、プログラミング初学者の方はChatGPTを活用した方がや早く技術を習得できると思います。
エラーを丸ごと読み込ませてヒントをもらうこれがスキルアップの近道だと思います。

他にも記事を発信していきますので、私の QiitaやTwitterをフォローしていただけると嬉しいです。
個別の質問もぜひ歓迎します。
私自身、初学者ではありますが、1歩先を行くものとして回答できたらと思います。
それでは。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0