Solusi 1:
Ah, ada bendera untuk ini.
daripada menggunakan tail -f /var/log/file
kita harus menggunakan tail -F /var/log/file
tail -F
diterjemahkan menjadi tail --follow=name --retry
seperti pada;
--follow=name
:ikuti nama file alih-alih deskriptor file--retry
:jika file tidak dapat diakses, coba lagi nanti daripada mati
Solusi 2:
# tail --follow=mylog.log
Dari man tail :
With --follow (-f), tail defaults to following the file descriptor,
which means that even if a tail’ed file is renamed, tail will continue
to track its end. This default behavior is not desirable when you
really want to track the actual name of the file, not the file descrip‐
tor (e.g., log rotation). Use --follow=name in that case. That causes
tail to track the named file by reopening it periodically to see if it
has been removed and recreated by some other program.
Jadi dalam hal ini menggunakan -F
opsi akan benar.
-F same as --follow=name --retry
Solusi 3:
Jawaban pastinya bergantung pada OS Anda - tetapi dalam banyak kasus, tail -F
akan melakukan hal yang benar.
Solusi 4:
ekor -Untuk ekor --ikuti=nama
Solusi 5:
IMHO, agak aneh mengubah file log Anda berdasarkan SIZE daripada berdasarkan tanggal. Sebagian besar log sistem (di unix atau linux) berputar setiap minggu atau setiap bulan, dan bukan berdasarkan ukuran...Ini adalah sesuatu yang saya suka karena berbagai alasan, dan juga sesuatu yang, jika diterapkan, akan menyelesaikan masalah Anda.
Delapan tahun kemudian, saya tidak tahu apa yang saya bicarakan di sini:ada banyak sekali tempat yang ingin Anda putar berdasarkan ukuran, karena rotasi harian/mingguan/bulanan dapat menghasilkan file MASSIVE yang dapat menyebabkan masalah serius.
Dari perspektif yang lebih berpengalaman, pertanyaan sebenarnya adalah mengapa Anda ingin duduk dan terus mengekor file yang tumbuh sangat cepat sehingga Anda memutarnya lebih dari setiap hari...Ini seperti menonton aliran Matrix lewat.
Hari-hari ini Anda akan lebih baik melihat beberapa agregasi log data besar seperti Splunk atau Sumologic, yang dapat memfilter peristiwa log ke dalam kelas dan memicu berdasarkan nilai log tertentu...Tidak perlu menonton log langsung sama sekali.