日志组件系列:(4)SLF4J和log4j实战


参考:

Simple Logging Facade for Java (SLF4J)

http://www.slf4j.org/

SLF4J user manual

http://www.slf4j.org/manual.html

SLF4J warning or error messages and their meanings

http://www.slf4j.org/codes.html

(1)下载组件,添加jar包

(2)配置

(3)使用API

1、下载组件,添加jar包

组件名称 jar包 下载地址
slf4j-1.7.21.zip slf4j-api-1.7.21.jar http://www.slf4j.org/download.html
slf4j-log4j12-1.7.21.jar
log4j-1.2.17.zip log4j-1.2.17.jar http://logging.apache.org/log4j/1.2/download.html

2、配置

在项目的src目录下添加log4j.properties

log4j.rootLogger=debug, console, file

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d %p %c.%M() -%m%n

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File= ./logs/MyLog.log
log4j.appender.file.MaxFileSize=5KB
log4j.appender.file.MaxBackupIndex=100
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d %p %c.%M() -%m%n

3、使用API

package com.rk.test;

import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class HelloWorld {
	@Test
	public void test()
	{
		Logger logger = LoggerFactory.getLogger(HelloWorld.class);
		logger.info("Hello World");
		logger.info("你好,{},欢迎来到{}", "小明","南极");
	}
}

4、常见的错误

一个常见的错误提示是:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

This warning is printed because no slf4j binding could be found on your class path.

The warning will disappear as soon as you add a binding to your class path. Assuming you add slf4j-log4j12-1.7.21.jar so that your class path contains:

  • slf4j-api-1.7.21.jar
  • slf4j-log4j12-1.7.21.jar

这个警告提示在classpath中没有找到slf4j binding。这里所说的slf4j binding是指slf4j-log4j12-1.7.21.jar


SLF4J supports various logging frameworks. The SLF4J distribution ships with several jar files referred to as "SLF4J bindings", with each binding corresponding to a supported framework.

  • slf4j-log4j12-1.7.21.jar
  • Binding for log4j version 1.2, a widely used logging framework. You also need to place log4j.jar on your class path.
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

查看地址:http://www.slf4j.org/codes.html#StaticLoggerBinder

Failed to load class org.slf4j.impl.StaticLoggerBinder

This warning message is reported when the org.slf4j.impl.StaticLoggerBinder class could not be loaded into memory. This happens when no appropriate SLF4J binding could be found on the class path. Placing one (and only one) of slf4j-nop.jarslf4j-simple.jarslf4j-log4j12.jarslf4j-jdk14.jar or logback-classic.jar on the class path should solve the problem.

时间: 2024-10-08 20:05:37

日志组件系列:(4)SLF4J和log4j实战的相关文章

日志组件系列:(2)commons logging和log4j实战

(1).下载组件,引入jar包 (2).配置 (3).使用API 1.下载组件,引入jar包 jar包 下载地址 log4j-1.2.17.jar http://logging.apache.org/log4j/1.2/ commons-logging-1.2.jar http://commons.apache.org/proper/commons-logging/download_logging.cgi 2.配置 在项目的src目录下添加log4j.properties文件,配置如下: log

【转】java日志组件介绍(common-logging,log4j,slf4j,logback )

common-logging common-logging是apache提供的一个通用的日志接口.用户可以自由选择第三方的日志组件作为具体实现,像log4j,或者jdk自带的logging, common-logging会通过动态查找的机制,在程序运行时自动找出真正使用的日志库.当然,common-logging内部有一个Simple logger的简单实现,但是功能很弱.所以使用common-logging,通常都是配合着log4j来使用.使用它的好处就是,代码依赖是common-loggin

日志组件介绍(common-logging,log4j,slf4j,logback)

common-logging common-logging是apache提供的一个通用的日志接口.用户可以自由选择第三方的日志组件作为具体实现,像log4j,或者jdk自带的logging, common-logging会通过动态查找的机制,在程序运行时自动找出真正使用的日志库.当然,common-logging内部有一个Simple logger的简单实现,但是功能很弱.所以使用common-logging,通常都是配合着log4j来使用.使用它的好处就是,代码依赖是common-loggin

java日志组件介绍(common-logging,log4j,slf4j,logback )

common-logging common-logging是 apache提供的一个通用的日志接口.用户可以自由选择第三方的日志组件作为具体实现,像log4j,或者jdk自带的logging, common-logging会通过动态查找的机制,在程序运行时自动找出真正使用的日志库.当然,common-logging内部有一个Simple logger的简单实现,但是功能很弱.所以使用common-logging,通常都是配合着log4j来使用.使用它的好处就是,代码依赖是 common-logg

java日志组件介绍(common-logging,log4j,slf4j,logback)

common-logging common-logging是apache提供的一个通用的日志接口.用户可以自由选择第三方的日志组件作为具体实现,像log4j,或者jdk自带的logging, common-logging会通过动态查找的机制,在程序运行时自动找出真正使用的日志库.当然,common-logging内部有一个Simple logger的简单实现,但是功能很弱.所以使用common-logging,通常都是配合着log4j来使用.使用它的好处就是,代码依赖是common-loggin

转:java日志组件介绍(common-logging,log4j,slf4j,logback )

原网址:http://www.blogjava.net/daiyongzhi/archive/2014/04/13/412364.html common-logging common-logging是apache提供的一个通用的日志接口.用户可以自由选择第三方的日志组件作为具体实现,像log4j,或者jdk自带的logging, common-logging会通过动态查找的机制,在程序运行时自动找出真正使用的日志库.当然,common-logging内部有一个Simple logger的简单实现

日志组件系列:(5)让Eclipse/MyEclipse的控制台的log4j日志支持多种颜色

最终实现的效果如下: 1.知识准备 我们要谈到一个概念"ANSI escape sequences",它是什么,究竟有什么作用呢?"ANSI escape sequences"就是嵌入到文本中的"特殊字符",用来控制文本的格式和颜色. ANSI escape sequences are characters embedded in the text used to control formatting, color, and other outp

基于slf4j的log4j实战

参考文档如下: http://blog.csdn.net/anialy/article/details/8529188 slf4j是接口,基于门面模式,可以实现log4j和logback 参考文档如下: http://yangzb.iteye.com/blog/245844 http://www.open-open.com/lib/view/open1395238704431.html

java日志系列(logback common-loging slf4j)—— log4j

java日志是开发过程中一个绕不过的坎,优雅的日志是开发一个优秀系统必不可少的.java日志组件有很多种,比如经常用到的log4j. 却一直没有对java日志系列进行一个系统的学习与整理.本文将详细整理java日志系列组件. 1.从零开始 日志记录是应用程序运行中必不可少的一部分.具有良好格式和完备信息的日志记录可以在程序出现问题时帮助开发人员迅速地定位错误的根源. 就像我们在简单代码里加入System.out.println();是一样的.我们需要看到一些输出来让我们看到这个程序正在跑着.当然