java - 如何进行简单的log4j配置?

标签 java tomcat log4j

我想将日志文件记录到我的应用程序中。
我为此尝试Appach log4j。在Java代码中我说:

        Logger log = Logger.getLogger(uploadfile.class);
        log.debug("Start");

我创建文件src\log4j.properties:

# ***** Set root logger level to DEBUG and its only appender to A.
log4j.rootLogger=DEBUG, R, A
log4j.rootLogger=INFO, A

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.MaxFileSize=100mb
log4j.appender.R.MaxBackupIndex=1000
log4j.appender.R.File=c:/uploaded_files/server.log
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d [%t] %-5p %c - %m%n


# ***** A is set to be a ConsoleAppender.
log4j.appender.A=org.apache.log4j.ConsoleAppender
# ***** A uses PatternLayout.
log4j.appender.A.Threshold=INFO
log4j.appender.A.layout=org.apache.log4j.PatternLayout
log4j.appender.A.layout.ConversionPattern=%d [%t] %-5p %c - %m%n

log4j.logger.org.hibernate.type.BasicTypeRegistry=INFO
log4j.logger.com.opensymphony.xwork2.config.providers.XmlConfigurationProvider=INFO

我复制这个there 。我收到错误:

  13.02.2013 9:03:34 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [uploadfile] in context with path [/gis-mrsk-portlet] threw exception [Servlet execution threw an exception] with root cause
java.lang.NoClassDefFoundError: Could not initialize class org.apache.log4j.LogManager
at org.apache.log4j.Logger.getLogger(Logger.java:117)
at test.uploadfile.doPost(uploadfile.java:35)

我做错了什么?那么如何简单地配置log4j呢?

更新

如果我使用此配置,我会得到日志文件,但它是空的:

Set root category priority to INFO and its only appender to CONSOLE.
log4j.rootCategory=INFO, CONSOLE, LOGFILE

Set the enterprise logger priority to FATAL
log4j.logger.org.apache.axis2.enterprise=FATAL
log4j.logger.de.hunsicker.jalopy.io=FATAL
log4j.logger.httpclient.wire.header=FATAL
log4j.logger.org.apache.commons.httpclient=FATAL

 CONSOLE is set to be a ConsoleAppender using a PatternLayout.
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=[%p] %m%n

 LOGFILE is set to be a File appender using a PatternLayout.
log4j.appender.LOGFILE=org.apache.log4j.FileAppender
log4j.appender.LOGFILE.File=C:/uploaded_files/LogFile.log
log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%d [%t] %-5p %c %x - %m%n

最佳答案

看起来是正确的..您是否在路径中正确设置了 log4j Lib?

关于java - 如何进行简单的log4j配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14849904/

相关文章:

java - 如何将源代码从 jar 文件导入到 Eclipse 中?

java - ArrayList不存储值

java - 学习spring时出错

java - 复杂的 RESTful GET 查询

logging - JBoss webapp 上不显示 log4j 记录器消息

java - LibGDX - 如何保存生成的 FreeType 字体

java - Ant 构建失败 - build.xml

apache - 无论如何要通过分区用户名来平衡 tomcat 中的负载?

java - 记录器(log4j)应该在 servlet 中的哪里初始化?

apache-kafka - Kafka 连接器日志