`
hewei870723
  • 浏览: 62856 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Log4j之WEB应用 配置使用利器

阅读更多

java日志我这里分为两种:web应用和桌面应用。而我这里重点介绍web应用中log4j的使用。

 

一、配置log4j.properties文件,该文件存放于classpath根目录下。

代码如下:

log4j.rootLogger=INFO, stdout, logfile

# CONSOLE appender
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{HH:mm:ss} %-5p %m%n

# Log File appender
log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d [%-15.15t] %-5p %-30.30c{1} - %m%n
log4j.appender.logfile.file=${webapp.root}/WEB-INF/tiens.log
log4j.appender.logfile.append=true

log4j.logger.com.tiens=INFO

 

其中log4j.rootLogger=INFO, stdout, logfile 是要配置日志级别以及日志输出对应名称

 

二、注册log4j的配置属性。

新建一servlet,在servlet中注册日志的配置属性,代码如下:

public void init(ServletConfig config) throws ServletException {
  super.init();
  String prefix = config.getServletContext().getRealPath("/");
  String file = config.getInitParameter("log4j");
  String filePath = prefix + file;
  Properties props = new Properties();

  try {
   FileInputStream istream = new FileInputStream(filePath);
   props.load(istream);
   istream.close();

   String logFile = prefix
     + props.getProperty("log4j.appender.logfile.File");// 设置路径,对应配置文件中的名称
   props.setProperty("log4j.appender.logfile.File", logFile);

   // 装入log4j配置信息
   PropertyConfigurator.configure(props);
  } catch (IOException e) {
   System.out.println("Could not read configuration file [" + filePath
     + "].");
   System.out.println("Ignoring configuration file [" + filePath
     + "].");
   return;
  }

 }

 

三、在web.xml中设置启动

代码如下

 <servlet>
    <description></description>
    <display-name>InitLog4J</display-name>
    <servlet-name>InitLog4J</servlet-name>
    <servlet-class>com.tiens.web.InitLog4J</servlet-class>
    <init-param>
           <param-name>log4j</param-name>
           <param-value>WEB-INF/classes/log4j.properties</param-value>
     </init-param>
    <load-on-startup>3</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>InitLog4J</servlet-name>
    <url-pattern>/InitLog4J</url-pattern>
  </servlet-mapping>

到此,一个基本的常用的web使用log4j的例子已经完成。

 

 

Log4j的一些常用高级配置:

  Log4j提供的appender有以下几种:

    org.apache.log4j.ConsoleAppender(控制台)
    org.apache.log4j.FileAppender(文件)
    org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
    org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生新文件)
    org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

0
0
分享到:
评论

相关推荐

    Spring boot+Mybatis+log4j项目实例

    在本项目实例中,我们将深入探讨如何利用Spring Boot、Mybatis和Log4j这三大核心框架构建一个实际的Web应用程序。Spring Boot简化了Spring应用程序的初始设置和配置,Mybatis作为轻量级的持久层框架提供了灵活的SQL...

    很好的.net 日志工具

    2. 配置log4net:在应用程序配置文件(如web.config或app.config)中添加log4net的配置节,定义Appender和Logger。 3. 初始化log4net:在应用程序启动时,调用log4net.Config.XmlConfigurator.Configure()方法初始...

    最常见的Java框架jieshi

    Java 框架系列 Java 语言仍然是最受欢迎的编程语言之一,许多初学者可能没有系统的了解过 Java 框架。...* 可配置性:Log4j 框架可以根据需要配置日志记录的格式和级别,使得应用程序变得更加灵活。

    SpringCloud——分布式跟踪(Sleuth)

    2. **日志集成**: Sleuth可以与各种日志框架如Log4j2、Logback等集成,将追踪ID嵌入到日志中,便于根据ID检索相关日志。 3. **Zipkin集成**: Sleuth可以无缝对接Zipkin,将追踪数据发送到Zipkin服务器,提供可视化...

    jfinal-1.9-all

    《JFinal 1.9 全面解析:构建高效Web应用的利器》 JFinal 是一个基于Java语言的轻量级Web开发框架,其核心设计理念是"约定优于配置",致力于打造快速、高效的开发体验。在JFinal 1.9 版本中,开发者可以感受到更为...

    SSM整合资源jar包

    SSM整合是Java Web开发中常见的一种架构模式,它由Spring、Spring MVC和MyBatis三个框架组合而成,用于构建高效、灵活的Web应用程序。在这个"SSM整合资源jar包"中,包含了这三个核心框架的必要组件和其他相关依赖,...

    debj_SpringBoot_ELK+Kafka_resources.zip

    SpringBoot应用的日志可以通过Logback或Log4j等日志框架,配合Logstash的输入插件进行收集。 3. Kibana:Elasticsearch的数据可视化工具,用户可以通过Kibana界面查看、分析和交互Elasticsearch中的数据。 二、...

    java常用工具大全java常用工具大全

    10. **Log4j**:日志框架Log4j提供了一种方便的日志记录机制,有助于调试和监控应用程序的运行状态。 11. **Spring Boot**:Spring Boot简化了基于Spring的应用程序开发,提供了开箱即用的配置,内置了Tomcat服务器...

    德鲁伊Druid连接池.zip

    9. **日志支持**: Druid支持多种日志框架,如Log4j、Logback等,可以记录数据库操作的详细信息,便于调试和追踪问题。 10. **多数据源支持**: Druid支持主备数据源切换和读写分离,可以在分布式环境中实现更高效的...

    druid-1.0.9.rar

    - `lib`目录:可能包含Druid依赖的一些第三方库文件,如log4j、slf4j等日志库。 - `README.md`或`README.txt`:可能包含有关如何使用和配置Druid的信息。 使用Druid时,通常需要配置数据源、初始化参数、拦截器等...

    springboot2

    SpringBoot2是基于Java开发的一...总之,SpringBoot2是Java开发者构建现代Web应用的利器,其自动化配置、内嵌服务器和丰富的生态系统,使得开发变得更加高效和便捷。无论是初学者还是经验丰富的开发者,都能从中受益。

    springboot229基于Spring Boot的企业员工薪酬关系系统的设计.zip

    6. **异常处理与日志记录**:利用Spring的异常处理机制和日志库(如Logback或Log4j)来捕获和记录系统运行过程中的问题,便于后期排查和优化。 7. **接口设计**:为了与其他系统(如人力资源系统、考勤系统)交互,...

    canal.admin-1.1.5-SNAPSHOT.tar.gz

    此外,还有其他配置文件如`log4j.properties`用于日志记录,确保在出现问题时能快速定位和解决。 3. **logs**:日志目录,存放Canal Admin运行时的日志文件。通过对这些日志的分析,开发者可以跟踪服务运行状况,...

    Java文件上传并自动解压

    在Java开发中,文件上传和自动解压是常见的功能需求,尤其在Web应用中,用户可能需要上传包含数据或资源的压缩文件。本项目利用MyEclipse 6.5集成开发环境,结合SpringMVC框架,实现了从JSP页面上传ZIP压缩文件到...

    J2EE架构设计-成湘均

    日志管理部分,课程涉及Log4j,这是一个广泛使用的日志记录工具,其快速入门和实际操作演示了如何有效地记录和分析应用日志,提升问题定位的效率。 在UI层,Struts作为MVC模式的实现,使得UI设计与业务逻辑分离,...

    java毕业设计之家政服务管理系统网站源码.zip

    - **日志记录**:如Log4j或SLF4J,用于记录系统运行日志,便于问题排查。 - **单元测试**:JUnit或Mockito等工具进行代码测试,确保功能正确性。 5. **文档与部署** "java环境说明.docx"和"java环境及部署说明....

    springboot:springboot + mybatis

    SpringBoot和MyBatis是Java开发中的两大利器,它们结合使用可以快速构建高效、轻量级的Web应用程序。SpringBoot简化了Spring应用的初始搭建以及开发过程,而MyBatis则是一个优秀的持久层框架,提供了灵活的SQL映射...

    BackendPro

    4. **Spring Boot**:BackendPro可能是基于Spring Boot创建的,这是一个快速启动和配置的工具,它集成了许多默认配置,可以快速搭建Web应用或微服务。 5. **RESTful API设计**:后端与前端或其他服务通信通常通过...

Global site tag (gtag.js) - Google Analytics