DevOps Bootcamp · Pelajaran

Rotasi Log & Pembersihan Otomatis

Jaga kesehatan disk dengan mengotomatiskan rotasi log dan pembersihan berkas lama menggunakan logrotate serta skrip terjadwal berbasis find.

Pelajaran 4 dari 413 langkah

Rotasi Log & Pembersihan Otomatis adalah pelajaran DevOps Bootcamp gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar DevOps Bootcamp, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Masalah Log yang Terus Bertambah

Layanan yang berjalan lama menulis log tanpa henti. Tanpa pengelolaan, log akan memenuhi disk dan membuat sistem gagal. Rotasi dan pembersihan membantu mengendalikannya.

du -sh /var/log/*

Fungsi Rotasi Log

Rotasi mengganti nama log saat ini, membuat log kosong yang baru, dan menyimpan sejumlah salinan lama terkompresi.

  • app.log menjadi app.log.1
  • Salinan lama dikompresi dengan gzip
  • Salinan yang paling lama dihapus

Memperkenalkan logrotate

logrotate adalah alat Linux standar yang mengotomatiskan rotasi berdasarkan ukuran atau usia, yang didefinisikan di bawah /etc/logrotate.d/.

cat /etc/logrotate.conf

Konfigurasi Dasar logrotate

Blok konfigurasi mencantumkan berkas log dan kebijakan rotasinya.

/var/log/myapp/*.log {
    daily
    rotate 7
    compress
    missingok
    notifempty
}

Memahami Direktif

Direktif umum:

  • daily melakukan rotasi setiap hari
  • rotate 7 menyimpan 7 berkas lama
  • compress mengompresi log yang dirotasi
  • missingok melewati berkas jika tidak ada

Menguji Tanpa Menunggu

Paksa eksekusi dengan -f atau lakukan uji coba dengan -d untuk memvalidasi konfigurasi sebelum mempercayai jadwalnya.

logrotate -d /etc/logrotate.d/myapp
logrotate -f /etc/logrotate.d/myapp

Skrip postrotate

Banyak layanan tetap membuka penangan berkas lama. Blok postrotate memberi sinyal kepada layanan untuk membuka kembali lognya setelah rotasi.

/var/log/myapp/*.log {
    daily
    postrotate
        systemctl reload myapp
    endscript
}

Membersihkan Berkas Lama dengan find

Untuk pembersihan sesekali, find dengan -mtime menemukan berkas yang lebih lama dari N hari lalu menghapusnya.

find /var/log/myapp -name "*.log" -mtime +30 -delete

Skrip Pembersihan yang Aman

Bungkus pembersihan dalam skrip yang mencatat apa saja yang dihapusnya, sehingga Anda memiliki jejak audit.

#!/bin/bash
DIR=/var/backups
find "$DIR" -name "*.tar.gz" -mtime +14 -print -delete \
  >> /var/log/cleanup.log 2>&1

Menjadwalkan Pembersihan

Tempatkan rotasi di bawah logrotate (yang sudah digerakkan oleh cron) dan jadwalkan skrip pembersihan khusus dengan entri crontab Anda sendiri.

# crontab -e
30 2 * * * /usr/local/bin/cleanup.sh

Memantau Penggunaan Disk

Tambahkan pengaman yang memberikan peringatan saat partisi melewati ambang batas agar pembersihan tidak pernah terlambat dijalankan.

USAGE=$(df --output=pcent / | tr -dc "0-9")
[ "$USAGE" -gt 90 ] && echo "Disk over 90%" | mail -s alert root

Pemeriksaan Cepat

Uji pengetahuan Anda tentang otomatisasi.

Ringkasan

Anda telah mengotomatiskan pemeliharaan log:

  • logrotate melakukan rotasi berdasarkan usia/ukuran dengan rotate, compress, postrotate
  • Validasi dengan -d / -f
  • Gunakan find -mtime +N -delete untuk pembersihan khusus
  • Jadwalkan dengan cron dan gunakan peringatan penggunaan disk sebagai pengaman
Gratis untuk memulai

Belajar DevOps Bootcamp dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
142
Pelajaran
568

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Rotasi Log & Pembersihan Otomatis” gratis?

Ya — teks lengkap “Rotasi Log & Pembersihan Otomatis” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus DevOps Bootcamp, upgrade ke CoddyKit PRO. Kursus DevOps Bootcamp mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Rotasi Log & Pembersihan Otomatis”?

Jaga kesehatan disk dengan mengotomatiskan rotasi log dan pembersihan berkas lama menggunakan logrotate serta skrip terjadwal berbasis find. Kamu berlatih DevOps Bootcamp dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai DevOps Bootcamp?

Tidak diperlukan pengalaman sebelumnya. DevOps Bootcamp di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Rotasi Log & Pembersihan Otomatis” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran DevOps Bootcamp ini?

Ya. Setiap pelajaran DevOps Bootcamp menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Menjadwalkan Tugas dengan Cron
  2. Mengotomatiskan Administrasi Sistem
  3. Proyek Pembuatan Skrip Lanjutan
  4. Rotasi Log & Pembersihan Otomatis
← Kembali ke DevOps Bootcamp