我们已经看到了如何创建配置文件。本章介绍如何生成调试消息并将其记录在简单的文本文件中。
以下是为我们的示例创建的简单配置文件。让我们再次修改它:
- 根记录器的级别定义为DEBUG,并将附加名为FILE的附加程序附加到它。
- 追加文件FILE定义为org.apache.log4j.FileAppender,并写入位于日志目录中的名为log.out的文件。
- 定义的布局模式为
%m%n
,这意味着打印的日志消息后将带有换行符。
log4j.properties文件的内容如下:
# 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}/log.out
# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n
注意: 这里显示定义了变量为log=/usr/home/log4j
,然后在后面直接使用${log}
来替换值的.
在Java程序中使用log4j
以下Java类是一个非常简单的示例,它初始化然后使用Java应用程序的log4j日志记录库。
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 a debug message");
log.info("Hello this is an info message");
}
}
编译执行
这是编译和运行上述程序的步骤。在继续进行编译和执行之前,请确保已正确设置了 PATH 和 CLASSPATH。
所有库都应该在 CLASSPATH 中可用,而 log4j.properties 文件应该在 PATH 中可用。请按照以下步骤操作:
- 如上所示创建log4j.properties。
- 如上所示创建log4jExample.java并进行编译。
- 执行log4jExample二进制文件以运行程序。
您将在/usr/home/log4j/log.out
文件中得到以下结果:
Hello this is a debug message
Hello this is an info message