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

slf4j 和 log4j合用的(Maven)配置

阅读更多

简述:

 

添加logger的日志输出,下面是配置信息供备忘

 

 

 

步骤:

1. 在Maven的porn.xml 文件中添加dependency如下

 

[html] view plaincopy

<dependency>  

    <groupId>org.slf4j</groupId>  

    <artifactId>slf4j-log4j12</artifactId>  

    <version>1.7.2</version>  

</dependency>  

 

之后就会添加三个包,

 

 

 

2. 之后在项目下添加log4j.properties

 

项目路径如下,

 

 

 

 

log4j.properties

 

[html] view plaincopy

#config root logger  

log4j.rootLogger = INFO,system.out  

log4j.appender.system.out=org.apache.log4j.ConsoleAppender  

log4j.appender.system.out.layout=org.apache.log4j.PatternLayout  

log4j.appender.system.out.layout.ConversionPattern=MINAServer Logger-->%5p{%F:%L}-%m%n  

  

#config this Project.file logger  

log4j.logger.thisProject.file=INFO,thisProject.file.out  

log4j.appender.thisProject.file.out=org.apache.log4j.DailyRollingFileAppender  

log4j.appender.thisProject.file.out.File=logContentFile.log  

log4j.appender.thisProject.file.out.layout=org.apache.log4j.PatternLayout  

 

 

3. 在代码中添加

 

[java] view plaincopy

private static final Logger logger = LoggerFactory.getLogger(MINAServer.class);  

 

接下来就能输出了,

[html] view plaincopy

logger.info("now {}" , "starting server");  

 

输出如下:

 

 

 

下面是log4j.properties的配置信息,在此要感谢前辈提供的资源

 

#输出格式

#%m 输出代码中指定的消息

#%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL

#%r 输出自应用启动到输出该log信息耗费的毫秒数

#%c 输出所属的类目,通常就是所在类的全名

#%t 输出产生该日志事件的线程名

#%n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”

#%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921

#%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)

 

格式化例子:

log4j.appender.thisProject.file.out.layout.ConversionPattern=log4j-->%d{yyyy MMM dd HH:mm:ss,SSS}%5p{%F\:%L}-%m%n

 

 

注意:

 

1.信息格式化的小知识

    这些参数中间可能会参杂一些数字比如:%5p它的意思就是在输出此参数之前加入多少个空格,还有就是里面的“\”的作用是转义字符

 

2.log4j.properties文件放置位置

    (1)在java project项目中,它放置的位置是在项目的根目录下而不是在项目的src目录下。

    (2)在javaweb项目中它放置的位置是在src目录下,因为这个时候tomcat会去默认的加载它的,不需要我们去手动的加载log4j的配置文件,只需要根据配置获取自己需要的logger实例即可,由此我们可以知道如果我们使用的不是tomcat容器的话,是不是需要自己手动加载或者至少要配置一下呢?比如使用Websphere等非apache服务器。

 

3.对于java web项目里面的日志的位置配置

    (1)如果是要指定日志文件的位置为D盘下的log.txt文件。

    log4j.appender.thisProject.file.out.File=d:\\log.txt

    (2)如果指定日志文件的位置为当前的tomcat的工作目录下的某个文件

    log4j.appender.thisProject.file.out.File=${catalina.home}/logs/logs_tomcat.log

 

4.log4j的加载机制

 

    log4j.properties加载机制?其实log4j.properties只是log4j的配置文件。程序启动时,log4j组件去读log4j.properties,和读取普通配置文件没多大区别。获取用户配置的一些log4j的属性值,调用想应该的方法为log4j属性设置。

 

    把log4j.properties当作一个struts.xml或者一个hibernate-cfg.xml就可以了。但不同的是,log4j不像struts和hibernate,它不是一个独立的组件,没法自己完成初始化,一般都是什么组件需要它 就去初始化。比如,hibernate默认的日志组件就是log4j,在hibernate初始化的时候它会去初始化log4j。如果你没配置log4j.properties,hibernate会抛出异常,但还是可以正常初始化。

分享到:
评论

