`
xcy13638760
  • 浏览: 52686 次
社区版块
存档分类
最新评论

eclipse 的log4j的配置

 
阅读更多

a). 新建Java Project>>新建package>>新建java类;

b). import jar包(一个就够),这里我用的是log4j-1.2.14.jar,

c). 新建log4j.properties,置于project根目录下;

log4j.rootLogger=info, ServerDailyRollingFile, stdout
log4j.appender.ServerDailyRollingFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.ServerDailyRollingFile.DatePattern='.'yyyy-MM-dd
log4j.appender.ServerDailyRollingFile.File=C://logs/notify-subscription.log
log4j.appender.ServerDailyRollingFile.layout=org.apache.log4j.PatternLayout
log4j.appender.ServerDailyRollingFile.layout.ConversionPattern=%d - %m%n
log4j.appender.ServerDailyRollingFile.Append=true

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %p [%c] %m%n

d). 在main()中,加载log4j:

PropertyConfigurator.configure("log4j.properties");

e). 写个小程序测试下,好了,我们看下效果:

image

【神马】找不到文件exception?

1). 用绝对路径,真心不推荐啊,太不优雅了;

2). 将log4j文件置于bin/目录下:

a). 代码中,PropertyConfigurator.configure("bin/log4j.properties");

b). 代码中,PropertyConfigurator.configure(ClassLoader.getSystemResource("log4j.properties"));

c). 注意,必须位于bin直接目录下,不可位于bin更深层的目录当中。可是这究竟是为神马捏?

可参考: http://blog.sina.com.cn/s/blog_3f4755c70100jco1.html

3) 必杀技:

private static void initLog4j() {
Properties prop = new Properties();

prop.setProperty("log4j.rootLogger", "DEBUG, CONSOLE");
prop.setProperty("log4j.appender.CONSOLE", "org.apache.log4j.ConsoleAppender");
prop.setProperty("log4j.appender.CONSOLE.layout", "org.apache.log4j.PatternLayout");
prop.setProperty("log4j.appender.CONSOLE.layout.ConversionPattern", "%d{HH:mm:ss,SSS} [%t] %-5p %C{1} : %m%n");

PropertyConfigurator.configure(prop);
}

【2】log4j 格式详解

红唇 log4j.rootLogger=日志级别,appender1, appender2, ….

  • 日志级别:ALL<DEBUG<INFO<WARN<ERROR<FATAL<OFF,不区分大小写
  • 注意,需在控制台输入,只需将其中一个appender定义为stdout即可
  • 注意,rootLogger默认是对整个工程生效
  • 注意,如果只想对某些包操作,那么:log4j.logger.com.hutu=info, stdout,表示该日志对package com.hutu生效
  • 注意,这样做可以区分dev/线上,也可以减小性能影响:if(log.isDebugEnabled()){log.debug();}

红唇 log4j.appender.appender1=org.apache.log4j.日志输出到哪儿

  • ConsoleAppender(控制台)
  • FileAppender(文件)
  • DailyRollingFileAppender(每天产生一个日志文件)
  • RollingFileAppender(文件大小到达指定尺寸时产生一个新的文件)
  • WriteAppender(将日志信息以流格式发送到任意指定的地方)
  • JDBCAppender(将日志信息保存到数据库中)

红唇 log4j.appender.appender1.File=文件目录及文件

${user.home}/logs/...

红唇 log4j.appender.appender1.MaxFileSize=最大文件大小

红唇 log4j.appender.appender1.MaxBackupIndex=备份文件个数

  • 其中,appender1是在第一行定义过的;
  • 文件目录及文件,例如,/home/admin/logs/hutudan.log
  • 最大文件大小,例如,100KB
  • 备份文件个数,例如,1

红唇 log4j.appender.ServerDailyRollingFile.DatePattern=日志后缀格式

  • 例如,'.'yyyy-MM-dd

红唇 log4j.appender.appender1.layout=org.apache.log4j.日志布局格式

  • HTMLLayout(以HTML表格形式布局)
  • SimpleLayout(包含日志信息的级别和信息字符串)
  • TTCCLayout(包含日志产生的时间,执行绪,类别等信息)
  • PatternLayout(可以灵活的指定布局格式,常用

红唇 log4j.appender.appender1.layout.ConversionPattern=日志输出格式

  1. 例如,%d - %m%n或%d{yyyy-MM-dd HH:mm:ss} %p [%c] %m%n
  2. %c 输出日志信息所属的类的全名
  3. %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy-M-dd HH:mm:ss },输出类似:2002-10-18- 22:10:28
  4. %f 输出日志信息所属的类的类名
  5. %l 输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几行
  6. %m 输出代码中指定的信息,如log(message)中的message
  7. %n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”
  8. %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推
  9. %r 输出自应用启动到输出该日志信息所耗费的毫秒数
  10. %t 输出产生该日志事件的线程名
  11. 可参考:http://blog.sina.com.cn/s/blog_4e4dd5570100qowy.html

红唇 log4j.appender.ServerDailyRollingFile.Append=true

  • 例如,不解释,追加往后写便是

红唇 总结一下:

  • Logger类:完成日志记录,设置日志信息级别
  • Appender类:决定日志去向,终端、DB、硬盘
  • Layout类:决定日志输出的样式,例如包含当前线程、行号、时间
分享到:
评论

相关推荐

    eclipse log4j 插件

    - **创建Log4j配置文件**: 在项目中创建一个名为`log4j.properties`或`log4j.xml`的配置文件,定义日志级别(DEBUG, INFO, WARN, ERROR, FATAL)、输出目的地(控制台、文件、数据库等)和日志格式。 - **引入...

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

    3. **Log4j配置文件**: 关键在于`log4j.properties`或`log4j.xml`配置文件,此工程中可能包含其中一个。配置文件定义了日志记录的策略,如日志级别、输出目的地、格式化样式等。例如,以下配置创建了一个每日滚动...

    Eclipse 环境下 log4j配置说明及所需jar包.rar

    本文主要围绕"Eclipse环境下log4j配置说明及所需jar包"这一主题,详细阐述log4j的使用、配置以及所需依赖。 首先,log4j是Apache的一个开源项目,提供了一个灵活的日志框架,广泛应用于Java应用程序中。它的核心...

    log4j的eclipse工程,最简单最直接的方式配置log4j

    标题"log4j的eclipse工程,最简单最直接的方式配置log4j"指出了本项目的核心内容,即在一个Eclipse工程环境中,如何以简便快捷的方法设置和使用log4j,一个广泛使用的日志记录框架。log4j是Apache的一个开源项目,它...

    log4j的eclipse工程,输出到文件的方式配置log4j

    **log4j配置文件详解** 在Log4j中,配置主要通过一个名为`log4j.properties`或`log4j.xml`的配置文件完成。这里我们假设工程中包含`log4j.properties`文件,其主要内容可能如下: ```properties # 设置root logger...

    Eclipse集成Log4j

    在Eclipse项目中创建一个名为`log4j.properties`的文件,这是Log4j的配置文件。例如: ```properties # 设置全局日志级别为DEBUG log4j.rootLogger=DEBUG, Console, File # 配置控制台输出 log4j.appender.Console...

    log4j配置

    在工具有关的部分,有许多IDE和插件支持Log4j的配置和日志查看,例如Eclipse和IntelliJ IDEA。它们可以方便地集成Log4j,实时查看日志,提高开发效率。 综上所述,Log4j是一个强大且灵活的日志框架,通过合理的配置...

    Log4J配置实例(xml格式)

    `.classpath`和`.project`是Eclipse项目配置文件,它们与Log4J配置关系不大,但确保Log4J库在项目的类路径中是必要的。`.settings`目录可能包含Eclipse特定的项目设置,这些设置可能包含了关于构建路径和库引用的...

    在Eclipse中应用Log4J记录日志

    例如,一个简单的Log4J配置可能如下所示: ```properties # 设置日志输出目的地为控制台 log4j.rootLogger=DEBUG, stdout # 定义输出到控制台的Appender log4j.appender.stdout=org.apache.log4j.ConsoleAppender ...

    log4j.properties(完整版) log4j.properties(精简版)

    本文将围绕Log4j的核心配置文件`log4j.properties`进行详细讲解,分为完整版和精简版两个部分。 **1. Log4j基础概念** Log4j由三个主要组件构成:Logger(日志器)、Appender(输出器)和Layout(布局)。Logger...

    log4j使用jar包和log4j.properties配置文件

    本文将详细探讨Log4j的使用,主要关注1.2.17版本的jar包以及配置文件`log4j.properties`。 ### 1. Log4j简介 Log4j是一个开源的日志组件,支持多种输出格式,如控制台、文件、数据库等。它的核心概念包括Logger、...

    debug-log4j-eclipse

    一个基本的Log4j配置文件(log4j.properties或log4j.xml)会包含这些元素的配置。例如: ```properties # log4j.properties示例 log4j.rootLogger=DEBUG, stdout log4j.appender.stdout=org.apache.log4j....

    新版本与旧版本log4j.jar包下载,附使用说明----.zip

    描述中提到“看了网上那么多log4j配置文件下载,终于让我找到了这个”,暗示了log4j配置在开发过程中可能比较难找或者复杂,而这个资源提供了一个方便的解决方案。同时,资源的提供者还分享了一份“使用说明.txt”,...

    log4j 配置文档(记录日志)

    【log4j配置文档(记录日志)】 Log4j是Apache开源组织提供的一款强大的Java日志记录框架,它的灵活性和可配置性使得它成为Java开发中的首选日志工具。Log4j允许开发者精确控制日志信息的输出,无论是输出到控制台、...

    mybatis配置文件以及日志文件Log4j

    配置Log4j主要通过`log4j.properties`或`log4j.xml`文件完成,其中定义了日志级别、appender(日志输出目标)和layout(日志格式)。例如,你可以为不同的类或包设置不同的日志级别,以获取所需级别的详细信息。 在...

    log4j入门详解

    properties配置文件是Log4j配置中最常用的一种方式。它可以非常直观地配置Logger、Appender和Layout。例如: ```properties # 设置root logger的级别和输出目的地 log4j.rootLogger=DEBUG, FILE # 文件输出...

    log4e eclipse

    4. **配置Log4e插件**:首先,需要从官方网站或第三方资源下载Log4e的Eclipse插件安装包。然后,在Eclipse中通过“Help” &gt; “Install New Software”菜单,选择“Add”来导入插件的更新站点。最后,按照向导指引...

    LOG4j.PPT,LOG4j

    集成LOG4j到Java项目中,首先需要在项目的类路径(classpath)下添加LOG4j的库文件,通常是在Eclipse中将jar包放入`WEB-INF/lib`或`src`目录。接着,需要创建一个名为`log4j.properties`的配置文件,该文件定义了...

    log4j入门到详解

    Log4j提供了丰富的功能来控制日志的生成、格式化和输出目标,能够方便地通过配置文件实现,无需修改应用程序代码。以下是对Log4j的详细介绍: 1. Log4j简介: Log4j的设计目的主要有三个: - 监视代码中的变量变化...

    Log4E 注册码 Log4J在Eclipse上插件

    它基于Apache Log4j框架设计,旨在简化Java应用程序的日志记录过程,并提供了一个用户友好的图形界面来配置日志设置。这使得开发者可以更轻松地管理和调整其应用程序的日志级别、输出格式以及目标输出位置等。 ####...

Global site tag (gtag.js) - Google Analytics