Fastcgi और django का उपयोग करके मुझे nginx के त्रुटि लॉग कहां मिल सकते हैं


359

मैं django को fastcgi + nginx के साथ उपयोग कर रहा हूं। मैं जानना चाहता हूं कि इस मामले में लॉग्स (त्रुटि) कहाँ संग्रहीत हैं

जवाबों:


481

त्रुटियाँ nginx लॉग फ़ाइल में संग्रहीत की जाती हैं। आप इसे nginx config फाइल के रूट में निर्दिष्ट कर सकते हैं।

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

Homebrew के साथ Mac Os X पर , लॉग फ़ाइल निम्न स्थान पर डिफ़ॉल्ट रूप से पाई गई:

/usr/local/var/log/nginx

11
यह शायद संस्करण पर निर्भर है, लेकिन मेरा लॉग इन है:/opt/nginx/logs/error.log
२६:२६ पर jmarceli

49
होमब्रे के साथ मैक ओएस एक्स पर: / usr / स्थानीय / var / लॉग / nginx। lfender का जवाब
फेलिक्स

11
Ubuntu पर मेरे पास है /var/log/nginx/error.lognginx.confफ़ाइल की जांच करना और error_logसेटिंग ढूंढना सबसे अच्छा है ।
१५:१६ पर मारथी

आपको वह जानकारी कहां से मिली?
एटिनेर्जचर्ल्स

300

मैं एक अलग समाधान की तलाश में था।

त्रुटि लॉग, डिफ़ॉल्ट रूप से, मेरे सिस्टम (x86 Arch) पर किसी भी कॉन्फ़िगरेशन को सेट करने से पहले पाया गया था:

/var/log/nginx/error.log

1
जाहिरा तौर पर यह --error-log-pathसंकलन विकल्प trac.nginx.org/nginx/ticket/147 के
माइकल बर्कोव्स्की

रास्पबेरी pi3 पर इसका स्थान
Bludau Media

161

आप lsofकॉन्फ़िगरेशन को जाने बिना ओपन लॉग फ़ाइलों को खोजने के लिए ज्यादातर मामलों में (खुली फ़ाइलों की सूची) का उपयोग कर सकते हैं ।

उदाहरण:

Http के PID को खोजें (nginx और अन्य कार्यक्रमों के लिए एक ही अवधारणा लागू होती है):

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

फिर lsofपीआईडी ​​के साथ प्रयोग करके ओपन लॉग फाइल खोजें :

$ 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
यह याद रखने के लिए एक अच्छी चाल है .. कोई और अधिक अनुमान लगा रहा है कि लॉग फाइलें कहाँ हो सकती हैं
यो लुडके

12
इसने मुझे सिखाया कि मैं मछली कैसे बनाऊं; काश मैं और अधिक
उत्थान

+1 कैसे देखना है पर एक उत्तर के लिए। मैं nginx की एक अलग स्थापना से लॉग की तलाश कर रहा था और यह शीर्ष उत्तर में नहीं था।
रॉबर्ट डंडन

आप /procफाइल सिस्टम में लिनक्स पर समान डेटा पर प्रहार कर सकते हैं । /proc/${pid}/fdखुली फाइलों, पाइपों, उपकरणों आदि के लिए
सहानुभूति है


39

मेरे नगीनक्स लॉग यहां स्थित हैं:

/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/वह फ़ोल्डर कहाँ है जिससे आप खोज शुरू करना चाहते हैं।


लॉग यहां होंगे यदि आपने होमब्रे के साथ नग्नेक्स स्थापित किया है।
श्रीधर सरनोबत

9

लिनक्स सर्वर पर लॉग स्थान

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
यह एक उत्तर नहीं है और इसके बजाय एक टिप्पणी होनी चाहिए। एक बार जब आपके पास पर्याप्त प्रतिष्ठा होगी तो आप टिप्पणी कर पाएंगे।
मृत्युंजय

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.