मेरे पास एक डिमन है जो लॉग फ़ाइल (development.log या production.log) को बहुत तेज़ी से भरता है जो लगातार चलता है। कुछ आकार के बाद लॉग फ़ाइल को हटाने या निश्चित दिन से पहले हिस्से को हटाने का सबसे अच्छा तरीका क्या है।कुछ आकार के बाद रेल लॉग फ़ाइल को कैसे हटाएं
उत्तर
लॉग रोटेशन सेट अप करने का सबसे अच्छा तरीका है, लेकिन आप यह कैसे करते हैं, यह बहुत ही प्लेटफार्म निर्भर है, ताकि आपको विकास और उत्पादन दोनों के लिए उपयोग करने के बारे में एक टिप्पणी जोड़नी चाहिए।
/path/to/rails_root_for_app/log/production.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
create 640 capistrano capistrano
}
यह एक में लॉग चले जाएँगे:
लिनक्स पर चल रहा हमारे क्षुधा के लिए, हम एक फ़ाइल प्रत्येक एप्लिकेशन के लिए /etc/logrotate.d/appname, कि कुछ इस तरह दिखता है दिन में एक बार नई फाइल, पिछले 7 दिनों के प्रत्येक के लिए संपीड़ित बैकअप फ़ाइल रखना।
तुम सिर्फ जबकि डेमॉन चल रहा है उस में डेटा के किसी भी रखने के बिना फ़ाइल खाली करने के लिए चाहते हैं, तो बस एक खोल से ऐसा करते हैं:
> /path/to/rails_root_for_app/log/development.log
इस 0 बाइट्स लंबाई करने के लिए फ़ाइल काटना होगा ।
या आप प्रवेश करने के लिए syslog
config.logger = Logger.new(config.log_path, 50, 1.megabyte)
प्रतिनिधि लेकिन सावधान रहना है कि एकाधिक mongrels इस के साथ मुद्दों हो सकता है कर सकते हैं।
या इससे भी बेहतर, यदि आपके सभी वातावरण मैक या लिनक्स पर हैं, और/usr/sbin/rotatelogs हैं, तो बस इसका उपयोग करें। यह अधिक लचीला है, और इसमें डेटा हानि समस्या नहीं है जो लॉग्रोटेट है (भले ही आप copytruncate का उपयोग करें)।
इस अंदर config/application.rb जोड़े (या बस config/वातावरण/production.rb अगर आप केवल prod में रोटेशन चाहते हैं):
log_pipe = IO.popen("/usr/sbin/rotatelogs #{Rails.root}/log/#{Rails.env}.%Y%m%d.log 86400", 'a')
config.logger = Logger.new(log_pipe)
(this blog post से)
मैं एक मासिक पसंद करते हैं मेरे उत्पादन.आरबी फ़ाइल में लॉग फ़ाइल
config.logger = Logger.new(config.log_path, 'monthly')
- 1. "तालिका से हटाएं" के बाद sqlite फ़ाइल आकार बदलें
- 2. लिनक्स टर्मिनल से लॉग फ़ाइल की सामग्री को कैसे हटाएं?
- 3. रेल लॉग फ़ाइल पर रूबी बड़े -> इससे पैराम हटाएं
- 4. रेल लॉग फ़ाइल आकार पर रूबी बहुत बड़ी
- 5. कॉल एंड के बाद कॉल लॉग से कॉल हटाएं
- 6. फ़ाइल को कैसे हटाएं?
- 7. लॉग फ़ाइल में संदिग्ध त्रुटि संदेशों को देखने के बाद
- 8. ELMAH लॉग से "Auth_Password" को कैसे हटाएं
- 9. फीडआउट और कुछ सेकंड के बाद तत्व हटाएं
- 10. रेल फ़ाइल अपलोड आकार सीमा
- 11. कुछ समय बाद उपयोगकर्ताओं को लॉग इन किया गया
- 12. NERDTree - फ़ाइल को कैसे हटाएं
- 13. log4j द्वारा दैनिक रोलिंग और अधिकतम फ़ाइल आकार के साथ लॉग फ़ाइल को कैसे नियंत्रित करें?
- 14. फ़ाइल आकार कैसे प्राप्त करें और लुआ में फ़ाइल को कैसे हटाएं?
- 15. रेल: लॉग फ़ाइल तक पहुंचने में असमर्थ
- 16. एसडी कार्ड से फ़ाइल को कैसे हटाएं?
- 17. सृजन से एक समय के बाद सत्र फ़ाइलों को हटाएं
- 18. ActiveMQ जर्नल लॉग आकार
- 19. PHP :: पढ़ने के बाद सर्वर से फ़ाइल को कैसे हटाएं। Unlink() को
- 20. कुछ आकार
- 21. Response.TransmitFile और ट्रांसमिशन के बाद इसे हटाएं
- 22. एंड्रॉइड: आंतरिक छवि फ़ाइल को कैसे हटाएं
- 23. फ़ाइल को हटाने के बाद IOException
- 24. अंतिम स्लैश के बाद सभी को कैसे हटाएं?
- 25. कुछ खोज के बाद
- 26. कार्य घोषणा के बाद = हटाएं
- 27. स्ट्रिंग के बाद अक्षर हटाएं?
- 28. फ़ाइल को कुछ आकार में कैसे छोटा करें लेकिन अंत अनुभाग रखें?
- 29. एक निश्चित आकार के तहत लॉग फ़ाइलों को रखने
- 30. लॉग फ़ाइल को गतिशील रूप से लॉग फ़ाइल
आपको यह पता लगाने के लिए अपनी खोज को संपादित करना चाहिए कि आप किस ओएस पर चल रहे हैं, और कुछ और टैग भी जोड़ें, क्योंकि यह रा से अधिक ओएस विशिष्ट है विशिष्ट ils। –
प्रश्न विशेष रूप से लॉग रोटेशन का अनुरोध करने का प्रश्न: http://stackoverflow.com/questions/4883891/ruby-on-rails-production-log-rotation/4883967#4883967 –