के साथ फ़ाइल नाम के अंदर एक तिथि कैसे सम्मिलित करें मुझे सर्वर पर चल रहे किसी एप्लिकेशन से लॉग फ़ाइलों को घुमाने के लिए लॉग्रोटेट सेट करने की आवश्यकता है। मुझे फ़ाइल नाम के अंदर की तारीख चाहिए।लॉगरोटेट
मैंने तारीख को जोड़ने के लिए डेटक्स्ट और डेटफॉर्मैट सेट किया है। परिणाम फ़ाइल नाम है: जो भी.csv_2012-03-03
मैं टाइमस्टैम्प को सुरक्षित रखने के लिए फ़ाइल नाम का हिस्सा बनना चाहता हूं; Whatever_2012-03-03.csv।
# Daily rotation
daily
# We keep original file live
copytruncate
# Rotation is 1 so we have always .1 as extension
rotate 1
# If file is missing keep working
missingok
sharedscripts
postrotate
day=$(date +%Y-%m-%d)
mv blabla.csv.1 /var/www/gamelogs/dir/blabla$day.csv
endscript
}
यह आसान है और ठीक काम करता है: एक फ़ाइल के लिए इसका इस्तेमाल करने के लिए सही है घूर्णन जबकि
मुझे यह समाधान पसंद है। अगर मुझे यह सही लगता है, तो इसका दुष्प्रभाव होता है: लॉग्रोटेट अब रखी गई फ़ाइलों की संख्या को सीमित नहीं करेगा। अगर इरादा है, तो यह ठीक है। – Marian
अपने पोस्ट्रोटेट स्क्रिप्ट में '$ logdir -mtime + $ maxage -delete' कथन' ढूंढना काफी आसान है। – Rob
@Rob, तो, वास्तव में लॉग्रोटेट का उपयोग करने का क्या मतलब है? – cnst