Ju urojme mireseardhjen ne sitin me te ri, dedikuar botes se programimit dhe teknologjise, ju urojme lexim te kendshem.
Faqja e pare > Java, Tutoriale > Log4j – mesazhe log ne projektin tuaj

Log4j – mesazhe log ne projektin tuaj

Eshte praktike e mire programimi, te perdorim mesazhe logu, qofte ne fazen e zhvillimiti per te pare sesi sillet aplikacioni, e qofte per te pare eksekutimin ne prodhim (eksekutim final, qofte ne desktop apo ne webconainer) te projekteve tona. Ky artikull prezanton log4j, zgjedhja ideale per projektet ne java. Kemi pregatitur edhe nje projekt te vogel testi ne java me eclipse, qe mund te shkarikoni.


Per kete mund te perdorim strumentat e ndryshme qe jana na ofron, duke nisur nga nje classa Logger e tek nje System.out.println i thjeshte, psh

System.out.println("ky eshte nje log")

por nje sistem i tille, eshte shume i limituar, pasi sme thote as emrin e klases e asgje tjeter, dhe thjeshte shruan nje mesazh ne log-un qendror te sistemit operativ, apo te webcontainerit.

Zgjedhja ideale, e perdorurne mase eshte libraria Log4J (log per javen). Ky eshte nje nga projektet e tjra te mrekullueshme te fondacionit Apache. Mund ta shkarikoni ne faqen zyrtare.

Si funksionon:
importojme librarine ne klasen tone:

import org.apache.log4j.*;

e tashme, mund te perdorim logerin, pa asnje

Logger logger = Logger.getLogger(getClass());
logger.info("gjithcka ok");
logger.error("nje gabim ne eksekutim, por gjithcka mund te vazhdoje");
logger.fatal("kjo nuk duhet te ndodhte... gabim fatal");

Konfigurimi:

Pasi te keni shkarikuar versionin binar, konfigurimi ehste mjaft i lehte, mjafton te kopjojme log4j.jar ne vendin e duhur, ndaj ne WEB_INF/lib nese nje aplikativ web, ose ne lib, apo ku kemi vendosur te mbajme librarite tona java.
Nese duam te perdorim kete librari per tere projektet tona web (tomcat) , atehere kopjojme kete filene \common\lib ku jane tere librarite e tomcat te bashkandara.

Kjo librari ka nevoje per nje fail konfigurimi qe quhet:

log4j.properties

ku ne ruajme filtrat dhe preferencat tona mbi loget e gjeneruara. Ky fail duhet ruajtur ne WEB-INF/classes nese aplikacion web, nerrot te projektit nese aplikacione standalone e ne \common\classes nese i tree webserverit.

Konfigurimi:

Si te kofigurojme kete fail, ja nje shembull:

# Niveli global i loggerit, ne kete rast info, cosole dhe ruaj ne file (ku duhet te ruaj nje kopje te logur)
log4j.rootLogger = INFO, CONSOLE, FILE

# Lidhem me consolen dhe konfiguroj loggerin.
log4j.appender.CONSOLE					= org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout			= org.apache.log4j.PatternLayout
# formati..
log4j.appender.CONSOLE.layout.ConversionPattern = %d %-5p %c %x- %m%n

log4j.appender.FILE=org.apache.log4j.RollingFileAppender
# ku te ruaj failin e logut
log4j.appender.FILE.File=c:\fail_logu.log
# mos bej nje filelogu me te madh se kaq
log4j.appender.FILE.MaxFileSize=2000KB
# Mbaj nje kopje backup-i
log4j.appender.FILE.MaxBackupIndex=1
#formati i ruajtjes se logut ne file
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern= %d %-5p %c %x- %m%n

# Shkruaj vetem nje tip logu (ne baze te nivelit te logut).
log4j.logger.org.apache.commons				= INFO, CONSOLE, FILE
log4j.additivity.org.apache.commons			= false

Gjithsesi duke punuar me kete strument shume te dobishem, do te mesoni edhe vete sesi ta konfiguroni ne menyre qe tu sherbeje me mire. Gjisthsesi nivelet e logut jane:

Debug        - per mesazhet e  debugging
Info         - per mesazhet normale
Warn         - per mesazhet e njoftimit
Error        - per mesazhet e gabimit
Fatal        - per gabimet fatale
Log          - per mesazhet e logut
All          - tere emsazhet

Eshte e mundur qe te formatojme log ne dalje edhe ne format html, xml, apo tjeter…
Paramatra e formatimit te outputit:

%5p tipi i prioritetit psh. (WARN, DEBUG, ecc.)
[%t] emri i threadit qe krijon mesazhin
%F emri i failit nga shruhet mesazhi
%L numri i rreshtit
%m Mesazhi i shkruar
%n rresht i ri
%c Categoria che ha scatenato il log.

Shembull:

Kam krijuaj nje projekt te thjeshte ne java me eclipse, qe mund te importoni ne ambientin tuaj dhe te testoni, nese keni probleme ne konfigurimit e nje ambienti fillestar.
Shkarikoni projektin e shembullit.

ne eksekutim te ketij projekti, do keni kete output:

2008-06-20 15:13:29,294 INFO  Test - Shembull i eksekutimit te nje loggeri!
2008-06-20 15:13:29,310 INFO  Test - Mesazhi 1
2008-06-20 15:13:29,310 INFO  Test - Mesazhi 2
2008-06-20 15:13:29,310 INFO  Test - Mesazhi 3
2008-06-20 15:13:29,310 INFO  Test - Mesazhi 4
2008-06-20 15:13:29,310 INFO  Test - Mesazhi 5
2008-06-20 15:13:29,310 INFO  Test - Mesazhi 6
2008-06-20 15:13:29,310 INFO  Test - Mesazhi 7
2008-06-20 15:13:29,310 INFO  Test - Mesazhi 8
2008-06-20 15:13:29,310 INFO  Test - gjithcka ok
2008-06-20 15:13:29,310 ERROR Test - nje gabim ne eksekutim, por gjithcka mund te vazhdoje
2008-06-20 15:13:29,326 FATAL Test - kjo nuk duhet te ndodhte... gabim fatal

Java, Tutoriale , ,

  1. Asnje koment.
  1. Asnje riferim.

AlbDevNet | Forumi | Kush jemi
AlbDevNet 2008 © tere te drejtat e rezervuara
Krijuar nga Elton Kola
100% shqiptar
made in albania
made in albania