# Loglama

Adres: https://softwaredictionary.org/tr/terimler/logging
Kategori: DevOps ve Bulut
Son güncelleme: 2026-09-30
İngilizcesi: Logging
Türkçe karşılığı: günlüğe kaydetme

Kısaca: Loglama, çalışan bir programdaki hata ve istek gibi olaylar hakkında zaman damgalı mesajlar kaydetme pratiğidir; insanlar bunları sonradan inceleyebilir.

## Loglama nedir?

Loglama, bir programın çalışırken ne yaptığını yazıya dökmesini sağlamak demektir. Her log kaydı, örneğin alınan bir istek, başarısız olan bir ödeme ya da biten bir iş gibi tek bir olayı bir zaman damgası, bir önem seviyesi ve yararlı ayrıntılarla birlikte kaydeder. Log'lar, bir şeyler ters gittiğinde geliştiricilerin baktığı ilk yerdir, çünkü neyin ve hangi sırayla olduğunu gösterir.

Uygulamalar log'ları düz print ifadeleri yerine bir loglama kütüphanesi üzerinden yazar; böylece her kayıt tutarlı bir biçim ile `DEBUG`, `INFO`, `WARN` ya da `ERROR` gibi bir seviye alır ve gürültülü seviyeler canlı ortamda kapatılabilir. Modern sistemler, her kaydın `userId` ve `durationMs` gibi adlandırılmış alanlara sahip bir JSON nesnesi olduğu yapılandırılmış loglamayı (structured logging) tercih eder; bu, log'ların makineler tarafından aranmasını ve filtrelenmesini kolaylaştırır. Konteynerlerde uygulamalar genellikle log'ları standart çıktıya yazar ve bir log toplayıcı bunları, her sunucudaki log'ların birlikte aranabildiği merkezi bir depoya gönderir.

Log, bir geminin seyir defteri ya da uçuş kaydedicisi gibidir: araştırmacıların olaydan sonra yeniden oynatabileceği sıralı, yazılı bir olay geçmişi. Log'lar hata ayıklama, kimin ne yaptığını denetleme, güvenlik soruşturmaları ve belirli hatalara karşı uyarı oluşturma için kullanılır. İyi log'lar, istek kimlikleri gibi yararlı olacak kadar bağlam içerir, ancak güvenlik ve gizlilik sorunları yaratacak parolaları, gizli bilgileri ya da gereksiz kişisel verileri asla içermez.

Loglama sıklıkla gözlemlenebilirliğin diğer iki sütunu olan metrikler ve dağıtık izleme ile karıştırılır. Log tek bir olayı ayrıntılı biçimde tanımlar, metrik dakikadaki hata sayısı gibi zaman içinde toplanan bir sayıdır, trace ise tek bir isteği birçok servis boyunca takip eder. Log'lar en ayrıntılı sinyaldir ama büyük ölçekte saklaması da en pahalı olanıdır; bu yüzden ekipler genellikle eğilimler için metriklere, inceleme için log'lara güvenir.

## Önemli noktalar

- Loglama, çalışan bir programın zaman damgalı olaylarını sonradan incelemek üzere kaydeder.
- `DEBUG`, `INFO`, `WARN` ve `ERROR` gibi log seviyeleri önemi belirtir ve hacmi kontrol eder.
- Yapılandırılmış loglama, kayıtları adlandırılmış alanlarla JSON olarak yazar ve bu da sorgulamayı kolaylaştırır.
- Merkezi log toplama, ekiplerin birçok sunucunun log'larını tek yerde aramasını sağlar.
- Parolaları, token'ları veya diğer gizli bilgileri asla log'lara yazmayın.

## Örnek: Python'ın standart logging modülüyle log seviyeleri

```python
import logging

logging.basicConfig(
    level=logging.INFO,  # DEBUG messages are dropped at this level
    format="%(asctime)s %(levelname)s %(name)s %(message)s",
)
log = logging.getLogger("checkout")

log.debug("Cart contents: %s", cart)  # not written
log.info("Payment accepted for order %s", order_id)
log.warning("Payment retry %d for order %s", attempt, order_id)
log.error("Payment failed for order %s", order_id, exc_info=True)

# 2026-09-30 14:02:11,512 INFO checkout Payment accepted for order A-1042
```

## Sık sorulan sorular

**Log seviyeleri nedir?**

Log seviyeleri bir mesajın ne kadar önemli olduğunu etiketler; yaygın olarak `DEBUG`, `INFO`, `WARN`, `ERROR` ve bazen `FATAL` kullanılır. Bir program asgari bir seviyeyle yapılandırılır; böylece ayrıntılı hata ayıklama mesajları geliştirme sırasında gösterilir, canlı ortamda gizlenir.

**Yapılandırılmış loglama nedir?**

Yapılandırılmış loglama, her log kaydını serbest biçimli metin yerine adlandırılmış alanlara sahip veri, genellikle JSON olarak yazar. Bu, log araçlarının kırılgan metin ayrıştırması olmadan kayıtları filtrelemesini ve toplamasını sağlar; örneğin tek bir `orderId` için her hatayı bulmak gibi.

**Log'lar ile metrikler arasındaki fark nedir?**

Log, tek bir olayı ayrıntılarıyla kaydeder; örneğin tek bir başarısız ödemeyi ve hata mesajını. Metrik ise dakikadaki başarısız ödeme sayısı gibi zaman içinde ölçülen bir sayıdır; saklaması daha ucuzdur ve gösterge panelleri ile uyarılar için daha uygundur.

---

Software Dictionary: https://softwaredictionary.org/tr · https://softwaredictionary.org/tr/llms.txt
