Ruby on Rails
लकड़हारा
खोज…
Rails.logger
हमेशा का उपयोग करें Rails.logger.{debug|info|warn|error|fatal}
के बजाय puts
। यह आपके लॉग को मानक लॉग प्रारूप में फिट करने की अनुमति देता है, एक टाइमस्टैम्प है और एक स्तर है इसलिए आप चुनते हैं कि क्या वे एक विशिष्ट वातावरण में दिखाए जाने के लिए पर्याप्त महत्वपूर्ण हैं। आप अपने रेल एप्लिकेशन पर्यावरण नाम के साथ log/
डायरेक्टरी के तहत अपने एप्लिकेशन के लिए अलग लॉग फाइल देख सकते हैं। जैसे: development.log
या production.log
या staging.log
आप LogRotate के साथ आसानी से रेल उत्पादन लॉग को घुमा सकते हैं। आपको बस नीचे दिए गए छोटे कॉन्फ़िगरेशन को करना होगा
अपने पसंदीदा लिनक्स संपादक vim
या nano
साथ /etc/logrotate.conf
खोलें और नीचे इस फ़ाइल में नीचे कोड जोड़ें।
/YOUR/RAILSAPP/PATH/log/*.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
copytruncate
}
तो, हाउ इट वर्क्स यह काल्पनिक रूप से आसान है। कॉन्फ़िगरेशन का प्रत्येक बिट निम्न करता है:
- दैनिक - लॉग फ़ाइलों को प्रत्येक दिन घुमाएँ। आप इसकी जगह साप्ताहिक या मासिक भी इस्तेमाल कर सकते हैं।
- अनुपलब्ध - यदि लॉग फ़ाइल मौजूद नहीं है, तो इसे अनदेखा करें
- रोटेट 7 - केवल 7 दिन लॉग के आसपास रखें
- कम्प्रेस - रोटेशन पर लॉग फ़ाइल को GZip करें
- देरीकंप्रेस - फ़ाइल को एक दिन घुमाएँ, फिर अगले दिन उसे संपीड़ित करें ताकि हम यह सुनिश्चित कर सकें कि यह रेल सर्वर के साथ हस्तक्षेप नहीं करेगा
- नोटिफ़्टी - लॉग खाली होने पर फ़ाइल को घुमाएँ नहीं
- copytruncate - लॉग फ़ाइल की प्रतिलिपि बनाएँ और फिर उसे खाली करें। यह सुनिश्चित करता है कि लॉग फ़ाइल रेल हमेशा मौजूद रहती है इसलिए आपको समस्याएँ नहीं आएंगी क्योंकि फ़ाइल वास्तव में नहीं बदलती है। यदि आप इसका उपयोग नहीं करते हैं, तो आपको हर बार अपने रेल एप्लिकेशन को फिर से शुरू करना होगा।
रन लॉगोटेट जब से हमने इस कॉन्फ़िगरेशन को लिखा है, आप इसका परीक्षण करना चाहते हैं।
मैन्युअल रूप से लॉगरोट चलाने के लिए, बस करें: sudo /usr/sbin/logrotate -f /etc/logrotate.conf
बस।