Linux sistemlerinde günlük (log) kayıtlarının incelenmesi, sistem yöneticileri ve geliştiriciler için önemli bir beceridir. Modern Linux sistemlerinde log verilerini toplamak ve analiz etmek için kullanılan en güçlü araçlardan biri journalctl komutudur.
İçindekiler
journalctl Nedir?
journalctl, systemd ile birlikte gelen ve sistem günlüklerini görüntülemeye yarayan bir komuttur. systemd-journald
tarafından yönetilen günlükleri okur.
Temel Kullanım
1 | journalctl |
Yaygın Filtreleme Yöntemleri
1. Belirli Servise Ait Logları Görüntüleme
1 | journalctl -u nginx.service |
-u
ile servis adı belirtilir.2. Gerçek Zamanlı Log Takibi
1 | journalctl -f |
-f
seçeneği, tail -f
komutu gibi logları canlı olarak izlemeyi sağlar.3. Tarih Aralığına Göre Filtreleme
1 | journalctl --since="2024-01-01" --until="2024-01-02" |
4. Boot (Sistem Açılışı) Bazında Logları Gösterme
1 | journalctl -b |
-b -1
, -b -2
gibi kullanılabilir.5. Belirli Kullanıcıya Ait Loglar
1 | journalctl _UID=1000 |
6. Belirli Birimdeki (Unit) Hataları Görüntüleme
1 | journalctl -u nginx.service -p err |
Log Seviyeleri
Seviye | Açıklama |
---|---|
0 | emergency |
1 | alert |
2 | critical |
3 | error (err) |
4 | warning (warn) |
5 | notice |
6 | info |
7 | debug |
Örnek: Sadece hata ve kritik hataları görmek için:
1 | journalctl -p 0..3 |
journalctl ile Temizleme (Opsiyonel)
Günlükler zamanla çok yer kaplayabilir. Aşağıdaki gibi sınırlandırma yapılabilir:
1 | journalctl --vacuum-size=500M |
Yalnızca son 500 MB’lık günlükleri saklar.
Sonuç
journalctl, Linux sistemlerinde günlük analizinin merkezinde yer alır. Servis takibi, hata teşhisi ve sistem güvenliği gibi konularda vazgeçilmezdir. Etkin kullanım için filtreleme seçeneklerine hâkim olmak büyük kolaylık sağlar.