如果想生成一個HTML格式的文件,日志信息,那么可以使用 org.apache.log4j.HTMLLayout 格式化日志信息。
HTMLLayout類擴展抽象org.apache.log4j.Layout類,并覆蓋其基類的 format()方法來提供HTML樣式格式。
這提供了以下信息顯示:
HTMLLayout是一個非常簡單的布局對象,它提供以下方法:
S.N. |
方法 & 描述 |
1 |
setContentType(String) |
2 |
setLocationInfo(String) |
3 |
setTitle(String) |
以下是對HTMLLayout一個簡單的配置文件:
# Define the root logger with appender file
log = /usr/home/log4j
log4j.rootLogger = DEBUG, FILE
# Define the file appender
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=${log}/htmlLayout.html
# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.HTMLLayout
log4j.appender.FILE.layout.Title=HTML Layout Example
log4j.appender.FILE.layout.LocationInfo=true
現在考慮下面的Java例子用于產生日志信息:
import org.apache.log4j.Logger;
import java.io.*;
import java.sql.SQLException;
import java.util.*;
public class log4jExample{
/* Get actual class name to be printed on */
static Logger log = Logger.getLogger(
log4jExample.class.getName());
public static void main(String[] args)
throws IOException,SQLException{
log.debug("Hello this is an debug message");
log.info("Hello this is an info message");
}
}
編譯并運行上述程序,它會在 /usr/home/log4j 目錄創建 htmlLayout.html 文件,該文件將有如下的日志信息:
Log session start time Mon Mar 22 13:30:24 AST 2014
Time |
Thread |
Level |
Category |
File:Line |
Message |
0 |
main |
DEBUG |
log4jExample |
log4jExample.java:15 |
Hello this is an debug message |
6 |
main |
INFO |
log4jExample |
log4jExample.java:16 |
Hello this is an info message |
可以使用一個Web瀏覽器打開htmlLayout.html 文件。同樣重要的是要注意,頁腳和標記是完全缺失。
一個具有HTML格式的日志文件的一大優勢是,它可以被發布為網頁可以遠程查看。