ฉันจะติดตามสิ่งที่ logrotate กำลังทำใน Ubuntu ได้อย่างไร สามารถติดตามกิจกรรมของ logrotate ได้หรือไม่?
ฉันจะติดตามสิ่งที่ logrotate กำลังทำใน Ubuntu ได้อย่างไร สามารถติดตามกิจกรรมของ logrotate ได้หรือไม่?
คำตอบ:
cat /var/lib/logrotate/status
หากต้องการตรวจสอบว่าบันทึกการหมุนเวียนนั้นกำลังหมุนอยู่หรือไม่และเพื่อตรวจสอบวันที่และเวลาล่าสุดของการหมุนให้ตรวจสอบไฟล์ / var / lib / logrotate / status นี่เป็นไฟล์ที่จัดรูปแบบเรียบร้อยที่มีชื่อไฟล์บันทึกและวันที่ซึ่งถูกหมุนครั้งล่าสุด
เอามาจาก:
/var/lib/logrotate.status
ในระบบ Red Hat
cat /var/lib/logrotate/status
จะแสดงเฉพาะกิจกรรมที่เริ่มต้นโดยผู้ใช้รูท cronjobs ผู้ใช้คนอื่นอาจก่อให้เกิดกิจกรรม logrotate ของตัวเองเช่นเมื่อ crontab 0 0 * * * /usr/sbin/logrotate $HOME/logrotate/logrotate.conf --state $HOME/logrotate/logrotate-state
ของพวกเขารวมถึงรายการเช่น กิจกรรม logrotate นั้นจะถูกเขียนลงไฟล์$HOME/logrotate/logrotate-state
โดย$HOME
เป็นไดเรกทอรีหลักของผู้ใช้นั้น
/var/lib/logrotate/logrotate.status
ไฟล์สถานะเป็นตอนที่
คุณสามารถลองใช้ logrotate ในโหมด debug หรือ verbose:
-d Turns on debug mode and implies -v. In debug mode, no changes
will be made to the logs or to the logrotate state file.
-v, --verbose
Display messages during rotation.
sudo logrotate -v /etc/logrotate.conf 2>&1 | sudo tee -a /var/log/logrotate.log >/dev/null
(ให้แน่ใจว่าคุณมี-a
)
ใน Suse Linux distros เป็นเช่นนี้:
cat /var/lib/logrotate.status
บันทึกต่างๆจะถูกหมุนตามความถี่ต่าง ๆ ตามไฟล์การกำหนดค่า (/etc/logrotate.conf) และ / หรือไดเรกทอรี (/etc/logrotate.d) ชื่ออาจแตกต่างกันไปตามการกระจายที่แตกต่างกัน การกำหนดค่าอาจระบุการกระทำก่อนและ / หรือหลังการหมุน ชื่อของไฟล์ที่หมุนและวันที่หมุนล่าสุดอยู่ในสถานะไฟล์ (/ var / lib / logrotate / state)
Logrotate ไม่มีระบบการบันทึก การดำเนินการโหลดซ้ำ / รีสตาร์ทที่เริ่มต้นจะถูกบันทึกตามการบันทึกสำหรับโปรแกรมที่กำลังทำอยู่
วิธีที่ง่ายที่สุดในการทำเช่นนั้นก็คือการแก้ไข/etc/cron.daily/logrotate
เพื่อรวม-v
ตัวเลือก รายละเอียดเกี่ยวกับการกำหนดค่า logrotate man logrotate
และตัวเลือกที่สามารถพบได้กับคำสั่ง
Dude คุณสามารถตรวจสอบการตั้งค่าของมักจะอยู่ในlogrotate
/etc/logrotate.conf
Distros ที่ทันสมัยมีlogrotate
ไฟล์กำหนดค่าเฉพาะใน/etc/logrotate.d
ไดเรกทอรี
เช่นสำหรับ nginx
/var/log/nginx/*.log {
weekly
missingok
rotate 52
มันจะเก็บไฟล์เป็นเวลา 52 สัปดาห์ (ต่อปี) การหมุนเป็นรายสัปดาห์
หมายเหตุ: user56548เคยเป็น "Dude"
rotate 365
weekly
การหมุนเวียนรายวันด้วยrotate 52
จะเก็บบันทึก 52 วันอย่างชัดเจน
weekly