EC2側トラブルシューティング

はい、こんばんは。

 

2018年度のTECH::EXPERT教室学習は無事(?)幕を閉じました。

 

思い返せば、10/26(土)からおよそ2ヶ月でメ◯カリのようなサイトを作れるように学ばさせていただいたのは、TECH::EXPERTで質の高い教育を受けさせていただいたことに他ならない。

 

TECH::EXPERT梅田校のライフコーチ、メンターのみなさま、いつも本当にありがとうございます。ここで学ばせていただいたということは大きな財産になると思っています。

 

さて、本日はEC2側のトラブルシューティングの仕方として培ったものをアウトプットさせていただきたいと思います。

 

イメージとして、次の表を記入しておきます。

 
f:id:g1034725:20181214204334p:plain

 

最終課題では、WebサーバとしてNginx、アプリケーションサーバとしてUnicornを用いています。

Nginx は最終的にHTMLとなるデータを表示させるものです。

つまり、下記画面になれば、Nginxが働いていない可能性が高いです。

f:id:g1034725:20181217212849p:plain

用いるコマンドは下記の二つです。

 ※EC2にログイン、 ディレクトリが〜のところで実行する。

sudo service nginx statusでNginxがrunningになっているか確認。

 

runnningの場合は

 

sudo service nginx restart で再起動させる。

 

その後もう一度状態を確認する。

sudo service nginx stgatus

 

runnningであれば、次にmysqlも再起動しましょう。

 

sudo service mysqld statusで状態確認

 

sudo service mysqld restartで再起動。

 

再度画面にアクセスします。

f:id:g1034725:20181207002038p:plain

上記エラーであれば、映し出す画面のデータが返ってきていないということなので、Unicornが原因であることが考えられます。

ec2 var/www/アプリ名/currentまで入リます

Unicornをkillして、再度復活させましょう。

用いるコマンドは下記になります。

ps aux | grep unicorn

で出てきた ### masterプロセス のunicornをkillします。

kill -9 hogehoge 

再度killできているのか確認のため、 ps aux | grep unicornで確認する。

masterのプロセスが復活していれば、無事終了です。

画面へと飛びましょう。

それでもまだ画面が映らないという方は、ログを見ましょう。

ec2 /var/www/アプリ名/current/log

tail -50 production.rb

上記コマンドを打ち、production環境(本番環境)で何が起こっているのか、把握するようにしましょう。

本番環境で何かエラーが発生している場合は全てか下記画面になります。

f:id:g1034725:20181207002038p:plain

ローカル環境のようにエラーの種類を画面上で確かめることはできません。

ログを見ると、ローカル環境と同じようにエラーを確認することができるようになるので、ぜひお試しください。

こんばんはこれまで。

明日からRuby楽しむぞ〜!!!

コメント

タイトルとURLをコピーしました