Saya memasukkan logrotate
file konfigurasi /etc/logrotate.d/
dan mengharapkan log untuk berputar pada waktu yang konsisten; namun, mereka tidak ... waktu rotasi log tampaknya acak +/- satu jam.
Mengapa rotasi waktu mulai log acak, dan bagaimana saya bisa mengubahnya?
Informasi: file konfigurasi logrotate saya terlihat seperti ini ...
/opt/backups/network/*.conf {
copytruncate
rotate 30
daily
create 644 root root
dateext
maxage 30
missingok
notifempty
compress
delaycompress
postrotate
## Create symbolic links in daily/
PATH=`/usr/bin/dirname $1`;
FILE=`/bin/basename $1`;
/bin/ln -s $1 $PATH/daily/$FILE
endscript
}
Bukan jawabannya, tapi saya baru-baru ini mencoba mencari tahu untuk alasan lain dan tidak dapat menemukan dokumentasi tentang bagaimana Redhat 6, Centos, dll menjalankan cron. Inilah yang saya rekayasa terbalik:
crond
masih berjalan saat startup sistem - ini memuat semua file di/etc/cron.d
/etc/cron.d/0hourly
menjalankan semua file dalam/etc/cron.hourly
/etc/cron.hourly/0anacron
berjalananacron
/etc/anacrontab
/etc/anacrontab
menjalankan (melaluirun-parts
)/etc/cron.daily
,/etc/cron.weekly
dan/etc/cron.monthly
Jadi, ini lebih rumit daripada versi sebelumnya.
Dimungkinkan untuk memulihkan perilaku lama dengan menambahkan entri per jam, mingguan, dan bulanan kembali ke
/etc/crontab
(yang sekarang kosong), tetapianacrontab
perlu diperbarui juga. Ini mungkin atau mungkin tidak merusak pembaruan di masa depan ...sumber
Jawaban lain mencakup bagaimana tetapi tidak harus mengapa . The alasan adalah untuk menjaga simultan pekerjaan cron malam dari pembunuhan infrastruktur. (Bayangkan penyimpanan bersama, atau mungkin 1000 server berjalan pada satu host VM, atau hanya pekerjaan malam yang menghantam beberapa layanan jaringan.)
Saya selalu memecahkan masalah ini untuk rotasi log secara spesifik pada sistem saya dengan memindahkan pekerjaan rotasi log tertentu dari
cron.daily
ke entri dengan waktu yang sulitcron.d
. Dengan begitu, Anda masih mendapatkan lompatan berjalan untuk layanan seperti updatedb di mana waktu sebenarnya tidak penting, tetapi waktu yang konsisten untuk rotasi log.Tentu saja, ketika Anda mencapai ukuran tertentu, Anda tetap ingin semua log Anda dikirim dari host ke server log, dan kemudian waktu rotasi file pada masing-masing node kurang penting, karena hanya ada untuk kenyamanan (biasanya mengikuti ekor file) atau sebagai pilihan terakhir mundur. Kemudian, Anda pasti akan mengatur rotasi pada server log Anda menjadi sistematis.
sumber