相关推荐

    slf4j-log4j12-1.7.25-API文档-中文版.zip

    Maven坐标:org.slf4j:slf4j-log4j12:1.7.25; 标签:slf4j、log4j12、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和...

    slf4j-log4j12-1.6.1-API文档-中文版.zip

    Maven坐标:org.slf4j:slf4j-log4j12:1.6.1; 标签:slf4j、log4j12、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和...

    log4j + slf4j-api + slf4j-log4j12

    在给定的标题和描述中,我们看到了两个关键的日志框架——`log4j`和`SLF4J(Simple Logging Facade for Java)`,以及它们之间的桥接器`slf4j-log4j12`。这些组件是Java日志处理的常用工具,让我们详细了解一下它们...

    slf4j-log4j12-1.7.21-API文档-中文版.zip

    Maven坐标:org.slf4j:slf4j-log4j12:1.7.21; 标签:slf4j、log4j12、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和...

    slf4j-log4j12-1.7.7.jar下载

    在使用SLF4J和Log4j12时,你需要注意的一点是,由于Log4j1.2相比Log4j2在某些方面可能较旧,例如性能和功能更新,因此在新项目中,你可能会考虑使用更新的SLF4J绑定器,如slf4j-log4j2,以便利用Log4j2的改进特性。...

    slf4j-log4j12 等jar包.rar

    SLF4J(Simple Logging Facade for Java)和Log4j是Java开发中常见的日志处理框架。SLF4J提供了一个抽象层,允许开发者在运行时选择合适的日志实现,比如Log4j、Logback等。这个"slf4j-log4j12.jar"文件就是SLF4J与...

    slf4j-log4j12-1.5.6.jar

    SLF4J (Simple Logging Facade for Java) 是一个用于各种日志框架的简单抽象,例如java.util.logging、Logback 和 Log4j。它的主要目的是为应用程序提供一个可插入的日志接口,允许最终用户在部署时插入所需的日志库...

    slf4j-log4j12-1.7.12.jar、slf4j-api-1.7.12.jar

    在Java项目中,通常需要同时包含这两个JAR文件:slf4j-api-1.7.12.jar(提供接口)和slf4j-log4j12-1.7.12.jar(提供绑定实现)。这样,项目中的代码可以使用SLF4J的API进行日志记录,而实际的日志输出则通过log4j...

    slf4j-log4j12-1.7.2.jar 亲测可用

    这个版本号`1.7.2`表示这是SLF4J的一个稳定版本,发布于2012年,包含了对Log4j 1.2的支持和一些错误修复。 在Java开发中,日志记录是非常关键的一部分,因为它帮助开发者追踪程序运行时的问题,提供调试信息,并...

    slf4j-log4j12-1.5.5.jar、slf4j-log4j12-1.5.6.jar、slf4j-api-1.5.6.jar

    SLF4J(Simple Logging Facade for Java)和Log4j是Java...SLF4J作为日志API,提供了一致的编程接口,而Log4j则提供了丰富的日志处理功能和配置选项。通过适配器slf4j-log4j12,这两者得以无缝集成,为开发者带来便利。

    slf4j-log4j12-1.0.jar

    slf4j-log4j12-1.0.jarslf4j-log4j12-1.0.jarslf4j-log4j12-1.0.jarslf4j-log4j12-1.0.jarslf4j-log4j12-1.0.jarslf4j-log4j12-1.0.jarslf4j-log4j12-1.0.jarslf4j-log4j12-1.0.jarslf4j-log4j12-1.0.jarslf4j-log4...

    slf4j-log4j12-1.6.6.jar

    SLF4J(Simple Logging Facade for Java)与Log4j12的集成包`slf4j-log4j12-1.6.6.jar`是Java开发中常用的日志处理工具,它允许开发者使用SLF4J的API,同时实现在运行时绑定到Log4j 1.2框架。这个版本的jar包包含了`...

    slf4j-log4j12-1.7.5.jar

    slf4j-log4j12-1.7.5.jar。

    slf4j-log4j12-1.7.16-API文档-中文版.zip

    Maven坐标:org.slf4j:slf4j-log4j12:1.7.16; 标签:slf4j、log4j12、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和...

    Log4j2结合Slf4j配置使用

    今天,我们将讨论如何将 Log4j2 结合 Slf4j 配置使用,以便更好地记录和管理日志。 首先,我们需要下载 Log4j2 和 Slf4j 的 jar 文件。Log4j2 的下载地址是 http://logging.apache.org/log4j/2.x/download.html,...

    log4j-1.2.16.jar、slf4j-api-1.6.1.jar、slf4j-log4j12-1.6.1.jar资源包

    总之,`log4j-1.2.16.jar`、`slf4j-api-1.6.1.jar`和`slf4j-log4j12-1.6.1.jar`的组合提供了强大而灵活的日志解决方案,使得Java开发者能够便捷地调试、监控和优化他们的应用程序,同时保持代码的简洁性和可移植性。...

    slf4j-log4j12-1.7.25

    slf4j-log4j12-1.7.25,下载直接jar包,测试可用。

    log4j-over-slf4j-1.7.33-API文档-中文版.zip

    Maven坐标:org.slf4j:log4j-over-slf4j:1.7.33; 标签:over、slf4j、log4j、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的...

    slf4j-log4j12-1.7.16-API文档-中英对照版.zip

    Maven坐标:org.slf4j:slf4j-log4j12:1.7.16; 标签:slf4j、log4j12、jar包、java、API文档、中英对照版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档...

    slf4j-log4j12-1.6.6-API文档-中英对照版.zip

    Maven坐标:org.slf4j:slf4j-log4j12:1.6.6; 标签:slf4j、log4j12、中英对照文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码...

Global site tag (gtag.js) - Google Analytics