1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
import org.apache.log4j.*;
import java.io.*;
import java.util.Date;
import java.text.SimpleDateFormat;
/**
*
* @author Administrateur
*/
public class TestLogger {
//Creation d'un logger
public void LoggerMethode1(){
System.out.println("**************************** LOGGER METHODE 1 ****************************");
//Creation logger
Category cat = Category.getRoot();
//Creation d'un Appender de Base. Méthode creant d'office le appende de type console
//méthode BASIC
BasicConfigurator.configure();
// Affichage des messages d'erreurs
System.out.println("*** Methode 1 *** Priorité par défaut");
Affichemessage(cat);
//Place un niveau d'erreur en dessous duquel on ne veut pas être informé
cat.setLevel(Level.ERROR);
System.out.println("*** Methode 1 *** Elevation du niveau de priorité a ----> ERROR <----");
Affichemessage(cat);
cat.setLevel(Level.OFF);
System.out.println("*** Methode 1 *** Elevation du niveau de priorité a ----> OFF <----");
Affichemessage(cat);
cat.setLevel(Level.ALL);
System.out.println("*** Methode 1 *** Elevation du niveau de priorité a ----> ALL <----");
Affichemessage(cat);
}
public void LoggerMethode2(){
System.out.println("\n**************************** LOGGER METHODE 2 ****************************");
Logger root = Logger.getRootLogger();
//Creation de notre Layout
Layout layout = new PatternLayout("%p [%t] %c (%F:%L) - %m%n");
//Ajout de notre appender a root
root.addAppender(new ConsoleAppender(layout, ConsoleAppender.SYSTEM_OUT));
Category cat = Category.getInstance(TestLogger.class.getName());
// Affichage des messages d'erreurs
System.out.println("*** Methode 2 *** Priorité par défaut");
Affichemessage(cat);
//Place un niveau d'erreur en dessous duquel on ne veut pas être informé
cat.setLevel(Level.ERROR);
System.out.println("*** Methode 2 *** Elevation du niveau de priorité a ----> ERROR <----");
Affichemessage(cat);
cat.setLevel(Level.OFF);
System.out.println("*** Methode 2 *** Elevation du niveau de priorité a ----> OFF <----");
Affichemessage(cat);
cat.setLevel(Level.ALL);
System.out.println("*** Methode 2 *** Elevation du niveau de priorité a ----> ALL <----");
Affichemessage(cat);
}
public void LoggerMethode3(){
Date maDate=new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
Category cat =null;
System.out.println("\n**************************** LOGGER METHODE 3 ****************************");
Logger root = Logger.getRootLogger();
//Creation de notre Layout cet fois ce sera un layout HTML
HTMLLayout layout = new HTMLLayout();
WriterAppender appender = null;
try {
FileOutputStream output = new FileOutputStream("FichierLog-" + dateFormat.format(maDate) + ".html");
appender = new WriterAppender(layout, output);
}
catch (Exception e) {
e.printStackTrace();
}
//Category cat = Category.getInstance(TestLogger.class.getName()); méthode identique pourquoi car Logger extends Category :)
cat = root.getInstance(TestLogger.class.getName());
//Ajout de notre appender a root
//root.addAppender(appender); les deux méthodes sont identiques
cat.addAppender(appender);
// Affichage des messages d'erreurs
System.out.println("*** Methode 3 *** Priorité par défaut");
Affichemessage(cat);
//Place un niveau d'erreur en dessous duquel on ne veut pas être informé
cat.setLevel(Level.ERROR);
System.out.println("*** Methode 3 *** Elevation du niveau de priorité a ----> ERROR <----");
Affichemessage(cat);
cat.setLevel(Level.OFF);
System.out.println("*** Methode 3 *** Elevation du niveau de priorité a ----> OFF <----");
Affichemessage(cat);
cat.setLevel(Level.ALL);
System.out.println("*** Methode 3 *** Elevation du niveau de priorité a ----> ALL <----");
Affichemessage(cat);
}
private void Affichemessage(Category cat){
cat.log(Level.DEBUG,"Message Type : DEBUG Niveau 1");
cat.log(Level.INFO, "Message Type : INFO Niveau 2");
cat.log(Level.WARN, "Message Type : WARN Niveau 3");
cat.log(Level.ERROR,"Message Type : ERROR Niveau 4");
cat.log(Level.FATAL,"Message Type : FATAL Niveau 5");
}
} |
Partager