🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Q&A

解決済

1回答

1974閲覧

Nginxのエラーログが出力されない

Takumim

総合スコア12

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

0グッド

0クリップ

投稿2021/02/13 11:24

編集2021/02/14 00:52

前提・実現したいこと

Nginxのエラーログを出力したい。

本番環境(AWS)にデプロイした後、Webサイトで該当アプリケーションを確認しようとしたところ、
502 Bad Gateway nginx/1.18.0
と表示されました。
その為、Nginxのエラーログを確認しようとターミナルでEC2にSSHでログインし、

sudo tail -f /var/log/nginx/error.log

と入力

発生している問題・エラーメッセージ

上記のように

sudo tail -f /var/log/nginx/error.log

と入力して20分ほど待っても何も表示されません。

##試したこと
nginxのログファイルがある場所を確認

error_log /var/log/nginx/error.log;

と表示されている為、こちらは問題なさそう

##補足情報(FW/ツールのバージョンなど)
macOS Big Sur
バージョン 11.2.1

Nginx
バージョン 1.18.0

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hentaiman

2021/02/13 11:28

> nginxのログファイルがある場所を確認 > error_log /var/log/nginx/error.log; これが怪しいので再度確認してみてはどうでしょう?
hoshi-takanori

2021/02/13 11:43

ls -l /var/log/nginx でどんなファイルがあるか確認してみましょう。 たぶん access.log もあると思いますが、そっちは何か書いてありますか?
Takumim

2021/02/13 11:54

