
Daftar Isi
Pernahkah Anda mengalami sistem Linux tiba-tiba error dan bingung mencari penyebabnya? Banyak pengguna, terutama pemula, sering kebingungan ketika harus mencari tahu “apa yang sebenarnya terjadi di balik layar”. Padahal, semua informasi penting tentang aktivitas sistem—termasuk error, peringatan, dan status service—tersimpan rapi di log sistem.
Namun, menelusuri log secara manual bisa membingungkan. File log tersebar di berbagai direktori dan sering kali panjangnya ribuan baris. Di sinilah journalctl hadir sebagai penyelamat.
Artikel ini akan memandu Anda langkah demi langkah dalam:
- Memahami fungsi journalctl di Linux.
- Menampilkan, memfilter, dan mencari log sistem secara efisien.
- Melakukan analisis cepat terhadap error atau service tertentu.
- Menyimpan hasil log untuk kebutuhan audit atau debugging.
Apa Itu journalctl?
journalctl adalah perintah bawaan di sistem Linux modern (seperti Rocky Linux, CentOS, Fedora, atau Ubuntu) yang digunakan untuk melihat dan menganalisis log dari systemd journal.
Berbeda dengan metode lama yang mengandalkan file di /var/log/, journalctl menyimpan log dalam format biner yang lebih terorganisir, memungkinkan pencarian dan filter log dengan cepat dan efisien.
1. Menampilkan Semua Log Sistem
Untuk melihat seluruh log yang direkam oleh systemd journal, gunakan:
journalctlPerintah ini akan menampilkan log dari seluruh sistem, dimulai dari yang paling lama. Jika hasilnya terlalu panjang, Anda bisa menekan Ctrl + C untuk menghentikan tampilan.
2. Melihat Log Terbaru
Gunakan opsi -r agar log ditampilkan dari yang terbaru:
journalctl -rAtau gunakan -n untuk menampilkan jumlah baris tertentu:
journalctl -n 50Artinya: tampilkan 50 log terakhir.
3. Menampilkan Log Berdasarkan Waktu
Kadang Anda hanya ingin melihat log dalam rentang waktu tertentu, misalnya setelah server reboot. Gunakan:
journalctl --since "2025-11-10 08:00" --until "2025-11-10 12:00"Atau, jika hanya ingin log setelah waktu tertentu:
journalctl --since "1 hour ago"Ini sangat berguna untuk menganalisis kejadian yang baru saja terjadi.
4. Menampilkan Log Berdasarkan Service
Ingin tahu kenapa Apache, Nginx, atau SSH gagal dijalankan? Anda bisa memfilter log berdasarkan nama service:
journalctl -u nginx.serviceUntuk melihat log terbaru dari service itu secara real-time, gunakan opsi -f (follow):
journalctl -u nginx.service -fPerintah ini mirip dengan tail -f, tetapi khusus untuk log systemd.
5. Melihat Log Kernel
Jika Anda mencurigai masalah pada perangkat keras atau driver kernel, gunakan opsi -k:
journalctl -kAnda juga bisa memadukannya dengan filter waktu, misalnya:
journalctl -k --since "yesterday"6. Menyimpan Log ke File
Untuk keperluan audit, debugging, atau laporan keamanan, log bisa disimpan ke file teks menggunakan redirection:
journalctl -u sshd.service --since "yesterday" > sshd-log.txtFile sshd-log.txt kemudian bisa dikirim ke tim lain atau disimpan sebagai arsip.
7. Membersihkan Log Lama (Opsional)
Log yang menumpuk bisa menghabiskan ruang penyimpanan. Untuk menghapus log lama, gunakan:
sudo journalctl --vacuum-time=7dArtinya, hapus semua log yang lebih tua dari 7 hari.
Atau, Anda juga bisa membatasi ukuran total log:
sudo journalctl --vacuum-size=500M8. Contoh Analisis Cepat
Misalnya, server Anda tiba-tiba mati mendadak. Anda bisa mencari pesan error terakhir sebelum reboot dengan:
journalctl -b -1 -p errPenjelasan:
-b -1→ melihat log dari boot sebelumnya.-p err→ hanya tampilkan log dengan level error.
Dengan cara ini, Anda bisa cepat menemukan penyebab utama tanpa harus membuka ribuan baris log.
Sekarang Anda sudah memahami cara dasar dan lanjutan dalam menggunakan journalctl untuk menganalisis log sistem. Dengan perintah sederhana ini, Anda dapat melacak error, memantau service, hingga menyimpan log untuk kebutuhan audit.
Jika Anda ingin melangkah lebih jauh,
baca juga: Mengelola Service di Linux Menggunakan systemctl — artikel lanjutan yang akan membantu Anda memahami bagaimana systemd dan journalctl saling berkaitan dalam menjaga stabilitas sistem Linux.
