slf4j-api、slf4j-log4j12以及log4j之间的关系 :
http://blog.csdn.net/woshixuye/article/details/20858239
使用slf4j + Log4j2构建日志 :
http://blog.csdn.net/heyutao007/article/details/50371668
首先下载相关jar,log4j-1.2.17.jar,slf4j-api-1.7.9.jar,slf4j-log4j12-1.7.9.jar
package org;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class testSFL4J {
private static Logger log = LoggerFactory.getLogger(testSFL4J.class);
public static void main(String[] args) {
log.debug("=======test root=========");
log.info("========test daily level info=========");
log.warn("========test warn=========");
log.error("========test error=========");
}
}
log4j有两种配置方式,一种为XML,一种为java属性文件properties,我的配置方式为
log4j.properties,具体内容如下:
log4j.rootLogger = DEBUG,stdout,D
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.Threshold = DEBUG
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
#log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} %c %l %m%n
log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} %c %m%n
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = F://logs/log.log
log4j.appender.D.Append = true
### when the appender Threshold is null, extend from rootLogger,
### when the appender Threshold is exist, compare the Threshold with the level of rootLogger
### set the higher level
log4j.appender.D.Threshold = ERROR
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = [%-5p] %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - %c%m%n
#log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
#log4j.appender.E.File =F://logs/error.log
#log4j.appender.E.Append = true
#log4j.appender.E.Threshold = ERROR
#log4j.appender.E.layout = org.apache.log4j.PatternLayout
#log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
控制台输出:
[DEBUG] 2016-10-22 11:52:52,084 org.testSFL4J =======test root=========
[INFO ] 2016-10-22 11:52:52,084 org.testSFL4J ========test daily level info=========
[WARN ] 2016-10-22 11:52:52,084 org.testSFL4J ========test warn=========
[ERROR] 2016-10-22 11:52:52,084 org.testSFL4J ========test error=========
文件输出:
[ERROR] 2016-10-22 11:52:52 [ main:0 ] - org.testSFL4J========test error=========
总结:
从上面可以看出,当appender的Threshold为控制,则继承rootLogger,当不为null时,输出等级,以appender和rootLogger等级高的为准。
分享到:
相关推荐
2. Log4j适配器:SLF4J提供了一个适配器模块(如`sfl4j-log4j12.jar`),用于将SLF4J的日志调用转换为Log4j的调用。这样,你可以通过SLF4J接口来使用Log4j的功能。 3. Log4j库:这包括Log4j的核心组件,如`log4j-...
slf4j-远程 适用于slf4j的android远程记录器。 它首先将日志行保存到内存缓冲区,然后保存到文件,然后发送到http服务器。特征轻量级25 kb 通过http发送日志玛文< repositories> < repository> < id>jitpack.io...
SFL库的设计理念在于提供一系列通用且易于使用的函数,帮助开发者快速构建自己的应用程序。 SFL库的核心价值在于其多样性。这个库包含了各种类型的函数,涵盖了数据处理、字符串操作、文件管理、时间日期处理等多个...
SLF4J,即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种...按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志System
标题所提到的“运行Capture.exe找不到cdn_sfl401as.dll”和描述中反映的情况,通常是指用户在使用特定的电子设计自动化(EDA)软件Allegro 16.5进行PCB设计时遇到的一个错误提示。Capture.exe是Allegro软件的一个...
接着,创建一个特定于数据库类型(如`BasicDataSource`)的数据源实例,并将其与配置关联。最后,应用程序可以通过数据源获取和释放连接。 总的来说,Apache Commons Pool2是一个强大且灵活的对象池实现,对于处理...
ABB SFL SF6负荷开关安装使用说明书主要涵盖了ABB公司生产的SFL12K和SFL12A型号的SF6负荷开关的安装和使用方法。SF6负荷开关以其优良的绝缘性能和灭弧能力广泛应用于电气设备中。在理解这份说明书之前,需要对一些...
#### 一、J语言概述与辨析 J语言是一种由J软件公司开发的软件开发环境,它与Java、JavaScript或JScript等其他编程语言完全不同,不应混淆。J语言的设计旨在提供高效的数据处理能力,特别是在数学和统计学领域,拥有...
一个国外公司开发的金融交易系统开源项目,java语言,纯英文环境
标题提及的"SFL水泥烧成系统垃圾焚烧技术"是一种环保技术,主要用于处理城市垃圾,解决当前我国面临的垃圾处理难题。垃圾焚烧技术的核心在于利用高温燃烧将垃圾转化为无害物质,同时利用热能产生电力,实现资源化...
"whzw.rar_sfl" 是一个压缩包文件,其中包含了与时频分析相关的源代码,显然是为了帮助用户理解和实现时频分析技术。时频分析是一种处理信号的重要方法,它允许我们在时间和频率两个域中同时观察信号的变化,尤其...
SFLM Admin.url
解决Cadence Orcad 无法启动,出现Capture.exe找不到cdn_sfl401as.dll问题,XP和win7测试能通过。
在浏览器的地址栏中键入命令,并扩展您的浏览体验:-sfl用[provider]查找[keyword] –用您要搜索的任何单词或短语替换[keyword],并用[provider]替换[provider]您选择的搜索服务提供商,例如Google,Ecosia,Amazon...
ABB SFL SF6负荷开关是瑞典ABB公司生产的一种高压开关设备,主要用于电力系统中作为电流的通断及保护装置。从提供的传单内容来看...这些知识点对于电力工程师在选择和使用ABB SFL SF6负荷开关时提供了必要的技术背景。
赛威科技推出的SFL678是一款具备扩展同步调光技术的AC/DC LED恒流驱动器,专门适用于LED照明领域。该芯片支持模拟、PWM和TRIAC调光,能够实现高达1000:1的调光比,使得照明设备的亮度调节范围非常广泛。调光比是指...
4. **数据读取(Data Retrieval)**:使用RPG的READ或FREAD函数从SFL中读取指定页的记录。可能需要使用OFFSET参数来跳过前几条记录,以便从正确的位置开始读取。 5. **屏幕更新(Display Update)**:利用OVRDBF或...
本项目是基于Vue的sfl化妆品项目设计源码,包含229个文件,其中
4. 实时操作系统(RTOS):如果CD机有实时性要求,可能使用了RTOS,比如FreeRTOS或uCOS,理解其调度机制和任务管理是关键。 5. GUI编程:如果CD机有显示界面,可能使用了图形用户界面库,如Qt、GTK+或自定义的LCD...
30)_油箱循环过滤装置Filtration unit_SFL172554.pdf