fastcgiとdjangoを使用して、nginxのエラーログはどこにありますか


359

私はfastcgi + nginxでdjangoを使用しています。この場合、ログ(エラー)の保存場所を知りたい

回答:


481

エラーはnginxログファイルに保存されます。nginx設定ファイルのルートで指定できます。

error_log  /var/log/nginx/nginx_error.log  warn;

マックOS Xとの自作、ログファイルは次の場所にデフォルトによって発見されました:

/usr/local/var/log/nginx

11
これはおそらくバージョンに依存しますが、私のログは中にあります:/opt/nginx/logs/error.log
jmarceli '29

49
Mac OS Xでhomebrewを使用する場合:/ usr / local / var / log / nginx。lfenderの参照答え
フェリックス・ガニオン-グルニエ

11
ubuntuでは私はそれを持ってい/var/log/nginx/error.logます。nginx.confファイルをチェックしてerror_log設定を見つけるのが最善です。
MarthyM 2016

その情報はどこで見つけましたか?
etiennejcharles

300

別の解決策を探していました。

デフォルトでは、システム(x86 Arch)で構成が設定される前のエラーログは次の場所にあります。

/var/log/nginx/error.log

1
どうやらこれは、--error-log-pathコンパイルオプションtrac.nginx.org/nginx/ticket/147
Michael

ラズベリーpi3の場所
Bludau Media '19

161

lsofほとんどの場合、(開いているファイルのリスト)を使用して、構成を知らなくても開いているログファイルを見つけることができます。

例:

httpdのPIDを見つけます(nginxおよび他のプログラムにも同じ概念が適用されます)。

$ ps aux | grep httpd
...
root     17970  0.0  0.3 495964 64388 ?        Ssl  Oct29   3:45 /usr/sbin/httpd
...

次にlsof、PID を使用して開いているログファイルを検索します。

$ lsof -p 17970 | grep log
httpd   17970 root    2w   REG             253,15     2278      6723 /var/log/httpd/error_log
httpd   17970 root   12w   REG             253,15        0      1387 /var/log/httpd/access_log

lsof何も出力されない場合は、ログファイルが見つかるはずでしたが、を使用して同じコマンドを発行しsudoます。

ここでもう少し読むことができます


4
これは覚えておくと便利です。ログファイルの場所を推測する必要はもうありません
Yo Ludke

12
これは私に釣り方を教えました。私がもっと
賛成できれ

+1見方の答え。nginxの別のインストールからのログを探していましたが、トップの答えにはなりませんでした。
Robert Dundon

/procファイルシステムでLinux上の同様のデータを突くことができます。/proc/${pid}/fd開いているファイル、パイプ、デバイスなどへのシンボリックリンク
Avindra Goolcharan

91

次のコマンドを実行して、エラーログを確認します。

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

39

私のngninxログはここにあります:

/usr/local/var/log/nginx/*

nginx.confカスタムログにダンプするディレクティブがあるかどうかを確認することもできます。

nginx -tあなたのを見つけるために実行しますnginx.conf

# in ngingx.conf
error_log  /usr/local/var/log/nginx/error.log;
error_log  /usr/local/var/log/nginx/error.log  notice;
error_log  /usr/local/var/log/nginx/error.log  info;

Nginxは通常、/usr/localまたはで設定され/etc/ます。ログをダンプするようにサーバーを構成することもできます/var/log

nginxインストールの代替の場所があり、他のすべてが失敗した場合、findコマンドを使用して選択したファイルを見つけることができます。

find /usr/ -path "*/nginx/*" -type f -name '*.log'ここで、/usr/あなたが検索を開始したいフォルダです。


NginxをHomebrewとともにインストールした場合、ログはここにあります。
Sridhar Sarnobat

9

Linuxサーバー上のログの場所

Apache  /var/log/httpd/

IIS  C:\inetpub\wwwroot\

Node.js  /var/log/nodejs/

nginx  /var/log/nginx/

Passenger  /var/app/support/logs/

Puma  /var/log/puma/

Python  /opt/python/log/

Tomcat  /var/log/tomcat8


2

ターミナルでこのコマンドを入力してください

sudo cat /var/log/nginx/error.log

1
これは答えではなく、代わりにコメントにする必要があります。十分な評判を得ると、コメントできるようになります。
mrun 2018年

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.