Fastcgi ve django kullanarak nginx hata günlüklerini nerede bulabilirim


359

Fastcgi + nginx ile django kullanıyorum. Bu durumda günlüklerin (hata) nerede depolandığını bilmek istiyorum

Yanıtlar:


481

hatalar nginx günlük dosyasında saklanır. nginx config dosyasının kök dizininde belirtebilirsiniz.

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

On Mac Os X ile Homebrew , günlük dosyası aşağıdaki konumda varsayılan olarak tespit edildi:

/usr/local/var/log/nginx

11
Belki sürüm bağımlı ama /opt/nginx/logs/error.log
günlüğüm

49
Mac OS X'te homebrew ile: / usr / local / var / log / nginx. lfender'ın cevabını gör
Félix Gagnon-Grenier

11
Ubuntu üzerinde ben var /var/log/nginx/error.log. nginx.confDosyayı kontrol etmek ve error_logayarı bulmak en iyisidir .
MarthyM


161

lsofÇoğu durumda yapılandırmayı bilmeden açık günlük dosyalarını bulmak için (açık dosyaların listesi) kullanabilirsiniz .

Misal:

Httpd PID'sini bulun (nginx ve diğer programlar için aynı kavram geçerlidir):

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

Ardından lsofPID ile açık günlük dosyalarını arayın :

$ 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

Eğer lsofsiz günlük dosyalarını beklenen rağmen baskılar hiçbir şey bulunacak, kullanarak aynı komutu sudo.

Burada biraz daha okuyabilirsiniz .


4
hatırlamak güzel bir numara .. artık günlük dosyalarının nerede olabileceğini tahmin etmek yok
Yo Ludke

12
bu bana balık tutmayı öğretti; keşke daha fazla
oy

+1 Nasıl görüneceğine ilişkin bir cevap için. Farklı bir nginx kurulumundan günlükler arıyordum ve üst cevapta değildi.
Robert Dundon

/procdosya sistemindeki linux ile ilgili benzer verileri düzeltebilirsiniz . /proc/${pid}/fdaçık dosyalara, borulara, cihazlara vb. bağlantıları vardır
Avindra Goolcharan

91

Hata günlüklerini kontrol etmek için bu komutu çalıştırın:

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

39

Ngninx günlüklerim burada:

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

Ayrıca nginx.conf , özel günlüğe dökülen yönergelerinizin olup olmadığını .

nginx -tbulmak için çalıştırın 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 genellikle /usr/localveya olarak ayarlanır /etc/. Sunucu, günlükleri dökecek şekilde yapılandırılabilir /var/log.

Nginx kurulumunuz için alternatif bir konumunuz varsa ve diğer tümü başarısız olursa, istediğiniz finddosyayı bulmak için komutu kullanabilirsiniz .

find /usr/ -path "*/nginx/*" -type f -name '*.log', /usr/aramaya başlamak istediğiniz klasör nerede .


Nginx'i Homebrew ile kurduysanız, günlükler burada olacaktır.
Sridhar Sarnobat

9

Linux sunucularındaki konumu günlüğe kaydeder

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

terminale bu komutu yazın

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

1
Bu bir cevap değildir ve bunun yerine bir yorum olmalıdır. Yeterli bir üne sahip olduğunuzda yorum yapabilirsiniz.
mrun

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.