Java by API/java.util.logging/Handler

Материал из Java эксперт
Перейти к: навигация, поиск

Handler: setFormatter(Formatter newFormatter)

   <source lang="java">

import java.io.IOException; import java.util.logging.ConsoleHandler; import java.util.logging.FileHandler; import java.util.logging.Handler; import java.util.logging.Logger; import java.util.logging.XMLFormatter; public class MainClass {

 public static void main(String args[]) {
   Logger logger = Logger.getLogger("my.log");
   Handler handler = null;
   try {
     handler = new FileHandler("messages.log");
   } catch (IOException e) {
     System.out.println("Could not create file. Using the console handler");
     handler = new ConsoleHandler();
   }
   logger.addHandler(handler);
   handler.setFormatter(new XMLFormatter());
   logger.info("Our first logging message");
   logger.severe("Something terrible happened");
 }

}


 </source>
   
  
 
  



implements Handler

   <source lang="java">
 

import java.util.ArrayList; import java.util.List; import java.util.logging.Handler; import java.util.logging.LogRecord; import java.util.logging.Logger; public class Main {

 private static Logger logger = Logger.getLogger("CustomHandler");
 private static List<String> strHolder = new ArrayList<String>();
 public static void main(String[] args) {
   logger.addHandler(new Handler() {
     public void publish(LogRecord logRecord) {
       strHolder.add(logRecord.getLevel() + ":");
       strHolder.add(logRecord.getSourceClassName() + ":");
       strHolder.add(logRecord.getSourceMethodName() + ":");
       strHolder.add("<" + logRecord.getMessage() + ">");
       strHolder.add("\n");
     }
     public void flush() {
     }
     public void close() {
     }
   });
   logger.warning("Logging Warning");
   logger.info("Logging Info");
   System.out.print(strHolder);
 }

}


 </source>