Saya memiliki direktori dengan banyak file log, yang semuanya ingin saya putar setiap hari. Untuk tujuan organisasi saya ingin dapat memindahkan log yang diputar ke direktori yang berbeda (atau subdirektori) dengan nama tanggal, menyimpan minggu terakhir dari log.
Saya dapat menggunakan logrotate untuk mencapai sebagian besar hal ini dengan mem-roat file-file di tempat atau bahkan memindahkannya ke direktori tunggal yang berbeda menggunakan olddir
direktif tetapi saya mengalami kesulitan menemukan solusi untuk membuat sub-direktori individu per rotasi. Bagaimana saya bisa mencapai ini ?:
Logs to rotate: /var/log/example/*
Desired target directories (keeping a week):
/var/log/example/20121006/*
[ ... ]
/var/log/example/20121012/*
postrotate
akan melakukan trik. Satu-satunya hal yang perlu saya tambahkan adalah membersihkan direktori lama yang melebihi hitungan tertentu atau lebih tua dari tanggal tertentu.find | xargs
perintah harus menghapus semua subdirektori segera/var/log/example
jika mereka terakhir diubah lebih dari 7 hari yang lalu.Anda memiliki
olddir
arahan yang dapat Anda gunakan dalam file konfigurasi.Dari dokumentasi:
Referensi : https://manpages.debian.org/jessie/logrotate/logrotate.8.en.html
sumber