Apache loj4j Java tabanlı bir log (sistem günlüğü) tutma mekanizmasıdır. Sektörde sevilir, kullanışlıdır. Projelere entegre edilmesi ve kullanması da kolay sayılabilir.
Yapmamız gerekenler;
- jar dosyasını indirip projemizin kütüphaneleri arasına eklemek
- projemizin build path’ine bu jarı göstermek.
Bu adımlardan sonra log4j ile çalışmaya hazırız. Örnek olması açısından bir “Student” sınıfı yazıp, onu loglamaya çalışacağım. Uygulama çok temek olacak, hatta o kadar temel olacak ki, normalde 2 çeşit log4j ayarlama yolu var;
- property file hazırlayarak
- XML dosyası hazırlayıp
fakat ben log4j’nin sağlamış olduğu “BasicConfigurator” sınıfının “configure()” metodu yardımıyla herhangi bir dosya kullanmadan log4j’i ayağa kaldıracağım.
package org.sukru.log4j; public class Student { private Long studentNumber; private String firstName; private String lastName; public Student(Long studentNumber, String firstName, String lastName) { this.studentNumber = studentNumber; this.firstName = firstName; this.lastName = lastName; } // getters and setters }
Loj4j’yi ayağa kaldırıp, kullandığımız test sınıfımızı da yazalım.
package org.sukru.log4j; import org.apache.log4j.BasicConfigurator; import org.apache.log4j.Logger; public class Log4jTest { public static void main(String[] args) { BasicConfigurator.configure(); // log4j'yi ayağa kaldıralım. Logger logger = Logger.getLogger(Student.class); // hangi sınıfı takip edeceğimizi belirtelim. logger.info("Initializing new Student..."); Student student = new Student(100L, "Yunus Emre", "Aslan"); logger.info("new Student initialized: "+student.getFirstName()+" "+student.getLastName()); } }
Bu sınıfı çalıştırdığımız zaman çıktısı şu şekilde olacaktır.
0 [main] INFO org.sukru.log4j.Student - Initializing a new Student... 2 [main] INFO org.sukru.log4j.Student - new Student initialized: Yunus Emre Aslan
Bilgi amaçlı “info(Object message)” metodunu kullandım ama isteğe ve amaca göre şu metodlar kullanılabilir;
- fatal()
- error()
- warn()
- debug()
- trace()
- info()
Diğer yapılandırma usüllerini başka bir yazıda anlatacağım. Giriş için bunun yeterli olacağını düşünüyorum. Kolay gelsin.
Geri izleme: Log4j Konfigürasyon | Şükrü Çakmak | Java / JSF / JPA / Seam
Güzel 😉
Geri izleme: Log4j Konfigürasyon | Şükrü Çakmak | Java / JSF / JPA / Seam
Teşekkürler, gayet anlaşılır olmuş.