`
lgstarzkhl
  • 浏览: 330644 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

在tomcat6下配置log4j日志

    博客分类:
  • java
阅读更多
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日志配置

    tomcat下的log4j日志配置,给tomcat配置log4j有好几种方法,我知道的有: 一、tomcat级别的统一日志管理 二、每个webapp分别配置log4j

    tomcat6.0 配log4j日志的必须文件及配置过程

    tomcat6.0 配log4j日志的必须文件及配置过程 tomcat6-------lib | |--------tomcat-juli-adapters.jar | |--------log4j.jar | |--------log4j.properites | |----bin |--------tomcat-juli.jar 最后把log4...

    tomcat8更换log4j记录日志

    接下来,压缩包中的"**说明.txt**"文件应该是关于如何在Tomcat8中集成和配置Log4j的详细步骤,可能包括以下内容: 1. 将`log4j.properties`文件放置在Tomcat的`conf`目录下,以便于Tomcat启动时自动加载。 2. 如果...

    Tomcat下使用Log4j接管生成日志文件

    在Tomcat下配置Log4j,你需要以下步骤: ### 1. 添加依赖 确保Tomcat的类路径中包含Log4j的jar包,通常包括`log4j.jar`和`log4j-api.jar`。你可以将这些文件放在Tomcat的`lib`目录下,或者在你的Web应用的`WEB-INF/...

    tomcat9 slf4j+log4j2 写日志.zip

    针对 tomcat9 slf4j+log4j2 不写日志的问题进行修复

    log4j tomcat日志jar包 tomcat-juli-adapters,log4j-1.2.15.jar,tomcat-juli.jar

    2. 配置Log4j:创建一个`log4j.properties`或`log4j.xml`配置文件,指定日志输出的位置、格式和级别。 3. 替换Tomcat的JULI配置:在`$CATALINA_BASE/conf/logging.properties`文件中,将日志处理器指向Log4j适配器,...

    tomcat日志log4j配置的jar

    本文将深入探讨如何在Tomcat中配置Log4j,以实现高效、灵活的日志管理。 首先,我们来看一下标题中的"tomcat日志log4j配置的jar"。这意味着我们需要在Tomcat的环境中整合Log4j,通常涉及两个关键的JAR文件:`tomcat...

    tomcat下struts2的log4j日志配置.doc

    3. 在J2EE应用的`web.xml`中配置Log4j初始化。 4. 如果需要,还可以在Struts2配置文件中调整框架级别的日志行为。 通过灵活配置Log4j,开发人员可以有效地监控应用状态,定位问题,同时避免不必要的日志输出对性能...

    Tomcat 8.0.30 log4j配置

    本篇文章将深入探讨如何在Tomcat 8.0.30版本中配置Log4j,实现日志自动按天分割并保存。 1. **Log4j介绍** Log4j是Apache软件基金会的一个项目,提供了一个强大的日志API,允许开发者以简单的方式控制日志信息的...

    Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式

    2. **配置Log4j**:创建一个`log4j.properties`或`log4j.xml`配置文件,定义日志级别、输出目的地、布局模式等。例如: ```properties # log4j.properties 示例 log4j.rootLogger=DEBUG, FILE log4j.appender....

    tomcat下用Log4j 按文件大小,生成catalina.out日志文件

    在Java Web开发中,Tomcat是一个广泛使用的...总之,通过正确配置Log4j,我们可以使Tomcat的日志管理更加高效,确保在不影响系统性能的情况下获取所需的信息。记得定期清理旧的日志文件,以防止硬盘空间被过度占用。

    Linux tomcat下catalina.out日志文件分割

    tomcat支持采用log4j进行日志记录,配置方法如下: 1.更新最新的tomcat_juli.jar包到./bin/目录下; 2.拷贝log4j.jar,lo4j.properties到./lib目录下; 3.删除./conf/logging.properties 4.重启 log4j配置样本 实例...

    tomcat log4j 配置及需要的几个jar

    2. **配置Log4j**: 在你的项目或Tomcat的类路径下(通常是`conf`目录)创建一个名为`log4j.properties`的文件。这个文件用于定义Log4j的行为。例如,你可以设置以下内容来指定日志输出级别和输出目的地: ``` log...

    tomcat配置log4j

    **标题:“Tomcat配置Log4j”** 在Java Web开发中,日志记录是一个至关重要的环节,它能够帮助开发者追踪程序运行状态、定位错误和调试问题。Tomcat,作为广泛使用的开源Servlet容器,通常需要与日志框架集成,Log4...

    配置好log4j的eclipse简单工程,每天输出到一个日志文件中,该文件名为:“XXX_年月日时分.log”的形式

    总结,本工程展示了如何在Eclipse中配置Log4j,以便每天将日志写入特定格式的文件中。这个配置对于任何Java项目都具有实用性,特别是对于需要长期维护和监控的应用来说,良好的日志记录习惯能大大提高问题定位和解决...

    tomcat log4j切分日志所需jar包

    1. **Log4j配置**:首先,我们需要在Tomcat的类路径下添加`log4j.properties`或`log4j.xml`配置文件。在这个配置文件中,我们将定义日志的输出级别(如DEBUG、INFO、WARN等)、输出目的地(控制台、文件等)以及切分...

    tomcat5.5 log配置所需文件

    5. **自定义日志配置**:如果你需要对特定的应用进行更精细的日志控制,可以在WEB-INF/classes或WEB-INF/lib目录下添加自己的`log4j.properties`或`log4j.xml`文件。这将覆盖Tomcat的全局日志配置,只影响该应用的...

    log4j.jar,tomcat-juli.jar,tomcat-juli-adapters.jar

    通过配置log4j的XML或.properties文件,开发者可以精细调整日志的输出行为,满足不同环境下的需求。 接下来,我们讨论`tomcat-juli.jar`。Tomcat JULI,全称为Java Util Logging (JUL) Interface,它是Tomcat对Java...

    TOMCAT6日志配置JAR包及配置文件

    你需要将这个JAR包放到Tomcat的`lib`目录下,这样Tomcat在启动时就会加载这个库,从而使用Log4j进行日志记录。 配置文件部分,通常情况下,Log4j的配置文件名为`log4j.properties`或`log4j.xml`。这个资源包中的...

    WAS上log4j日志不能输出(ibatis)sql语句解决办法[借鉴].pdf

    WAS 上 log4j 日志不能...解决 WAS 上 log4j 日志不能输出(ibatis)sql 语句的问题需要改变 WAS 的默认 LogFactory 实现类,使其使用 log4j 框架下的 LogFactory 实现类,并且需要正确配置 log4j.properties 文件。

Global site tag (gtag.js) - Google Analytics