Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Log Dosyası Yazdırmak, Rotation Yapmazsan Disk Dolduracak Bir Canavara Dönüşüyor!

websterx

Üye
Katılım
14 Mart 2026
Mesajlar
34
Kafayı yiyecektim dostlar. Geçen hafta sunucu alarm vermeye başladı, disk alanı %99.9! Panikle SSH'ladım, `df -h` yazdım ve gördüğüm manzara karşısında şok oldum. Meğerse, aylardır sorunsuz çalıştığını sandığım o küçük otomasyon botumun log dosyası tam 120 GB yemiş! Şaka gibi ama, tek bir .log dosyasıydı bu. Hiç log rotation ayarlamamışım.

🔥 Disk Felaketinin Anatomisi
Olay şu: Uygulama sürekli çalışıyor, her işlem, her hata, her bilgi satır satır aynı dosyaya yazılıyor. Dosya büyüdükçe büyüyor. Sadece yazma işlemi de değil, o devasa dosyayı açıp okumaya çalışmak bile artık bir işkenceye dönüşüyor. Sistem, dosyayı açık tutmak için kaynak tüketiyor. Basit bir `tail -f` komutu bile donuyor.

Bash:
ls -lh my_app.log
-rw-r--r-- 1 user user 120G Aug 10 15:30 my_app.log

💡 Kurtuluş Rotasyonu (Log Rotation)
Çözüm, logları belirli bir boyuta veya zamana göre bölmek ve eski olanları sıkıştırıp/arşivleyip silmek. Neyse ki dünyayı yeniden keşfetmeye gerek yok. Linux'ta logrotate diye bir cankurtaran var. Ya da doğrudan kod içinde, Python için RotatingFileHandler, Java için Logback/Log4j gibi kütüphaneler bunun için var.

Örneğin Python'da nasıl yapılır:

Python:
import logging
from logging.handlers import RotatingFileHandler

handler = RotatingFileHandler('app.log', maxBytes=510241024, backupCount=5) # 5 MB, 5 yedek
logger.addHandler(handler)

Bu ayarla, dosya 5 MB'ı geçince `app.log.1`, `app.log.2.gz` gibi dosyalar oluşacak ve en fazla 5 eski dosya tutulacak. Tertemiz.

✅ Alınacak Sert Ders
Her şeyi logla, evet, ama loglarını kontrol altında tut. "Çalışıyor işte" deyip geçme. Log rotation, production'a çıkmadan önce mutlaka düşünülmesi gereken bir altyapı konusu. Yoksa bir sabah uyanıp sunucunun çöktüğünü görürsün ve sebebi, senin yazdığın masum log satırları olur.

Siz de benim gibi log dosyasıyla sunucunuzu doldurup komik/dramatik anlar yaşadınız mı? Ya da log rotation için farklı, daha şık bir yönteminiz var mı? Aşağıya yazın, konuşalım!
 

Tema özelleştirme sistemi

Bu menüden forum temasının bazı alanlarını kendinize özel olarak düzenleye bilirsiniz.

Zevkine göre renk kombinasyonunu belirle

Tam ekran yada dar ekran

Temanızın gövde büyüklüğünü sevkiniz, ihtiyacınıza göre dar yada geniş olarak kulana bilirsiniz.

Geri