hentaimanさん cat portfolio2.confで.confファイルを確認したところ、 upstream puma { server unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock; } server { listen 80; root /home/ec2-user/portfolio2/current/public; access_log /var/log/nginx/access.log main; error_log /var/log/nginx/error.log; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; client_max_body_size 100M; include /etc/nginx/mime.types; と表示されましたので特に問題なさそうです、、
Takumim

2021/02/13 11:57

hoshi-takanoriさん [ec2-user@ip ~]$ ls -l /var/log/nginx ls: ディレクトリ /var/log/nginx を開くことが出来ません: 許可がありません [ec2-user@ip ~]$ sudo ls -l /var/log/nginx 合計 172 -rw-rw-r-- 1 ec2-user root 0 12月 4 03:45 access.log -rw-rw-r-- 1 ec2-user root 1203 10月 16 03:21 access.log-20201016.gz -rw-rw-r-- 1 ec2-user root 2335 10月 18 03:48 access.log-20201018.gz -rw-rw-r-- 1 ec2-user root 10944 10月 19 03:06 access.log-20201019.gz -rw-rw-r-- 1 ec2-user root 8030 10月 27 03:36 access.log-20201027.gz -rw-rw-r-- 1 ec2-user root 1005 10月 28 07:40 access.log-20201028.gz -rw-rw-r-- 1 ec2-user root 4654 10月 29 03:13 access.log-20201029.gz -rw-rw-r-- 1 ec2-user root 675 11月 4 12:13 access.log-20201104.gz -rw-rw-r-- 1 ec2-user root 738 11月 10 13:46 access.log-20201110.gz -rw-rw-r-- 1 ec2-user root 31190 12月 2 04:46 access.log-20201202.gz -rw-rw-r-- 1 ec2-user root 33881 12月 4 03:45 access.log-20201204.gz -rw-rw-r-- 1 ec2-user root 0 12月 4 03:45 error.log -rw-rw-r-- 1 ec2-user root 1297 10月 16 03:21 error.log-20201016.gz -rw-rw-r-- 1 ec2-user root 1539 10月 18 03:48 error.log-20201018.gz -rw-rw-r-- 1 ec2-user root 11832 10月 19 03:06 error.log-20201019.gz -rw-rw-r-- 1 ec2-user root 12055 10月 27 03:36 error.log-20201027.gz -rw-rw-r-- 1 ec2-user root 371 10月 28 07:40 error.log-20201028.gz -rw-rw-r-- 1 ec2-user root 3347 10月 29 03:13 error.log-20201029.gz -rw-rw-r-- 1 ec2-user root 1400 11月 4 12:13 error.log-20201104.gz -rw-rw-r-- 1 ec2-user root 897 11月 10 13:46 error.log-20201110.gz -rw-rw-r-- 1 ec2-user root 2195 12月 2 04:46 error.log-20201202.gz -rw-rw-r-- 1 ec2-user root 1075 12月 4 03:45 error.log-20201204.gz このように表示されaccess.logもありましたが、今日の分のログが無い事に違和感を感じます。
hentaiman

2021/02/13 12:12

upstream定義してるだけで使ってなさそうだから確認漏れのconfがあると思うんですが、それで全部ですか? もしそれで全部ならconfミスってます。自分がrubyもrailsもサッパリ分からないので正しい設定は教えられませんが
hoshi-takanori

2021/02/13 12:14

error.log だけじゃなく access.log もサイズ 0 なんですね。アクセスがなかった日のやつは消えるのかな…。 とりあえず zcat (または gzcat) で古いログを見てみては。
Takumim

2021/02/13 12:37

hentaimanさん 上記のconfファイルと同じ階層にvirtual.confというファイルがあり中を見てみましたが、 # # A virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} と記述されており関係なさそうな感じがしました。 なので、confファイルの作成がミスっている可能性は高そうですね。
Takumim

2021/02/13 12:49

hoshi-takanoriさん サイズ0になっていますね。。 あと、zcat (または gzcat)が使えないみたいなのですが、他にファイルを確認する方法はありますかね、、? [ec2-user@ip-172-31-0-73 ~]$ zcat error.log-20201204.gz gzip: error.log-20201204.gz: No such file or directory [ec2-user@ip-172-31-0-73 ~]$ [ec2-user@ip-172-31-0-73 ~]$ gzcat error.log-20201204.gz -bash: gzcat: コマンドが見つかりません [ec2-user@ip-172-31-0-73 ~]$ cat error.log-20201204.gz cat: error.log-20201204.gz: そのようなファイルやディレクトリはありません [ec2-user@ip-172-31-0-73 ~]$ gzcat error.log-20201204.gz -bash: gzcat: コマンドが見つかりません [ec2-user@ip-172-31-0-73 ~]$ gzcat error.log -bash: gzcat: コマンドが見つかりません
hoshi-takanori

2021/02/13 12:53

sudo zcat /var/log/nginx/error.log-20201204.gz とか sudo zcat /var/log/nginx/access.log-20201204.gz | tail -100 とかでしょうか。
hentaiman

2021/02/13 12:53

ローカルでは動いてるんですか?動いているならconfのアップロード漏れです。
Takumim

2021/02/13 13:20 編集

hoshi-takanoriさん sudo zcat /var/log/nginx/error.log-20201204.gzで中を確認できました。ありがとうございます。 この時はまだ正常に動いていたので特にエラーは発生しないですね。。 ごめんなさい、アプリケーションのルートディレクトリに移動してから sudo tail -f /var/log/nginx/error.log と入力したところ、 2021/02/13 13:07:08 [error] 28937#0: *13 connect() to unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock failed (111: Connection refused) while connecting to upstream, client: 172.31.0.211, server: notworry.net, request: "GET / HTTP/1.1", upstream: "http://unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock:/", host: "172.31.0.73" 2021/02/13 13:07:11 [error] 28937#0: *15 connect() to unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock failed (111: Connection refused) while connecting to upstream, client: 172.31.3.121, server: notworry.net, request: "GET / HTTP/1.1", upstream: "http://unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock:/", host: "172.31.0.73" 2021/02/13 13:07:38 [error] 28937#0: *17 connect() to unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock failed (111: Connection refused) while connecting to upstream, client: 172.31.0.211, server: notworry.net, request: "GET / HTTP/1.1", upstream: "http://unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock:/", host: "172.31.0.73" と無事エラーログが表示されました。ありがとうございます。。
Takumim

2021/02/13 13:19

hentaimanさん ごめんなさい、アプリケーションのルートディレクトリに移動して sudo tail -f /var/log/nginx/error.log と入力したところ、 2021/02/13 13:07:08 [error] 28937#0: *13 connect() to unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock failed (111: Connection refused) while connecting to upstream, client: 172.31.0.211, server: notworry.net, request: "GET / HTTP/1.1", upstream: "http://unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock:/", host: "172.31.0.73" 2021/02/13 13:07:11 [error] 28937#0: *15 connect() to unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock failed (111: Connection refused) while connecting to upstream, client: 172.31.3.121, server: notworry.net, request: "GET / HTTP/1.1", upstream: "http://unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock:/", host: "172.31.0.73" 2021/02/13 13:07:38 [error] 28937#0: *17 connect() to unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock failed (111: Connection refused) while connecting to upstream, client: 172.31.0.211, server: notworry.net, request: "GET / HTTP/1.1", upstream: "http://unix:///home/ec2-user/portfolio2/current/tmp/sockets/puma.sock:/", host: "172.31.0.73" とエラーログが表示されました。ご迷惑おかけしました。
guest

回答1

0

自己解決

アプリケーションのルートディレクトリで

sudo tail -f /var/log/nginx/error.log

を実行したところ、エラーログが表示されました。

投稿2021/02/14 00:55

Takumim

総合スコア12

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問