HTMLFormatter.java Source code

Java tutorial

Introduction

Here is the source code for HTMLFormatter.java

Source

import java.util.Date;
import java.util.logging.FileHandler;
import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.LogManager;
import java.util.logging.LogRecord;
import java.util.logging.Logger;
import java.util.logging.XMLFormatter;

class HTMLFormatter extends java.util.logging.Formatter {
    public String format(LogRecord record) {
        return ("<tr><td>" + (new Date(record.getMillis())).toString() + "</td><td>" + record.getMessage()
                + "</td></tr>\n");
    }

    public String getHead(Handler h) {
        return ("<html>\n  <body>\n" + "<Table border>\n<tr><td>Time</td><td>Log Message</td></tr>\n");
    }

    public String getTail(Handler h) {
        return ("</table>\n</body>\n</html>");
    }
}

public class LoggingHTMLFormatter {
    public static void main(String args[]) throws Exception {
        LogManager lm = LogManager.getLogManager();
        Logger parentLogger, childLogger;
        FileHandler xml_handler = new FileHandler("log_output.xml");
        FileHandler html_handler = new FileHandler("log_output.html");
        parentLogger = Logger.getLogger("ParentLogger");
        childLogger = Logger.getLogger("ParentLogger.ChildLogger");

        lm.addLogger(parentLogger);

        lm.addLogger(childLogger);

        parentLogger.setLevel(Level.WARNING);
        childLogger.setLevel(Level.ALL);
        xml_handler.setFormatter(new XMLFormatter());
        html_handler.setFormatter(new HTMLFormatter());

        parentLogger.addHandler(xml_handler);
        childLogger.addHandler(html_handler);

        childLogger.log(Level.FINE, "This is a fine log message");
        childLogger.log(Level.SEVERE, "This is a severe log message");
        xml_handler.close();
        html_handler.close();
    }
}