ฉันหมุนNginx
บันทึกทุกวัน (พร้อมdateext
) หลังจากการหมุนฉันต้องการแยกไฟล์สำหรับวันที่เพิ่งผ่านไปและรวบรวมอีเมลที่มีจำนวนข้อผิดพลาดที่ส่งคืนโดยเซิร์ฟเวอร์ Nginx
ฉันจะเข้าถึงไฟล์เอาต์พุตในส่วน postrotate / ปลายคำบรรยายของได้logrotate
อย่างไร
ฉันหมุนNginx
บันทึกทุกวัน (พร้อมdateext
) หลังจากการหมุนฉันต้องการแยกไฟล์สำหรับวันที่เพิ่งผ่านไปและรวบรวมอีเมลที่มีจำนวนข้อผิดพลาดที่ส่งคืนโดยเซิร์ฟเวอร์ Nginx
ฉันจะเข้าถึงไฟล์เอาต์พุตในส่วน postrotate / ปลายคำบรรยายของได้logrotate
อย่างไร
คำตอบ:
ฉันไม่ทราบถึงตัวแปรใด ๆ ที่คุณสามารถใช้ได้หากนั่นคือสิ่งที่คุณกำลังมองหา อย่างไรก็ตามทันทีหลังจากหมุนบันทึกคุณควรทราบชื่อไฟล์ที่ได้รับการหมุนตามการกำหนดค่าที่คุณได้ตั้งค่าสำหรับการหมุน ( /var/log/somefile.1
หรือคล้าย)
อาจจะตอบได้ง่ายกว่าถ้าคุณอธิบายปัญหาจริงที่คุณพยายามแก้ไข?
หากคุณไม่ได้ใช้คำสั่ง "sharedscripts" สคริปต์ postrotate ของคุณจะได้รับเป็น $ 1 ไฟล์ที่เรียกใช้การหมุนเวียนบันทึก สิ่งนี้อาจช่วยได้หากคุณกำลังพยายามใช้สคริปต์ทั่วไปที่มีหลายบทสรุป นั่นคือให้อะไรเช่นนี้:
/var/log/sample1.log /var/log/sample[23].log {
..config...
}
หากจำเป็นต้องหมุนไฟล์ที่ตรงกันสคริปต์ของคุณจะถูกเรียกด้วย $ 1 ตั้งค่าเป็น "/var/log/sample1.log", "/var/log/sample2.log" หรือ "/var/log/sample3.log" "ตามความเหมาะสม จากนั้นคุณสามารถต่อท้าย ".1" เพื่อค้นหาไฟล์ที่เพิ่งหมุน
หากคุณใช้ตัวเลือก "sharedscripts" สคริปต์ของคุณจะถูกเรียกด้วย $ 1 ตั้งค่าเป็น "/var/log/sample1.log /var/log/sample [2323..log" ซึ่งจะช่วยให้คุณระบุ stanza เฉพาะ แต่ ไม่ใช่ไฟล์ที่แน่นอน)
หวังว่านี่จะช่วยให้คุณได้เริ่มต้น โปรดทราบว่าสิ่งนี้จะใช้งานได้เฉพาะกับ logrotate> v3.7.5