में केवल gzipped लॉग फ़ाइलों को जोड़ना मैं एक सेवा बना रहा हूं जहां मैं कई स्रोतों से एक सादे पाठ प्रारूप लॉग लॉग करता हूं (प्रति स्रोत एक फ़ाइल)। मैं इन लॉगों को घुमाने का इरादा नहीं रखता क्योंकि वे हमेशा के लिए आसपास रहना चाहिए।लेखन पाइथन
इन फ़ाइलों को हमेशा के लिए छोटे बनाने के लिए मुझे उम्मीद है कि मैं उन्हें फ्लाई में घुमा सकता हूं। चूंकि वे लॉग डेटा हैं, फाइलें बहुत अच्छी तरह से संपीड़ित होती हैं।
पाइथन में केवल एकमात्र gzipped टेक्स्ट फ़ाइलों को लिखने के लिए एक अच्छा दृष्टिकोण क्या है, ताकि जब सेवा चालू और बंद हो जाए तो लेखन को बाद में फिर से शुरू किया जा सकता है? मैं कुछ लाइनों को खोने के बारे में चिंतित नहीं हूं, लेकिन यदि gzip कंटेनर स्वयं टूट जाता है और फ़ाइल अपठनीय हो जाती है तो यह नहीं है।
इसके अलावा, अगर यह नहीं जाता है, तो मैं परेशानी के लायक नहीं होने पर उन्हें आसानी से सादे पाठ के रूप में लिख सकता हूं।
भले ही आप लॉग घुमाने का इरादा नहीं रखते हैं, फिर भी आउटपुट तोड़ना क्यों नहीं और थोड़ी देर में एक नई फाइल शुरू करें? फिर फ़ाइल समाप्त होने के बाद आप gzip चला सकते हैं। –
@ डेविडज़स्लावस्की का जवाब पारंपरिक समाधान है। यह केवल मानक लॉग रोटेशन है, सिवाय इसके कि आप उस हिस्से को छोड़ दें जहां आप पुरानी फाइलों को हटाते हैं। इस उद्देश्य के लिए 'logrotate' का उपयोग करने के तरीके को समझाते हुए लिंक के लिए – abarnert