0

我需要简单的路径设置来使用 log4j 来记录 FINEST 级别的日志记录。但是所有论坛和讨论都在 eclipse 或某些开发环境中显示 log4j.properties 文件的路径设置。对于非开发用户,我需要设置 log4j.properties 文件,我在 C:\apache-tomcat-7.0.27\conf 路径中尝试过,但没有帮助。标准输出日志显示默认日志,注意我已经从 \conf 文件夹中删除了默认的 ogging.properties。我在哪里将 log4j.properties 文件放在 windows Tomcat 文件夹中?

4

1 回答 1

0

好吧,正如官方文档所说(http://tomcat.apache.org/tomcat-7.0-doc/logging.html),您不应该删除默认的 logging.properites 文件,该文件位于:

${catalina.base}/conf/logging.properties

,而是在那里添加您需要的内容:

org.apache.catalina.level=FINEST

您需要确保 ConsoleHandler(或 FileHandler 的)级别也设置为收集此阈值,因此应设置 FINEST 或 ALL。

还是对您使用有任何严格要求log4j(默认情况下JULI由 使用tomcat7)?

更新

好的,正如您所提到的,您只对 log4j 案例感兴趣。让我指出官方文档:http: //tomcat.apache.org/tomcat-7.0-doc/logging.html#Using_Log4j

请按照那里的步骤进行操作。因为他们声称正在工作:)

对于您提到的明确要点, log4j.properties 文件的位置:

使用以下内容创建一个名为 log4j.properties 的文件并将其保存到 $CATALINA_BASE/lib

log4j.rootLogger=FINEST, CATALINA

# Define all the appenders
log4j.appender.CATALINA=org.apache.log4j.DailyRollingFileAppender
log4j.appender.CATALINA.File=${catalina.base}/logs/catalina.
log4j.appender.CATALINA.Append=true
log4j.appender.CATALINA.Encoding=UTF-8
# Roll-over the log once per day
log4j.appender.CATALINA.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout
log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

log4j.appender.LOCALHOST=org.apache.log4j.DailyRollingFileAppender
log4j.appender.LOCALHOST.File=${catalina.base}/logs/localhost.
log4j.appender.LOCALHOST.Append=true
log4j.appender.LOCALHOST.Encoding=UTF-8
log4j.appender.LOCALHOST.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.LOCALHOST.layout = org.apache.log4j.PatternLayout
log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

log4j.appender.MANAGER=org.apache.log4j.DailyRollingFileAppender
log4j.appender.MANAGER.File=${catalina.base}/logs/manager.
log4j.appender.MANAGER.Append=true
log4j.appender.MANAGER.Encoding=UTF-8
log4j.appender.MANAGER.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.MANAGER.layout = org.apache.log4j.PatternLayout
log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

log4j.appender.HOST-MANAGER=org.apache.log4j.DailyRollingFileAppender
log4j.appender.HOST-MANAGER.File=${catalina.base}/logs/host-manager.
log4j.appender.HOST-MANAGER.Append=true
log4j.appender.HOST-MANAGER.Encoding=UTF-8
log4j.appender.HOST-MANAGER.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.HOST-MANAGER.layout = org.apache.log4j.PatternLayout
log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Encoding=UTF-8
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n

# Configure which loggers log to which appenders
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=INFO, LOCALHOST
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager]=\
  INFO, MANAGER
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager]=\
  INFO, HOST-MANAGER

与官方文档相比,我只是将配置的第一行更改为: log4j.rootLogger= FINEST , CATALINA

(但请确保您也完成其余步骤 - 例如复制 jar 文件,...)

于 2013-01-16T06:14:50.537 回答