log4j.properties dosyası, özellikleri anahtar-değer çiftlerinde saklayan bir log4j yapılandırma dosyasıdır. log4j özellikler dosyası, log4j tarafından kullanılan tüm çalışma zamanı yapılandırmasını içerir. Bu dosya, log4j ekleyici bilgilerini, günlük düzeyi bilgilerini ve dosya ekleyiciler için çıktı dosyası adlarını içerecektir.
Java döngüden çıkıyor
Varsayılan olarak LogManager, CLASSPATH'de log4j.properties adlı bir dosyayı arar.
log4j.properties Söz Dizimi:
- Kök günlükçünün düzeyi DEBUG olarak tanımlanır. DEBUG, X adlı ekleyiciyi kendisine ekleyecektir.
- X adlı ekleyiciyi geçerli bir ekleyici olarak koyun.
- Ekleyici X'in düzenini koyun.
Bir ekleyici X için log4j.properties dosyasının sözdizimini görelim:
# Define the root logger with appender X log4j.rootLogger = DEBUG, X # Put the appender named X to be a File appender log4j.appender.X=org.apache.log4j.FileAppender # Define the layout for X appender log4j.appender.X.layout=org.apache.log4j.PatternLayout log4j.appender.X.layout.conversionPattern=%m%n
log4j.properties Örnek:
Yukarıdaki sözdiziminin yardımıyla log4j.properties dosyasında aşağıdakileri tanımlıyoruz:
- Kök günlükçünün düzeyi DEBUG olarak tanımlanır, DEBUG ekleyicisi ona FILE adını verir.
- Ekleyici FILE şu şekilde tanımlanır: org.Apache.log4j.FileAppender . Log dizininde bulunan log.out isimli bir dosyaya yazar.
- Belirtilen düzen modeli %m%n'dir; bu, yazdırılan günlük mesajının ardından bir yeni satır karakterinin geleceği anlamına gelir.
# Define the root logger with appender file log4j.rootLogger = DEBUG, FILE # Define the file appender log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=${log}/log.out # Define the layout for file appender log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.conversionPattern=%m%n
Log4j'nin ${variableName} gibi UNIX tarzı değişken değişimini desteklediğini unutmamak önemlidir.
log4j.properties - Diğer Örnekler:
Bu örnekte, tüm günlük kayıtları konsolunuza yönlendirilecektir:
# Root logger option log4j.rootLogger=INFO, stdout # Direct log messages to stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
Bu örnekte, tüm Günlük bilgileri belirttiğiniz günlük dosyasına yönlendirilecektir:
# Root logger option log4j.rootLogger=INFO, file # Direct log messages to a log file log4j.appender.file=org.apache.log4j.RollingFileAppender #Redirect to Tomcat logs folder #log4j.appender.file.File=${catalina.home}/logs/logging.log log4j.appender.file.File=C:\logigng.log log4j.appender.file.MaxFileSize=10MB log4j.appender.file.MaxBackupIndex=10 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
Bu örnekte, tüm günlük kaydı hem konsola hem de günlük dosyasına yönlendirilecektir:
# Root logger option log4j.rootLogger=INFO, file, stdout # Direct log messages to a log file log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=C:\logging.log log4j.appender.file.MaxFileSize=10MB log4j.appender.file.MaxBackupIndex=10 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n # Direct log messages to stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n