ServBay में लॉग फाइलें देखें: डिबगिंग और ट्रबलशूटिंग गाइड
वेब डेवेलपमेंट और सर्वर मैनेजमेंट के दौरान, लॉग फाइलें समस्याओं के निदान, प्रदर्शन की निगरानी और एप्लिकेशन के व्यवहार को समझने के लिए अत्यंत महत्वपूर्ण हैं। ServBay एक शक्तिशाली लोकल वेब डेवेलपमेंट एनवायरनमेंट है, जिसमें कई सॉफ्टवेयर पैकेज (जैसे वेब सर्वर, डाटाबेस, प्रोग्रामिंग लैंग्वेज इंटरप्रेटर आदि) एकीकृत हैं, और इनके लॉग्स का केंद्रीकृत प्रबंधन उपलब्ध है।
इस लेख में, हम ServBay में लॉग फाइलों को देखने के दो मुख्य तरीकों पर चर्चा करेंगे: macOS टर्मिनल कमांड लाइन के माध्यम से एवं ServBay के ग्राफिकल यूज़र इंटरफेस (GUI) का उपयोग कर। इन तरीकों को सीखकर आप ServBay एनवायरनमेंट में डिबगिंग और समस्या निवारण की दक्षता काफी बढ़ा सकते हैं।
लक्षित पाठक: वेब डेवेलपर्स जो ServBay के माध्यम से लोकल डेवेलपमेंट करते हैं, और जिनकी टेक्नोलॉजी स्टैक PHP, Node.js, Python, Go, Java, Ruby, Rust, .NET, डाटाबेस (MySQL, PostgreSQL, MongoDB, MariaDB), कैशिंग सर्विस (Redis, Memcached), वेब सर्वर (Caddy, Nginx, Apache) आदि तक फैली हुई है।
लॉग फाइलों का महत्व
लॉग फाइलें क्यों इतनी जरूरी हैं?
- त्रुटि निदान: एप्लिकेशन या सर्वर क्रैश, कॉन्फ़िगरेशन गलतियाँ, परमिशन की समस्या आदि की विस्तृत जानकारी आमतौर पर लॉग फाइलों में मिलती है।
- व्यवहार विश्लेषण: यूज़र रिक्वेस्ट, सर्वर प्रतिक्रिया, डाटाबेस क्वेरीज की जानकारी प्रदर्शन अनुकूलन और असामान्य पैटर्न पहचानने में मदद करती है।
- सुरक्षा ऑडिट: लॉग्स संभावित सुरक्षा मामलों या अनधिकृत एक्सेस अटेम्प्ट्स को दर्ज करते हैं।
- प्रदर्शन निगरानी: कुछ लॉग्स अनुरोध संसाधन समय, रिसोर्स उपयोग आदि जैसी प्रदर्शन-संबंधी जानकारी देते हैं।
ServBay सभी सॉफ्टवेयर पैकेजों के लॉग्स का केंद्रीकृत प्रबंधन करता है, जिससे डेवलपर्स के लिए यह सब कुछ एक ही जगह देखना आसान हो जाता है।
ServBay लॉग फाइलों का संग्रहण स्थान
ServBay की सभी लॉग फाइलें निम्नलिखित डायरेक्टरी में एक साथ संग्रहित होती हैं:
/Applications/ServBay/logs
1
इस डायरेक्टरी में ServBay और सभी इंस्टॉल तथा रन हो रहे सॉफ्टवेयर पैकेजों (जैसे PHP, Caddy, Nginx, MySQL, PostgreSQL, Redis आदि) के लॉग्स होते हैं, जो प्रायः सॉफ्टवेयर के नाम या वर्शन के हिसाब से सब-डायरेक्टरी में होते हैं।
तरीका 1: macOS टर्मिनल के जरिए लॉग फाइलों तक पहुँच
जो डेवलपर्स कमांड लाइन से परिचित हैं, उनके लिए टर्मिनल के जरिए लॉग फाइलें पढ़ना अत्यधिक लचीला और शक्तिशाली तरीका है (उदाहरण के लिए grep
फिल्टर करना, tail -f
से लाइव मॉनिटरिंग करना आदि)।
1. टर्मिनल ऐप खोलना
macOS में “Terminal” एप्लिकेशन खोलें।
2. ServBay लॉग डायरेक्टरी में जाएँ
cd
कमांड का उपयोग कर ServBay लॉग डायरेक्टरी में जाएँ:
bash
cd /Applications/ServBay/logs
1
3. लॉग फाइलों व डायरेक्टरी की संरचना देखें
लॉग डायरेक्टरी में, ls
कमांड से सभी लॉग फाइलें और सब-डायरेक्टरियाँ देखें:
bash
ls -l
1
आपको कुछ इस तरह की संरचना दिखाई देगी (आपके द्वारा इंस्टॉल किए गए पैकेजों के अनुसार):
caddy/
dnsmasq.log
mailpit.log
mariadb/
memcached.log
mongodb/
mysql/
nginx/
apache/
php/
|____5.6/
|____7.0/
|____7.1/
|____7.2/
|____7.3/
|____7.4/
|____8.0/
|____8.1/
|____8.2/
|____8.3/
|____8.4/
postgresql/
redis.log
xdebug/
|____5.6/
|____7.0/
|____7.1/
|____7.2/
|____7.3/
|____7.4/
|____8.0/
|____8.1/
|____8.2/
|____8.3/
|____8.4/
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
4. किसी विशेष लॉग फाइल की सामग्री देखें
आप स्टैंडर्ड कमांड लाइन टूल (जैसे cat
, less
, tail
) से लॉग फाइलें पढ़ सकते हैं।
cat <फाइल_नाम>
: पूरी फाइल एक साथ दिखाएं (छोटी फाइलों के लिए उपयुक्त)।less <फाइल_नाम>
: फाइल को पेज के हिसाब से स्क्रॉल करें, सर्च करें (बड़ी फाइलों के लिए उपयुक्त)।tail -f <फाइल_नाम>
: फाइल में होने वाले नवीनतम अपडेट लाइव दिखाएं—डिबगिंग के लिए बहुत उपयोगी।
उदाहरण:
PHP 8.3 के FPM लॉग देखें:
bashcat php/8.3/php-fpm.log # या पेज-वाइज पढ़ें less php/8.3/php-fpm.log # या लाइव मॉनिटर करें tail -f php/8.3/php-fpm.log
1
2
3
4
5Caddy वेब सर्वर का एरर लॉग देखें: Caddy के लॉग आमतौर पर
caddy
सब-डायरेक्टरी में होते हैं—पहले वहाँ जाएँ, फिर विशेष फाइल देखें।bashcd caddy ls # लॉग फाइलों के नाम देखें, जैसे error.log tail -f error.log
1
2
3Nginx वेब सर्वर का एरर लॉग देखें: Nginx के लॉग आमतौर पर
nginx
सब-डायरेक्टरी में होते हैं।bashcd nginx ls # लॉग फाइलों के नाम देखें, जैसे error.log, access.log tail -f error.log
1
2
3MySQL 8 का लॉग देखें: MySQL के लॉग आमतौर पर
mysql
सब-डायरेक्टरी में होते हैं।bashcd mysql ls # लॉग फाइलों के नाम देखें, जैसे error.log, slow.log tail -f error.log
1
2
3PostgreSQL लॉग देखें: PostgreSQL लॉग सामान्यतः
postgresql
सब-डायरेक्टरी में होते हैं।bashcd postgresql ls # लॉग फाइलों के नाम देखें tail -f postgresql.log
1
2
3Redis लॉग देखें:
bashtail -f redis.log
1
5. grep
से लॉग्स को फ़िल्टर करें
यदि लॉग फाइलें बहुत बड़ी हों, तो grep
कमांड खास जानकारी खोजने में बहुत मददगार है।
उदाहरण:
PHP 8.3 लॉग में “error” शब्द वाले सभी लाइन खोजें:
bashgrep "error" php/8.3/php-fpm.log
1Caddy एरर लॉग में किसी विशिष्ट अनुरोध का लॉग देखें:
bashtail -f caddy/error.log | grep "servbay.demo"
1
tail -f
और grep
को मिलाकर आप विशेष लॉग एंट्रीज़ रियल टाइम में बहुत प्रभावी ढंग से फ़िल्टर कर सकते हैं।
तरीका 2: ServBay ग्राफिकल यूज़र इंटरफेस (GUI) के माध्यम से
जो लोग कमांड लाइन से सहज नहीं हैं, उनके लिए ServBay GUI द्वारा लॉग देखने का सीधा, सुगम तरीका है।
1. ServBay ऐप खोलना
macOS के ‘Applications’ फ़ोल्डर में ServBay आइकॉन देखें और उसे डबल-क्लिक कर खोलें।
2. GUI से लॉग्स देखें
ServBay निम्नलिखित कई पैनल्स में लॉग्स तक त्वरित पहुंच प्रदान करता है:
‘ओवरव्यू (Dashboard)’ पैनल के माध्यम से
ServBay विंडो खुलने पर डिफॉल्ट रूप से ‘ओवरव्यू’ पैनल में रहें। इसमें ‘क्विक सर्विस मैनेजमेंट’ सेक्शन में, प्रत्येक इंस्टॉल या रन हो रहे पैकेज के पास एक लॉग आइकॉन (आमतौर पर दस्तावेज़) दिखता है। इस आइकॉन पर क्लिक कर आप सीधे उस पैकेज की लॉग फाइल खोल सकते हैं।
चित्र: ओवरव्यू पैनल में त्वरित लॉग एक्सेस
‘पैकेजेस (Packages)’ पैनल के माध्यम से
- ServBay GUI के बाईं ओर ‘Packages’ पैनल में जाएँ।
- प्रत्येक पैकेज के दाईं ओर भी लॉग आइकॉन दिखाई देगा, उस पर क्लिक कर संबधित लॉग को खोलें।
चित्र: पैकेज पैनल से लॉग एक्सेस करना
‘वेबसाइट्स (Websites)’ पैनल के माध्यम से
- बाईं ओर ‘Websites’ पैनल में जाएँ।
- हर वेबसाइट सेटिंग के दाईं ओर लॉग आइकॉन होता है—इस पर क्लिक करने से संबंधित वेब सर्वर (जैसे Caddy, Nginx, Apache) के एक्सेस या एरर लॉग खुलते हैं — खासतौर पर किसी वेबसाइट की समस्या पता करने के लिए ये बहुत उपयोगी है।
चित्र: वेबसाइट पैनल से संबंधित लॉग एक्सेस
‘पैकेज कंफिग्स (Package Configs)’ पैनल के माध्यम से
- ‘Package Configs’ पैनल में जाएँ।
- जिस भी पैकेज को कंफिगर करना हो (जैसे PHP 8.3), उस कंफिगरेशन डिटेल्स पेज के ऊपरी दाएं कोने पर लॉग आइकॉन पर क्लिक करके आप उस संस्करण के लॉग देख सकते हैं।
चित्र: पैकेज कंफिग पैनल से लॉग एक्सेस
GUI से लॉग देखने का फायदा यह है कि आपको फाइल पाथ या कमांड याद नहीं रखना पड़ता—यह बहुत ही सहज और तेज है, खासतौर पर हालिया एरर या स्टेटस देखने के लिए।
ServBay की सामान्य लॉग फाइलें और उनका उपयोग
विभिन्न लॉग फाइलों के कार्य को जानना आपको समस्या का समाधान जल्दी करने में मदद करता है:
/Applications/ServBay/logs/caddy/
: Caddy वेब सर्वर के लॉग, जैसेaccess.log
(सभी इनकमिंग रिक्वेस्ट्स) औरerror.log
(सर्वर की एरर)।/Applications/ServBay/logs/nginx/
: Nginx के लॉग, सामान्यतःaccess.log
वerror.log
।/Applications/ServBay/logs/apache/
: Apache वेब सर्वर के लॉग—समान रूप सेaccess.log
औरerror.log
।/Applications/ServBay/logs/php/<संस्करण>/php-fpm.log
: PHP-FPM प्रोसेस, स्टार्टअप एरर, और PHP स्क्रिप्ट एरर की जानकारी (यदि PHP एरर लॉग यहीं पॉइंट किए हैं)।/Applications/ServBay/logs/mysql/error.log
: MySQL सर्वर स्टार्ट, शटडाउन, रनिंग एरर, वार्निंग व क्रैश जानकारी।/Applications/ServBay/logs/mysql/slow.log
: निष्पादन समय सीमा से अधिक SQL क्वेरीज़ (यदि सक्षम किया गया)।/Applications/ServBay/logs/mariadb/error.log
: MariaDB सर्वर की एरर और स्टेटस, MySQL की तरह।/Applications/ServBay/logs/postgresql/postgresql.log
: PostgreSQL सर्वर के ईवेंट्स जैसे कनेक्ट, क्वेरी एरर, कंफिग समस्याएँ।/Applications/ServBay/logs/mongodb/mongodb.log
: MongoDB सर्वर स्टार्ट, कनेक्शन, रेप्लिकेशन, शार्डिंग व रनटाइम एरर।/Applications/ServBay/logs/redis.log
: Redis की स्टार्टअप, कंफिग लोडिंग, पर्सिस्टेंस एवं रनटाइम एरर।/Applications/ServBay/logs/memcached.log
: Memcached कैश सर्विस के स्टार्ट व रनिंग इन्फॉर्मेशन।/Applications/ServBay/logs/mailpit.log
: Mailpit के रनिंग स्टेटस व रिसीव्ड ईमेल।/Applications/ServBay/logs/xdebug/<संस्करण>/
: XDebug डीबगर के लॉग्स—डिबग सेशन जानकारी (यदि सक्षम है)।/Applications/ServBay/logs/dnsmasq.log
: ServBay अन्दर DNS (Dnsmasq) क्वेरी व रेसोल्यूशन लॉग—लोकल डोमेन की समस्या पहचानने के लिए।
लॉग फाइल प्रबंधन और सफाई
लॉग फाइलें समय के साथ बड़ी हो सकती हैं और काफी डिस्क स्पेस घेर सकती हैं। लॉग फाइलों का आकार नियमित रूप से जांचते रहें तथा जरूरत न होने पर उन्हें साफ या आर्काइव करते रहें।
टर्मिनल से आप किसी भी पुरानी, बेकार लॉग फाइल को हटा सकते हैं। उदाहरण, किसी विशेष PHP एरर लॉग को हटाने के लिए:
bash
rm /Applications/ServBay/logs/php/7.4/php-fpm.log
1
महत्वपूर्ण सुझाव :
- किसी लॉग फाइल को डिलीट करने से पहले, सुनिश्चित करें कि उसमें आपको कोई जरूरी जानकारी नहीं चाहिए या आपने उसका बैकअप ले लिया है।
- जो फाइल इस समय लिखी जा रही है उसे तुरंत डिलीट करना सही नहीं—इससे सर्विस में समस्या आ सकती है। सबसे बेहतर है कि पहले संबंधित सर्विस को रोक दें, या लॉग रोटेशन टूल (कुछ सर्विसेज में यह पहले से सेट होता है) का इस्तेमाल करें।
सारांश
लॉग फाइलें देखना व एनालाइस करना लोकल डेवेलपमेंट एनवायरनमेंट के लिए एक अपरिहार्य कौशल है। ServBay सरल यूनिफाइड डायरेक्टरी संरचना व सुविधाजनक GUI एक्सेस देता है, जिससे यह प्रक्रिया आसान हो जाती है। चाहे आप कमांड लाइन के लचीलापन व शक्ति पसंद करें, या GUI की सहजता—ServBay दोनों ही तरीके से प्रभावी लॉग देखने की सुविधा देता है। जरूरी सेवाओं के लॉग्स नियमित जांचते रहें, इससे आप समस्याओं की शीघ्र पहचान कर सकते हैं और अपना लोकल डेवेलपमेंट वातावरण स्थिर और विश्वसनीय बनाए रख सकते हैं।