log4j günlük kaydının hiyerarşisi nedir?
DEBUG
INFO
WARN
ERROR
FATAL
Hangisi sorunları gidermeye yardımcı olacak en yüksek günlük kaydını sağlar? Herhangi biri, günlük kaydının en yüksekten en düşüğe doğru gerçekleştiği sırayı veya hiyerarşiyi sağlayabilir mi? Teşekkürler!
Kuvveti kullanın, kaynağı okuyun (derlenen Priority
ve Level
sınıfından alıntı, TRACE seviyesi 1.2.12 sürümünde tanıtıldı):
public final static int OFF_INT = Integer.MAX_VALUE;
public final static int FATAL_INT = 50000;
public final static int ERROR_INT = 40000;
public final static int WARN_INT = 30000;
public final static int INFO_INT = 20000;
public final static int DEBUG_INT = 10000;
public static final int TRACE_INT = 5000;
public final static int ALL_INT = Integer.MIN_VALUE;
veya log4j API for the Level
class, bunu oldukça açık hale getirir.
Kütüphane belirli bir ifadeyi yazdırıp yazdırmayacağına karar verdiğinde, sorumlu Logger
nesnesinin etkin seviyesini hesaplar (yapılandırmaya dayalı olarak) ve bunu LogEvent
'in seviyesiyle karşılaştırır (kodda hangi yöntemin kullanıldığına bağlıdır – trace/debug/.../fatal). Eğer LogEvent'in seviyesi
Logger'ın seviyesine eşit veya büyükse, `LogEvent' appender(lar)a gönderilir – "printed". Özünde, her şey bir tamsayı karşılaştırmasına dayanır ve bu sabitlerin harekete geçtiği yer burasıdır.
[http://javarevisited.blogspot.com/2011/05/top-10-tips-on-logging-in-java.html adresinden alınmıştır]
DEBUG en düşük kısıtlı java loglama seviyesidir ve bir uygulamada hata ayıklamak için ihtiyaç duyduğumuz her şeyi yazmalıyız, bu java loglama modu yalnızca Geliştirme ve Test ortamında kullanılmalı ve üretim ortamında kullanılmamalıdır.
INFO, DEBUG java loglama seviyesinden daha kısıtlıdır ve java'da INFO seviyesi loglamada Sunucu başlatıldı, Gelen mesajlar, giden mesajlar vb. gibi bilgilendirme amaçlı mesajları loglamalıyız.
WARN, INFO java günlük seviyesinden daha kısıtlıdır ve uyarı türündeki mesajları günlüğe kaydetmek için kullanılır, örneğin istemci ile sunucu arasındaki bağlantı kesildi. Veritabanı bağlantısı kayboldu, Soket sınırına ulaşıyor. Bu mesajlar ve java loglama seviyesi neredeyse önemlidir çünkü java'da bu loglama mesajlarında uyarı ayarlayabilir ve destek ekibinizin java uygulamanızın sağlığını izlemesine ve bu uyarı mesajlarına tepki vermesine izin verebilirsiniz. Özet olarak WARN seviyesi, Java'da günlük kaydı için uyarı mesajını günlüğe kaydetmek için kullanılır.
ERROR, WARN'dan daha kısıtlı bir java loglama seviyesidir ve Hataları ve İstisnaları loglamak için kullanılır, ayrıca bu java loglama seviyesinde uyarı kurabilir ve bu mesajlara tepki vermek için izleme ekibini uyarabilirsiniz. ERROR, Java'da günlüğe kaydetme için ciddidir ve her zaman yazdırmalısınız.
FATAL java günlük seviyesi, muhtemelen uygulamanın iptal edilmesine neden olacak çok ciddi hata olaylarını belirtir. Bundan sonra çoğunlukla uygulamanız çöker ve durur.
OFF java günlük kaydı seviyesi mümkün olan en yüksek dereceye sahiptir ve Java'da günlük kaydını kapatmak için tasarlanmıştır.