लॉगोट के साथ फाइल डिलीट करें


13

क्या यह संभव है कि वास्तव में उन्हें घुमाने के लिए logrotate w / o का उपयोग करके किसी निर्देशिका में लॉग फ़ाइलों को हटाना आवश्यक है? हमारे पास एक ऐप है जो निम्न प्रारूप में लॉग जेनरेट करता है: app.log.DD_MM_YYYY। मैं निम्नलिखित कॉन्‍फ़िगर होने वाले लोगो के साथ असफल हूँ:

/opt/log/app/app.log.* {
         rotate 0
         missingok
         nomail
}

क्या लॉग रोटेट ऐसा कर सकता है या मुझे सिर्फ एक स्क्रिप्ट लिखनी चाहिए और इसे क्रोन के भीतर रखना चाहिए?

सर्वोत्तम, -यूलियन


यदि आपको उन लॉग की आवश्यकता नहीं है, तो अपने ऐप पर लॉगिंग सुविधा को अक्षम क्यों न करें?
डेह

1
मुझे खेद है, लेकिन मैं इसे एक जवाब के रूप में नहीं गिन सकता। अपनी जिज्ञासा को खिलाने के लिए, हमें डिबगिंग जैसे विभिन्न कार्यों के लिए उन लॉग की आवश्यकता है, हम सिर्फ उन्हें सड़ने के लिए नहीं रखना चाहते हैं।
इउलियन

जवाबों:


16

उस स्थिति में आप पोस्ट्रेट का उपयोग करना चाह सकते हैं। नीचे दिए गए उदाहरण में, पोस्टरोजेट उन फ़ाइलों को हटा देगा जो पुराने हैं कि लॉग को घुमाए जाने के 1 दिन बाद, अपनी आवश्यकताओं को फिट करने के लिए इसे संशोधित करने के लिए स्वतंत्र महसूस करें।

/opt/log/app/app.log.* {
        missingok
        nomail
postrotate
        /usr/bin/find /opt/log/app/ -name "app.log.*" -type f -mtime +0 -exec rm {} \;
endscript
}

4

लॉगोट्रेट का उद्देश्य कस्टम समय अंतराल पर लॉग फ़ाइलों की एक कस्टम संख्या रखना है। मैं आपके कार्य के लिए क्रोन का उपयोग करूंगा। आप यहां लॉगोट्रेट के साथ क्या कर सकते हैं इसके बारे में अधिक जानकारी: http://www.jamescoyle.net/cheat-sheets/676-logrotate-cheat-sheet


2
कृपया लिंक रोट को रोकने के लिए लिंक-केवल उत्तर पोस्ट न करें। इसके बजाय, लिंक से सबसे प्रासंगिक जानकारी को अपने उत्तर में जोड़ें या वैकल्पिक रूप से, लिंक को उत्तर के बजाय टिप्पणी के रूप में पोस्ट करें। देखें इस अधिक जानकारी के लिए सहायता केंद्र लेख।
स्वेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.