Mega Code Archive

 
Categories / Java Tutorial / Log
 

Using Regular Expressions based on StreamHandler

import java.util.logging.Handler; import java.util.logging.Level; import java.util.logging.LogRecord; import java.util.logging.Logger; import java.util.logging.StreamHandler; import java.util.regex.Matcher; import java.util.regex.Pattern; public class MainClass {   public static void main(String args[]) {     Logger log = Logger.getAnonymousLogger();     setLoggerhandler(log);     log.finest(new Exception().toString());   }   public static void setLoggerhandler(Logger logger) {     Handler handler = new ExceptionHandler();     logger.addHandler(handler);     logger.setLevel(Level.ALL);   } } class ExceptionHandler extends StreamHandler {   public void publish(LogRecord record) {     String msg = record.getMessage();     int exceptionIndex = msg.indexOf("Exception");     if (exceptionIndex > -1) {       Pattern pattern = Pattern.compile("(.*Exception.*)");       Matcher matcher = pattern.matcher(msg);       if (matcher != null && matcher.find()) {         String err = "EXCEPTION FOUND " + matcher.group(1);         System.out.println(err);       }     }   } }