Kinerja lingkungan komputer atau server sangat tergantung pada memori sistem dan penggunaan disk. Jika ada sesuatu yang memakan lebih banyak ruang disk maka itu akan menyebabkan kesalahan sistem. Demikian juga, peningkatan ukuran file log harus dikontrol untuk mengurangi risiko tersebut.
Logrotate diperkenalkan sebagai utilitas sistem yang memutar, mengompresi file log, dan mengirimkan log sistem. Pengelolaan file log seperti itu mengurangi penggunaan ruang disk dan mencegah kesalahan sistem.
Pada artikel ini, kita akan membahas proses instalasi dan konfigurasi logrotate pada server Ubuntu 20.04 LTS.
Instalasi Logrotate di server Ubuntu 20.04
Di Ubuntu, logrotate diinstal secara default tetapi jika tidak diinstal, Anda dapat menginstalnya dengan perintah seperti yang ditunjukkan di bawah ini.
$ sudo apt update $ sudo apt install logrotate
Anda dapat mengkonfirmasi instalasi dengan perintah seperti yang ditunjukkan di bawah ini.
$ logrotate --version
File konfigurasi Logrotate
File konfigurasi untuk logrotate dibuat oleh daemon logrotate. Ada dua jalur untuk konfigurasi seperti yang ditunjukkan di bawah ini.
/etc/logrotate.conf
Ini adalah file konfigurasi yang umumnya dibuat untuk utilitas logrotate
/etc/logrotate.d/
Ini adalah direktori yang terdiri dari rotasi spesifik aplikasi. Secara default, /etc/logrotate.conf digunakan tetapi untuk setiap aplikasi memiliki konfigurasi yang berbeda, dapat diatur di /etc/logrotate.d/.
File konfigurasi Logrotate Default
Seperti yang Anda ketahui bahwa /etc/logrotate.conf adalah file konfigurasi default. Mari kita periksa file konfigurasi seperti yang ditunjukkan pada tangkapan layar di bawah ini.
Periksa file konfigurasi dengan perintah seperti yang ditunjukkan di bawah ini.
$ cat /etc/logrotate.conf
Keluaran:
Konfigurasi untuk aplikasi tertentu
Pada screenshot di atas, ada konfigurasi sebagai include /etc/logrotate.d yang berarti konfigurasi untuk aplikasi tertentu dapat diatur pada direktori ini. Di sini, kita akan menunjukkan konfigurasi untuk dpkg seperti yang ditunjukkan di bawah ini.
$ cd /etc/logrotate.d/
$ cat dpkg
Untuk mendapatkan detail dari setiap baris konfigurasi, periksa poin-poin yang dibahas di bawah ini. Konfigurasi ini akan menggantikan konfigurasi default /etc/logrotate.conf untuk aplikasi tertentu seperti dpkg.
- bulanan:Rotasi sebulan sekali. Anda dapat menggantinya dengan harian, mingguan sesuai kebutuhan Anda.
- rotasi 12:Dua belas file log lama akan disimpan. Ini menggantikan 4 default pada /etc/logrotate.conf
- kompres:file log untuk aplikasi ini akan dikompres dengan menggunakan gzip
- delaycompress:kompresi file log sebelumnya ke siklus rotasi berikutnya ditunda karena masih digunakan oleh beberapa program.
- missingok:Jangan menulis pesan kesalahan jika file log hilang
- notifempty:Jangan memutar file log jika kosong
- buat root root 644:File log dibuat dengan izin 644, dengan pengguna dan grup sebagai root
Membuat file konfigurasi Logrotate
Katakanlah Anda telah menginstal aplikasi seperti nginx dan file log-nya dibuat di /var/log/nginx/ maka Anda dapat mengatur file konfigurasi logrotate untuk aplikasi khusus ini dengan perintah seperti yang ditunjukkan di bawah ini.
Arahkan ke direktori logrotate
$ cd /etc/logorate.d/
Buat file logrotate dengan editor
$ vim nginx
/var/log/nginx/*.log { daily missingok rotate 14 compress delaycompress notifempty create 0640 www-data adm sharedscripts prerotate if [ -d /etc/logrotate.d/httpd-prerotate ]; then \ run-parts /etc/logrotate.d/httpd-prerotate; \ fi \ endscript postrotate invoke-rc.d nginx rotate >/dev/null 2>&1 endscript }
Pada konfigurasi di atas, kami telah mengatur rotasi untuk 14 sehingga 14 file log lama akan disimpan, dan file log dikompresi dengan menggunakan gzip. Konfigurasi lain yang digunakan dalam file di atas hampir dijelaskan di bagian file konfigurasi logrotate. Anda dapat menjalankan konfigurasi yang baru dibuat dengan pengguna hak istimewa sudo seperti yang ditunjukkan di bawah ini.
$ sudo logrotate -d /etc/logrotate.d/nginx
Di sini, file log dieksekusi seperti yang ditunjukkan pada tangkapan layar di bawah ini.
Masuk dengan cron
Saat menginstal paket logrotate, file crontab juga dibuat pada proses di dalam /etc/cron.daily dengan nama logrotate. Periksa tangkapan layar seperti yang ditunjukkan di bawah ini untuk detail lebih lanjut.
$ cat /etc/cron.daily/logrotate
Kesimpulan
Dalam artikel ini, Anda telah mempelajari cara menginstal paket logrotate dan memeriksa file konfigurasi aplikasi default dan spesifik untuk logrotate dengan implementasi crontab. Terima kasih!