tomcat默认的日志是使用commons.logging,下面以tomcat6.0.18为例说明log4j日志的配置。tomcat默认的也是输出日志日志的,可以把conf文件夹下的logging.properties删除或者改个其它名字,原来的日志就不会输出了。
看了网上的一些介绍,大多是下载tomcat-juli.jar放到TOMCAT安装目录的bin文件夹下,tomcat-juli-adapters.jar放到lib文件夹下,然后把log4j.jar、log4j.properties放到lib目录下。在我用的tomcat6.0.18下,tomcat-juli.jar在bin文件夹已经有了,至于tomcat-juli-adapters.jar则是又没有都可以,然后log4j的放置方法是一样的。下面给出一个log4j.properties的例子:
#
# Configures Log4j as the Tomcat system logger
# to output info level messages into a rolling log file.
#
# To continue using the "catalina.out" file (which grows forever),
# comment out the above line and uncomment the next.
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
#
log4j.rootLogger=Debug,A1,A2
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t][%x] %C{8}@(%F:%L):%m%n
# 设定输出位置,此处设定tomcat目录的logs下,文件名为 all.log。
log4j.appender.A2=org.apache.log4j.RollingFileAppender
log4j.appender.A2.File=${catalina.home}/logs/all.log
log4j.appender.A2.MaxFileSize=1024KB
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t][%x] %C{8}@(%F:%L):%m%n
log4j.logger.org.apache=Debug
然后建立一个简单的应用,此处只使用一个简单的jsp文件进行测试:
<%@page import="org.apache.log4j.Logger"%>
<%
Logger log = Logger.getLogger(this.getClass());
log.debug("test 日志测试");
%>
page content here.
运行这个jsp文件,就会看到在logs文件夹下面有all.log的日志文件。同时,如果是linux操作系统,在logs下面会有catalina.out文件,也输出的日志信息,在windows操作系统的控制台上会看到输出的日志信息。
如果在windows操作系统上,也输出一个catalina.out文件,就需要做一些修改:
1、打开bin下面的startup.bat文件,把call "%EXECUTABLE%" start %CMD_LINE_ARGS%改为call "%EXECUTABLE%" run %CMD_LINE_ARGS% 。
2、打开bin下面的catalina.bat文件,会发现共有4处 %ACTION% ,在后面分别加上 >> %CATALINA_HOME%\logs\catalina.out 。
重启tomcat,就会发现在logs文件夹下出现了catalina.out文件,把原来控制台的信息全写进去了。
但输出的这个catalina.out文件,是一直增长的,也就是文件会越来越大。而通过log4j.appender.A2=org.apache.log4j.RollingFileAppender这种方式配置的日志文件,是根据设定的文件大小自动切换的,如设置为最大1M,当文件达到1M,会把日志文件备份为另一个文件,原有日志文件则清空继续记录日志。
这种方式配置的日志,是把tomcat所有应用的日志都记录在一起了,也可以分别对每个应用记录各自的日志文件。如在一个应用的WEB-INF\classes建立一个log4j.properties文件(log4j默认找classpath下的log4j.properties):
log4j.rootLogger=Debug,A1,A2
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t][%x] %C{8}@(%F:%L):%m%n
#设定输出位置,此处设定tomcat目录的logs下,文件名为testA.log,是按文件大小切换的。
log4j.appender.A2=org.apache.log4j.RollingFileAppender
log4j.appender.A2.File=${catalina.home}/logs/testA.log
log4j.appender.A2.MaxFileSize=1024KB
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t][%x] %C{8}@(%F:%L):%m%n
在另一个应用的WEB-INF\classes建立一个log4j.properties文件:
log4j.rootLogger=Debug,A1,A2
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t][%x] %C{8}@(%F:%L):%m%n
#设定输出位置,此处设定tomcat目录的logs下,文件名为testB.log,是按一天一个日志文件切换的。
log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A2.File=${catalina.home}/logs/testB.log
log4j.appender.A2.DatePattern='.'yyyy-MM-dd
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t][%x] %C{8}@(%F:%L):%m%n
这样不同的应用就把日志记录到不同的日志文件中去了。
如果日志中出现汉字乱码问题,可以加上类似log4j.appender.A1.Encoding=ISO8859-1这样的语句,但是否有效果还要根据实际作调整才可以。
分享到:
相关推荐
### Tomcat 下的 Log4j 日志配置详解 在日常的 Web 开发中,日志记录对于调试问题、监控系统状态以及后期维护来说至关重要。在使用 Apache Tomcat 作为服务器时,合理配置日志框架(如 Log4j)能够极大地提高开发...
tomcat6.0 配log4j日志的必须文件及配置过程 tomcat6-------lib | |--------tomcat-juli-adapters.jar | |--------log4j.jar | |--------log4j.properites | |----bin |--------tomcat-juli.jar 最后把log4...
接下来,压缩包中的"**说明.txt**"文件应该是关于如何在Tomcat8中集成和配置Log4j的详细步骤,可能包括以下内容: 1. 将`log4j.properties`文件放置在Tomcat的`conf`目录下,以便于Tomcat启动时自动加载。 2. 如果...
2. **配置Log4j2**:Tomcat 9允许你在`$CATALINA_BASE/conf`目录下创建`log4j2.xml`文件来定制日志配置。`tomcat9-log4j2.xml`应该包含了如下内容: ```xml [%t] %-5level %logger{36} - %msg%n"/> ...
### Tomcat 6 配置 Log4j 步骤详解 ...通过上述步骤,你已经成功地在 Tomcat 6 中配置了 Log4j 日志记录系统。这不仅能够提高系统的可维护性,还能帮助快速定位问题,提升开发效率。希望本文对你有所帮助!
4. 定义日志输出格式:通过配置log4j.appender.CATALINA.layout为org.apache.log4j.PatternLayout,可以定义日志的格式。例如,可以设置为%d{yyyy-MM-ddHH:mm:ss.SSS}%p[%t]%c|%m%n来让日志格式和Log4j保持一致。 5...
在Tomcat下配置Log4j,你需要以下步骤: ### 1. 添加依赖 确保Tomcat的类路径中包含Log4j的jar包,通常包括`log4j.jar`和`log4j-api.jar`。你可以将这些文件放在Tomcat的`lib`目录下,或者在你的Web应用的`WEB-INF/...
3. 在J2EE应用的`web.xml`中配置Log4j初始化。 4. 如果需要,还可以在Struts2配置文件中调整框架级别的日志行为。 通过灵活配置Log4j,开发人员可以有效地监控应用状态,定位问题,同时避免不必要的日志输出对性能...
本文将深入探讨如何在Tomcat中配置Log4j,以实现高效、灵活的日志管理。 首先,我们来看一下标题中的"tomcat日志log4j配置的jar"。这意味着我们需要在Tomcat的环境中整合Log4j,通常涉及两个关键的JAR文件:`tomcat...
2. **配置Log4j**:创建一个`log4j.properties`或`log4j.xml`配置文件,定义日志级别、输出目的地、布局模式等。例如: ```properties # log4j.properties 示例 log4j.rootLogger=DEBUG, FILE log4j.appender....
本篇文章将深入探讨如何在Tomcat 8.0.30版本中配置Log4j,实现日志自动按天分割并保存。 1. **Log4j介绍** Log4j是Apache软件基金会的一个项目,提供了一个强大的日志API,允许开发者以简单的方式控制日志信息的...
在Java Web开发中,Tomcat是一个广泛使用的...总之,通过正确配置Log4j,我们可以使Tomcat的日志管理更加高效,确保在不影响系统性能的情况下获取所需的信息。记得定期清理旧的日志文件,以防止硬盘空间被过度占用。
tomcat支持采用log4j进行日志记录,配置方法如下: 1.更新最新的tomcat_juli.jar包到./bin/目录下; 2.拷贝log4j.jar,lo4j.properties到./lib目录下; 3.删除./conf/logging.properties 4.重启 log4j配置样本 实例...
2. **配置Log4j**: 在你的项目或Tomcat的类路径下(通常是`conf`目录)创建一个名为`log4j.properties`的文件。这个文件用于定义Log4j的行为。例如,你可以设置以下内容来指定日志输出级别和输出目的地: ``` log...
**标题:“Tomcat配置Log4j”** 在Java Web开发中,日志记录是一个至关重要的环节,它能够帮助开发者追踪程序运行状态、定位错误和调试问题。Tomcat,作为广泛使用的开源Servlet容器,通常需要与日志框架集成,Log4...
总结,本工程展示了如何在Eclipse中配置Log4j,以便每天将日志写入特定格式的文件中。这个配置对于任何Java项目都具有实用性,特别是对于需要长期维护和监控的应用来说,良好的日志记录习惯能大大提高问题定位和解决...
1. **Log4j配置**:首先,我们需要在Tomcat的类路径下添加`log4j.properties`或`log4j.xml`配置文件。在这个配置文件中,我们将定义日志的输出级别(如DEBUG、INFO、WARN等)、输出目的地(控制台、文件等)以及切分...
首先,需要将 Log4j 的 lib 包放在 Tomcat 的 lib 目录下,然后在 lib 目录新建一个 log4j.properties 文件,该文件用于配置 Log4j 的日志记录行为。下面是一个示例性的 log4j.properties 文件: log4j.rootLogger=...
在本文中,我们将深入探讨如何配置log4j,以便将日志信息输出到项目中的特定文件夹。 首先,我们需要创建一个`log4j.properties`或`log4j.xml`配置文件,这个文件通常放在项目的`src/main/resources`目录下。在这个...
5. **自定义日志配置**:如果你需要对特定的应用进行更精细的日志控制,可以在WEB-INF/classes或WEB-INF/lib目录下添加自己的`log4j.properties`或`log4j.xml`文件。这将覆盖Tomcat的全局日志配置,只影响该应用的...