一、tomcat级别的统一日志管理(没有实际验证过,只是查了资料):
在tomcat的common/lib下增加log4j的.jar包,以便程序使用的时候,能够加载到。
在自己的webapps的WEB-INF/classes下添加log4j.properties配置,所有的东西都是自动的
这种方式的缺点很明显,一个tomcat可能会多个子webapps,都统一到一个日志下,非常不便于管理。所以重点看下面
二、每个webapp分别配置log4j(切实可行的实践经验)
1、在自己youapp的WEB-INF/lib下增加log4j-xxx.jar文件
2、自己写一个servlet,初始化log4j的相关配置信息:
Java代码
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;
import org.apache.log4j.PropertyConfigurator;
public class Log4jInitServlet extends HttpServlet {
public void service(ServletRequest req, ServletResponse resp) throws ServletException, IOException {
}
public void init() throws ServletException {
System.setProperty("webappRoot", getServletContext().getRealPath("/"));
PropertyConfigurator.configure(getServletContext().getRealPath("/") + getInitParameter("configfile"));
}
}
3、修改web.xml文件,让tomcat启动你app的时候自动加载刚才这个servlet:
Xml代码
<!-- initialize log4j -->
<servlet>
<servlet-name>log4j config file</servlet-name>
<servlet-class>com.keepc.util.Log4jInitServlet</servlet-class>
<init-param>
<param-name>configfile</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
4、在youapp/WEB-INF/classes先新建log4j.properties文件,内容如下:
log4j.rootLogger=debug, A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.file=${webappRoot}/logs/youapp_log-
log4j.appender.A1.DatePattern=yyyy-MM-dd'.log'
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss, SSS}[%c]-[%p] %m%n
5、重新启动tomcat,即可在你的youapp应用目录下看到logs目录和对应的log文件
#:这里说道的webapp目录是指:c:\program files\tomcat\webapps\youapp目录
6、在你的app目录下创建一个jsp做下测试:
Html代码
<%@ page contentType="text/html; charset=GBK" language="java" import="org.apache.log4j.Logger,java.util.*"%>
<html>
<head>
<link href="style/reg.css" rel="stylesheet" type="text/css">
<title>测试页面</title>
</head>
<body>
<%
Logger log = Logger.getLogger("test.jsp");
log.debug("测试日志,哈哈");
%>
</body>
</html>
在你的浏览器调用下这个jsp,就可以看到日志内容了。
本方法在windows和linux下都通用,完全一样。
只与log4j.properties的详细配置方法,网上随便google下都有一箩筐,照抄就是了。
分享到:
相关推荐
### Tomcat 下的 Log4j 日志配置详解 在日常的 Web 开发中,日志记录对于调试问题、监控系统状态以及后期维护来说至关重要。在使用 Apache Tomcat 作为服务器时,合理配置日志框架(如 Log4j)能够极大地提高开发...
**标题:“Tomcat配置Log4j”** 在Java Web开发中,日志记录是一个至关重要的环节,它能够帮助开发者追踪程序运行状态、定位错误和调试问题。Tomcat,作为广泛使用的开源Servlet容器,通常需要与日志框架集成,Log4...
2. **配置Log4j2**:Tomcat 9允许你在`$CATALINA_BASE/conf`目录下创建`log4j2.xml`文件来定制日志配置。`tomcat9-log4j2.xml`应该包含了如下内容: ```xml [%t] %-5level %logger{36} - %msg%n"/> ...
本篇文章将深入探讨如何在Tomcat 8.0.30版本中配置Log4j,实现日志自动按天分割并保存。 1. **Log4j介绍** Log4j是Apache软件基金会的一个项目,提供了一个强大的日志API,允许开发者以简单的方式控制日志信息的...
tomcat6.0 配log4j日志的必须文件及配置过程 tomcat6-------lib | |--------tomcat-juli-adapters.jar | |--------log4j.jar | |--------log4j.properites | |----bin |--------tomcat-juli.jar 最后把log4...
本文将深入探讨如何在Tomcat中配置Log4j,以实现高效、灵活的日志管理。 首先,我们来看一下标题中的"tomcat日志log4j配置的jar"。这意味着我们需要在Tomcat的环境中整合Log4j,通常涉及两个关键的JAR文件:`tomcat...
接下来,压缩包中的"**说明.txt**"文件应该是关于如何在Tomcat8中集成和配置Log4j的详细步骤,可能包括以下内容: 1. 将`log4j.properties`文件放置在Tomcat的`conf`目录下,以便于Tomcat启动时自动加载。 2. 如果...
### Tomcat 6 配置 Log4j 步骤详解 #### 一、引言 在 Java Web 开发中,日志记录对于调试程序、跟踪错误以及系统维护来说至关重要。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,tomcat-juli.jar
2. **配置Log4j**: 在你的项目或Tomcat的类路径下(通常是`conf`目录)创建一个名为`log4j.properties`的文件。这个文件用于定义Log4j的行为。例如,你可以设置以下内容来指定日志输出级别和输出目的地: ``` log...
2. **配置Log4j**:创建一个`log4j.properties`或`log4j.xml`配置文件,定义日志级别、输出目的地、布局模式等。例如: ```properties # log4j.properties 示例 log4j.rootLogger=DEBUG, FILE log4j.appender....
在Tomcat中配置Log4j,可以实现按照文件大小生成日志文件,如`catalina.out`,从而避免单个日志文件过大导致的管理不便。 首先,我们需要理解Log4j的工作原理。Log4j主要包括三个核心组件:Logger(日志器)、...
在Tomcat下配置Log4j,你需要以下步骤: ### 1. 添加依赖 确保Tomcat的类路径中包含Log4j的jar包,通常包括`log4j.jar`和`log4j-api.jar`。你可以将这些文件放在Tomcat的`lib`目录下,或者在你的Web应用的`WEB-INF/...
Log4j是Apache的一个开源项目,它为Java应用程序提供了强大的日志处理能力。在Tomcat服务器上配置Struts2...通过灵活配置Log4j,开发人员可以有效地监控应用状态,定位问题,同时避免不必要的日志输出对性能的影响。
4. **通过web.xml配置Log4j** - 在web.xml中,我们可以使用`<context-param>`标签来指定Log4j配置文件的位置,例如: ```xml <param-name>log4jConfigLocation <param-value>/WEB-INF/classes/log4j....
2. **Log4j配置文件**:通常,Log4j的配置文件名为`log4j.properties`或`log4j.xml`,这个文件定义了日志输出的级别(如DEBUG, INFO, WARN, ERROR, FATAL)、输出目的地(控制台、文件、电子邮件等)以及日志布局。...
apache-tomcat-7.0.55版本配置log4j所需的jar包(tomcat-juli.jar, tomcat-juli-adapters.jar和log4j-1.2.17.jar)和log4j.properties文件
问题的核心在于,当Tomcat8配置使用SLF4J和Log4j2时,如果日志无法正常输出,可能有以下几个原因: 1. **依赖冲突**:确保你的项目中没有引入了其他日志框架的jar包,如logback或log4j1.x,这可能导致SLF4J找不到...
本文将详细介绍如何在Ubuntu的Tomcat环境中配置Log4j来替代`catalina.out`。 首先,我们需要理解Log4j的基本概念。Log4j是Apache的一个开源项目,提供了一种灵活的日志记录方式,包括日志级别(如DEBUG、INFO、WARN...