`
skwqy
  • 浏览: 50653 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

在WEB容器中配置自己log4j日志

阅读更多

对WEB应用程序来说,可以用一个特殊的servlet来初始化Log4j的配置

1.log4j初始化的servlet(Log4jInit.java)

 package com.sk.zhouf;

 import org.apache.log4j.PropertyConfigurator;
 import javax.servlet.http.HttpServlet;

 public class Log4jInit extends HttpServlet {
       public void init() {
               String prefix = getServletContext().getRealPath("/");
               String file = getInitParameter("log4j-init-file");
               if(file != null){
                          PropertyConfigurator.configure(prefix+file);
               }
       }
}

2.配置log4j的配置文件,我们用一个简单的配置文件(log4j.properties)

  log4j.rootLogger=ERROR, console
  log4j.logger.sk=DEBUG,console
  log4j.appender.console=org.apache.log4j.ConsoleAppender
  log4j.appender.console.layout=org.apache.log4j.SimpleLayout

3.配置web.xml

  <servlet>
           <servlet-name>Log4jInit</servlet-name>
           <servlet-class>com.sk.zhouf.Log4jInit</servlet-class>
           <init-param>
                    <param-name>log4j-init-file</param-name>
                    <param-value>WEB-INF/log4j.properties</param-value>
           </init-param>
           <load-on-startup>1</load-on-startup>
  </servlet>

说明一下:<load-on-startup>1</load-on-startup>必须的加上,当Tomcat服务器启动部署这个应用程序时,Log4jInit Servlet即被加载,从而完成对Log4j环境的配置

4.一个简单的servlet例子

package com.sk.zhouf;

import java.io.IOException;
import java.io.PrintWriter;
import org.apache.log4j.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class SimpleHello extends HttpServlet {
         static Logger logger = Logger.getLogger("sk");
         public void doGet(HttpServletRequest request, HttpServletResponse response)
                     throws ServletException, IOException {
                PrintWriter out = response.getWriter();
                logger.debug("hello benben");
                out.print("Hello  World!");
                out.close();
                logger.info("close");
       }
}

输出结果截图:

 

分享到:
评论

相关推荐

    log4j与web.xml的配置

    - 在log4j配置文件中,我们已经定义了日志输出到文件,如`/var/log/app.log`。`DailyRollingFileAppender`会根据日期每天创建新的日志文件,避免单个文件过大。 6. **使用Log4j** - 在Java代码中,通过`Logger....

    log4j中配置日志文件相对路径方法(PDF)

    ### Log4j中配置日志文件相对路径方法详解 #### 概述 在软件开发过程中,日志记录是一项重要的功能,它有助于开发者调试程序、监控应用程序的运行状态以及追踪问题。`Log4j`作为一款优秀的日志管理工具,被广泛应用...

    tomcat下struts2的log4j日志配置.doc

    在J2EE应用中,尤其是在Tomcat这样的Servlet容器中使用Log4j,通常需要在Web应用的`web.xml`配置文件中指定日志初始化参数。这可以通过在`web.xml`中添加一个`context-param`元素来实现,将Log4j的配置文件路径作为...

    log4j 配置日志文件,把日志信息输出到项目的某个文件夹下

    为了使配置生效,我们需要在`web.xml`中添加如下配置,让Spring容器加载log4j配置: ```xml &lt;param-name&gt;log4jConfigLocation &lt;param-value&gt;/WEB-INF/classes/log4j.properties&lt;/param-value&gt; &lt;!-- 指定log4j...

    log4j添加日志到数据库和文件中

    1. **配置文件**:在Log4j中,通常通过配置文件(通常是log4j.properties或log4j.xml)来设置日志的行为。对于文件日志,我们需要配置一个FileAppender,指定日志文件的路径和文件名。例如: ``` log4j.appender....

    SSH框架中配置log4j的方法

    1. **动态调整日志级别**:通过修改`log4j.properties`文件中的配置,可以在不重启Web应用的情况下调整日志级别和策略。这对于生产环境中的调试尤为重要,因为它允许开发者根据实际需求灵活地调整日志记录的详细程度...

    使用log4j写日志文件

    要在Web应用中使用Log4j,需要在Servlet容器启动时加载配置文件。下面是一个简单的Servlet示例,展示了如何在Servlet的`init()`方法中初始化Log4j: ```java public class InitServlet extends HttpServlet { ...

    Log4j的配置与使用

    在J2EE环境中使用Log4j时,可以通过Servlet容器的初始化参数来指定日志配置文件的位置。这种方式非常适合在Web应用中集成Log4j。 ```java import java.io.IOException; import javax.servlet.ServletException; ...

    log4j日志的文档和包

    - **log4j-web**: 如果在Web应用中使用Log4j,此包提供了Servlet容器的支持。 ### 使用示例 在Java代码中,我们可以通过以下方式使用Log4j: ```java import org.apache.log4j.Logger; public class MyClass { ...

    apache-log4j-2.14.0-bin.zip

    3. `log4j-web-2.14.0.jar`(如果适用): 用于在Web应用环境中,如Tomcat中,提供Servlet容器的集成。 4. `configurations`: 可能包含示例或默认的配置文件,如`log4j2.xml`或`log4j2.json`,这些文件定义了日志行为...

    springboot+mybatis+log4j2

    在项目中,我们需要修改Spring Boot的默认配置,指定使用Log4j2,并在项目的配置文件中(如`log4j2.xml`或`log4j2.json`)定义日志级别、输出格式和目标位置。 在项目中,"springBootMybatis"这个压缩包文件可能...

    log4j2用户指南

    Log4j2 支持日志分离,即在一个应用程序中使用多个独立的日志记录配置: - **Separate ClassLoaders**:使用不同的类加载器隔离日志配置。 - **Separate Contexts**:每个配置使用独立的 LoggerContext。 #### 15....

    log4j—all.jar

    "log4j-web.jar"则是专门为Web应用设计的,它支持在Servlet容器中部署并使用Log4j,确保了Web应用的日志管理。 "apache-log4j-2.0.2-bin"压缩包包含了Log4j 2.0.2版本的二进制文件,这通常包括配置文件、库文件、...

    Log4j在web和控制台应用程序的使用

    在web应用中,通常会将Log4j配置文件(log4j.properties或log4j.xml)放在类路径下,以便在web容器启动时自动加载。通过在代码中创建Logger实例,开发者可以方便地记录请求处理、数据库操作等各种日志信息。 然后,...

    tomcat配置log4j

    3. **配置Log4j**:在配置文件中,你可以指定日志输出的appender(输出目的地),如控制台、文件、网络等,以及日志的layout(输出格式)。例如: ```properties log4j.rootLogger=DEBUG, Console, File log4j....

    spring框架和log4j日志用到的jar包

    在Spring框架中,可以通过Spring的Log4j配置来统一管理日志,方便调试和问题排查。 在提供的文件名称列表中,虽然没有具体的jar包名称,但通常Spring框架所需的jar包包括:spring-core、spring-context、spring-...

    logging-log4j2-log4j-2.15.0-rc2.7z

    5. **log4j-jakarta-web**:面向Jakarta EE(前身为Java EE)的Web应用程序,这个模块确保了在Web环境下的日志记录无缝集成。新版本可能加强了与最新Jakarta EE规范的兼容性。 6. **log4j-1.2-api**:为兼容旧版本...

    log4j需要的所有jar包

    4. **log4j-web.jar**: 如果在Web应用环境中使用Log4j,需要此jar包来提供Servlet环境的支持,例如处理Servlet容器中的初始化参数。 5. **slf4j-api.jar**: Simple Logging Facade for Java (SLF4J) 是一个用于各种...

    log4j日志的数据库管理

    在使用Log4j与数据库结合管理日志前,首先需要正确配置DBCP。以下是一系列关键步骤: 1. **准备mysql的JDBC驱动程序**:JDBC(Java Database Connectivity)是Java中用来连接数据库的标准接口,而JDBC驱动程序则是...

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

    3. 替换Tomcat的JULI配置:在`$CATALINA_BASE/conf/logging.properties`文件中,将日志处理器指向Log4j适配器,例如: ``` org.apache.juli.ClassLoaderLogManager.className = org.apache.log4j.Manager org....

Global site tag (gtag.js) - Google Analytics