Contoh Logrotate Linux

Contoh Logrotate Linux



Informasi log adalah bagian yang sangat penting dari sistem operasi apa pun untuk mendiagnosis masalah aplikasi yang sedang berjalan dan entri log membantu menemukan solusi masalah. Sebagian besar aplikasi sistem operasi Linux menghasilkan log dan administrator sistem mendapatkan informasi yang diperlukan tentang aplikasi dari entri log. Namun, entri log terkadang menimbulkan masalah karena ukuran entri menjadi lebih besar seiring berjalannya waktu. Jadi, entri log diperlukan untuk mengelola.

Logrotate adalah alat baris perintah Linux untuk mengelola entri log. Alat ini membantu melakukan berbagai jenis tugas pada entri log oleh administrator seperti membatasi file log yang diputar, mengompresi file log yang diputar, menghapus file log yang tidak diperlukan, menjalankan skrip shell tertentu berdasarkan file log, dll. Perintah “logrorate” untuk mengelola file log dengan cara berbeda ditunjukkan dalam tutorial ini menggunakan beberapa contoh.

Periksa Versi Logrotate yang Terinstal

Perintah “logrotate” diinstal secara default di versi baru sistem operasi Ubuntu. Jalankan perintah berikut untuk memeriksa versi perintah “logrotate” yang terinstal:







$ logrotate --Versi: kapan



Entri log dari berbagai aplikasi disimpan di folder “/var/log” secara default. Konten serupa berikut akan muncul jika Anda memeriksa konten folder.



$ aku / dulu / catatan





Atur Konfigurasi 'Logrotate'.

Menetapkan nilai Tujuan
harian/mingguan/bulanan/tahunan Ini menentukan durasi waktu untuk memutar log.
nomor putar Ini menentukan jumlah file yang akan disimpan sebelum menghapus file log lama.
kompres Ini digunakan untuk mengompresi file log.
komprescmd Ini digunakan untuk mengatur perintah 'kompres'. Gzip adalah perintah default.
buka kompresicmd Ini digunakan untuk mengatur perintah 'uncompress'. Gunzip adalah perintah default.
kompresi penundaan Ini digunakan untuk menunda proses kompresi file log.
pemberitahuan kosong Ini digunakan untuk tidak memutar file kosong.
Aku hilang Jika sudah diatur, tidak ada kesalahan yang dihasilkan untuk file log yang hilang.
ukuran Ini digunakan untuk menetapkan batas untuk mulai memutar file log.
tanggalteks Ini digunakan untuk menambahkan nilai tanggal sebagai akhiran dari file putar.
copytruncate Ini digunakan untuk membuat salinan file asli.
diputar sebelumnya Ini digunakan untuk menjalankan skrip sebelum memutar file log.
pasca putar Ini digunakan untuk menjalankan skrip setelah memutar file log.
membuat Ini digunakan untuk membuat file log dengan hak akses root.

Sintaksis:

Sintaks perintah “logrotate” diberikan sebagai berikut:



logrotate [ PILIHAN ] config_file_path

Berbagai jenis opsi dapat digunakan untuk tujuan berbeda dengan perintah “logrotate”.

Opsi Logrotate

Beberapa opsi berguna dari perintah “logrotate” disebutkan sebagai berikut:

-f, –kekuatan Ini digunakan untuk membuat rotasi dengan kuat saat diperlukan.
-d, –debug Ini digunakan untuk mengaktifkan mode debug selama rotasi.
-m, –mail Ini digunakan untuk mengirim email selama rotasi.
-s, –menyatakan Ini digunakan untuk file status alternatif.
-penggunaan Ini digunakan untuk mencetak informasi penggunaan.
-?, -membantu Ini digunakan untuk mencetak pesan bantuan.
-v, –verbose Ini digunakan untuk mencetak dalam mode verbose.

File Konfigurasi Logrotate

File konfigurasi logrotate utama terletak di lokasi “/etc/logrotate.conf”. Jalankan perintah berikut untuk membuka file di editor nano:

$ nano / dll. / logrotate.conf

Pengaturan default dari perintah “logrotate” ditampilkan di file “logrotate.conf”. Direktif “include” digunakan dalam file untuk mengambil konfigurasi yang terletak di direktori “/etc/logrotate.d”.

Contoh 1: Buat File Konfigurasi Logrotate Sederhana

Buat contoh file log bernama “/var/log/test.log” dengan contoh data log. Jalankan perintah berikut untuk membuka editor nano untuk membuat file “logrotate.conf” baru di lokasi folder “/etc/tmp”. Buat folder “/tmp” dengan hak akses root jika belum pernah dibuat sebelumnya.

$ nano / dll. / tmp / logrotate.conf

Tambahkan konten berikut ke file untuk file “/var/log/test.log”. Menurut pengaturan, file “test.log” akan diputar setiap hari jika ukuran file melebihi 5K:

/ dulu / catatan / tes.log {

sehari-hari

ukuran 5K

miliknya akar adm

}

Jalankan perintah berikut untuk memeriksa ukuran file log:

$ aku -l / dulu / catatan / tes.log

Jalankan perintah “logrotate” setelah membuat file konfigurasi.

$ sudo logrotate / dll. / tmp / logrotate.conf

Jalankan kembali perintah berikut untuk memeriksa ukuran file log setelah menjalankan perintah “logrotate”:

$ aku -l / dulu / catatan / tes.log

Ukuran file “test.log” adalah 1K+. Jadi, tidak ada rotasi yang dilakukan berdasarkan pengaturan konfigurasi.

