主要有以下四部:
一、导包 (我用的是org.apache.log4j.Logger 将 log4j-1.2.17.jar放到lib下面)
二、在web.xml中添加一个监听
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
三、添加一个配置文件(src/main/resources 里面)
log4j.rootLogger = info, D
# log4j.rootLogger = all, stdout, D
#log4j.appender.stdout =org.apache.log4j.ConsoleAppender
##log4j.appender.stdout.Target = System.out
#log4j.appender.stdout.layout =org.apache.log4j.PatternLayout
#log4j.appender.stdout.layout.ConversionPattern= [test] %d{ABSOLUTE} %5p %c{1}:%L - %m%n
log4j.appender.D =org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File =${catalina.home}/logs/test/hanyetest.log
log4j.appender.D.DatePattern='_'yy-MM-dd
log4j.appender.D.Append = true
log4j.appender.D.Threshold = INFO
#log4j.appender.D.Threshold = ALL
log4j.appender.D.layout =org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern =[test] %-d{yyyy-MM-dd HH:mm:ss} [%t:%r] - [%p] %m%n
前面注释调的是 控制台的输出 ,不写也会默认打印出来(console中)
四、在java代码中,如下操作就可以把想要的输出到指定位置
private final static Logger logger = Logger.getLogger(UDPServiceImpl.class);
//在方法中使用如下
logger.info("============================第一种情况 查询所有机箱信息==========logger");
其中,当天的输出会保存在hanyetest.log 文件中,之前的则保存在类似于hanyetest.log_18-06-26的文件中(可以用notepad打开)
//============以下摘选自大神的博客,整理的很详细,============
假如项目的生产环境上增加请求以及响应信息的打印,这个时候,对于新手来说,可能就要用system.out,这样做,很大可能是要被挨骂的。至于为什么呢?下面先从log4j日志级别说起。
#定义输出级别和输出平台
log4j.rootLogger=error, console, keyfile
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%-12d{HH\:mm\:ss.SS}] [%p] %l %m%n
# 每天一个日志文件
log4j.appender.keyfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.keyfile.Append=true
log4j.appender.keyfile.DatePattern='.'yyyy-MM-dd
log4j.appender.keyfile.File=${catalina.base}/var/logs/sfbest-uas.log
log4j.appender.keyfile.layout=org.apache.log4j.PatternLayout
log4j.appender.keyfile.layout.ConversionPattern=%-23d{yyyy-MM-dd HH\:mm\:ss.SS}| %m%n
#对不同的文件定义不同的输出级别
log4j.appender.keyfile.Threshold=error
</