Ubah nilai ukuran menjadi 1K pada file “/etc/tmp/logrotate.conf” dan jalankan kembali perintah “ls” untuk memeriksa ukuran file “/var/log/test.log”. Menurut keluarannya, file log diputar dan dihapus karena batas ukurannya terlampaui.

Contoh 2: Penggunaan Logrotate Copytruncate

Buat atau modifikasi file “/etc/tmp/logrotate.conf” dengan pengaturan berikut untuk menunjukkan penggunaan copytruncate. Menurut pengaturan baru, logrotate membuat salinan file asli dengan membuat ukuran file asli menjadi nol.

/ dulu / catatan / tes.log {

memutar 5

ukuran 1k

copytruncate

miliknya akar adm

}

Jalankan perintah berikut untuk memeriksa ukuran file “test.log”:

$ aku -l / dulu / catatan / tes.log

Jalankan perintah “logrotate” setelah membuat file konfigurasi.

$ sudo logrotate / dll. / tmp / logrotate.conf

Jalankan kembali perintah berikut untuk memeriksa ukuran file “test.log” setelah menjalankan perintah “logrotate”:

$ aku -l / dulu / catatan / tes.log

Ukuran file asli menjadi 0 setelah menjalankan perintah “logrotate” untuk pengaturan copytruncate.

Contoh 3: Penggunaan Kompres Logrotate

Buat atau modifikasi file “/etc/tmp/logrotate.conf” dengan pengaturan berikut untuk menunjukkan penggunaan kompres. Menurut pengaturan baru, logrotate membuat file kompres dari file asli.

/ dulu / catatan / tes.log {

memutar 5

ukuran 1k

kompres

membuat 770 akar adm

}

Jalankan perintah berikut untuk memeriksa daftar file dan folder “/var/log”:

$ aku / dulu / catatan /

Jalankan perintah “logrotate” setelah membuat file konfigurasi.

$ sudo logrotate / dll. / tmp / logrotate.conf

Jalankan kembali perintah berikut untuk memeriksa daftar file dan folder “/var/log”:

$ aku / dulu / catatan /

File terkompresi dari file “test.log” dibuat dengan nama “test.log.1.gz” dan file aslinya dihapus.

Contoh 4: Penggunaan Logrotate Dateext

Buat atau modifikasi file “/etc/tmp/logrotate.conf” dengan pengaturan berikut untuk menunjukkan penggunaan dateext. Menurut pengaturan baru, logrotate membuat file kompres dari file asli dengan nilai tanggal.

dulu / catatan / tes.log {

miliknya akar adm

memutar 5

ukuran 1k

kompres

membuat 770 akar adm

tanggalteks

}

Jalankan perintah “logrotate” setelah membuat file konfigurasi.

$ sudo logrotate / dll. / tmp / logrotate.conf

Jalankan perintah berikut untuk memeriksa daftar file dan folder “/var/log”:

$ aku -l / dulu / catatan /

File terkompresi dari file “test.log” dibuat dengan nama “test.log.20240129.gz” dan file aslinya dihapus.

Contoh 5: Penggunaan Logrotate Maxage

Buat atau modifikasi file “/etc/tmp/logrotate.conf” dengan pengaturan berikut untuk menunjukkan penggunaan maxage. Menurut pengaturannya, logrotate menyimpan lima entri log jika ukuran file log melebihi 1K setelah satu hari.

/ dulu / catatan / tes.log {

miliknya akar adm

memutar 5

ukuran 1k

kompres

maksimal 1

}

Jalankan perintah “logrotate” berikut untuk menyimpan output di file log lain bernama “out.log”:

$ sudo logrotate -S = / dulu / catatan / keluar.log / dll. / tmp / logrotate.conf

Menurut keluaran berikut, file “out.log” dibuat setelah menjalankan perintah “logrotate”:

Contoh 6: Penggunaan Logrotate Missingok

Buat atau modifikasi file “/etc/tmp/logrotate.conf” dengan pengaturan berikut. Di sini, file log “testfile.log” tidak ada di folder “/var/log”.

/ dulu / catatan / file uji.log {

miliknya akar adm

memutar 5

ukuran 1k

kompres

}

Pesan kesalahan dicetak setelah menjalankan perintah “logrotate”.

Tambahkan setting “missingok” pada file konfigurasi logrotate dan jalankan kembali perintah “logrotate”. Tidak ada kesalahan yang dicetak untuk file log yang hilang.

Contoh 7: Penggunaan Logrotate Prerotate

Buat file Bash bernama “test.sh” dengan skrip berikut yang mencetak pesan sederhana. File tersebut digunakan dalam contoh logrotate ini untuk menunjukkan penggunaan prerotate dalam file konfigurasi logrotate.

tes.sh



#!/bin/bash

gema 'contoh logrotate...'

Setelah membuat file, jalankan perintah berikut untuk mengatur izin eksekusi file ini untuk semua pengguna:

$ chmod a+x / rumah / memahami / tes.sh

Sekarang, buat atau modifikasi file “/etc/tmp/logrotate.conf” dengan pengaturan berikut. Menurut pengaturan, logrotate menyimpan lima entri log jika ukuran file log melebihi 1K dan file “test.sh” dijalankan sebelum rotasi.

/ dulu / catatan / tes.log {

miliknya akar adm

memutar 5

ukuran 1k

diputar sebelumnya

/ rumah / memahami / tes.sh

naskah akhir

}

Output dari file “test.sh” ditampilkan setelah menjalankan perintah “logrotate”:

Kesimpulan

Berbagai penggunaan perintah “logrotate” ditampilkan dalam tutorial ini menggunakan beberapa contoh yang akan membantu pengguna Linux mengetahui penggunaan perintah dan mengelola file log dengan benar.