- 浏览: 92624 次
- 性别:
- 来自: 无锡
文章分类
最新评论
//lib log4j-core-xx.jar log4j-api-xx.jar
package com.ztao2333.spring; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import org.springframework.context.support.FileSystemXmlApplicationContext; public class HelloTest { @Test public void testHelloWorld() { Logger logger = LogManager.getLogger(HelloTest.class.getName()); logger.trace("trace level"); logger.debug("debug level"); logger.info("info level"); logger.warn("warn level"); logger.error("error level"); logger.fatal("fatal level"); //1、读取配置文件实例化一个IoC容器 //用classpath路径 默认classpath是src文件夹 ApplicationContext context = new ClassPathXmlApplicationContext("helloWorld.xml"); //用文件系统的路径,默认指项目的根路径 //ApplicationContext context = new FileSystemXmlApplicationContext("src/helloWorld.xml"); //2、从容器中获取Bean,注意此处完全“面向接口编程,而不是面向实现” HelloAPI helloApi = context.getBean("hello", HelloAPI.class); //3、执行业务逻辑 helloApi.sayHello(); } }
//在src下新建log4j2.xml (src下路径为classpath路径) <?xml version="1.0" encoding="utf-8"?> <configuration status="OFF"> <appenders> <!-- 利用ThresholdFilter对name为 Console log RollingFile分别设置log level--> <Console name="Console" target="SYSTEM_OUT"> <!--控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch)--> <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="%5p:%d{yyyy-MM-dd HH:mm:ss.SSS}[%M] %m %n"/> </Console> <!--文件会打印出所有信息,这个log每次运行程序会自动清空,由append属性决定,这个也挺有用的,适合临时测试用--> <File name="log" fileName="D:\test.log" append="false"> <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/> </File> <!--这个会打印出所有的信息,每次大小超过size,则这size大小的日志会自动存入按年份-月份建立的文件夹下面并进行压缩,作为存档--> <RollingFile name="RollingFile" fileName="d:\app.log" filePattern="log/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz"> <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="%d{yyyy-MM-dd 'at' HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n"/> <SizeBasedTriggeringPolicy size="1MB"/> </RollingFile> </appenders> <loggers> <!--我们只让这个logger输出info信息,其他的都是error级别 additivity开启的话,由于这个logger也是满足root的,所以会被打印两遍。 additivity为false,这个logger打印一遍。 对于特定类的log level设置 --> <!-- <logger name="com.ztao2333.spring.HelloTest" level="info" additivity="false"> <appender-ref ref="Console"/> </logger> --> <!-- log TRACE < DEBUG < INFO < WARN < ERROR < FATAL --> <root level="debug"> <appender-ref ref="Console"/> <appender-ref ref="log"/> <appender-ref ref="RollingFile"/> </root> </loggers> </configuration>
学习:http://www.cnblogs.com/leo-lsw/p/log4j2tutorial.html
发表评论
-
java 堆栈
2018-07-24 22:59 407java的内存分为两类 : 堆 ... -
初始化ArrayList, 默认长度10
2018-07-10 17:54 1804// 在初始化ArrayList的时候没有指定初始化长度的话 ... -
Java判断Long类型相等问题
2018-03-13 15:05 2298// Long类型判断相等时,比如Long a = 10L ... -
循环往list中add对象却总是add的是一个对象
2017-11-11 16:53 18981. 在new 一个对象的时候,对象的ID是唯一确定的;将对象 ... -
变量定义的初始化顺序
2017-11-04 18:05 439//#java编程思想P94 //在类的内部, 定义变量 ... -
JavaBean解释
2017-09-07 15:05 431Spring如何知道setter方法?如何将值注入进去的呢?其 ... -
java为什么不需要sizeof()
2017-07-21 13:51 335在C和C++中,sizeof()操作符可以告诉你为数据项分配的 ... -
回车换行 \r\n
2017-07-06 16:15 360\r就是"回到行首",\n就是" ... -
基本类型直接存储“值”,置于堆栈中。 new将对象存储在“堆”中。
2017-07-04 19:07 637基本类型置于堆栈中,更加高效。 其他java对象存储在堆中 -
Java中如何遍历Map对象的4种方法
2017-05-26 16:42 417http://blog.csdn.net/tjcyjd/art ... -
初始化List泛型时,list为null还是为空?应该是空(size()=0)
2017-04-13 17:29 656List<Object> list = new A ... -
String的拼接
2017-03-21 11:01 422当使用+拼接字符串时,会生成新的String对象,而不是向原有 ... -
判断两个参数的值是否相同
2017-02-06 17:00 496private boolean isValueSame(Obj ... -
检查数组中是否包含特定值(Check if an array contains a certain value)
2017-01-10 10:19 297String[] stringArray = { " ... -
JSP中java代码引用map类
2016-11-04 12:14 468<% java.util.Map m = new ja ... -
批量命名变量名(无法确定字符串数组长度)
2016-11-04 12:00 437String a = "a b c"; ... -
null和""以及==与equals的区别
2016-08-11 17:59 364String str1 = null; str引用为空 ... -
String、StringBuffer与StringBuilder详解
2016-08-18 14:20 4191.三者在执行速度方面的比较:StringBuilder &g ... -
java生成当前日期格式设置
2016-08-03 14:04 471package com.grace.test; ... -
Eclipse/Myeclipse生成serialVersionUID方法
2016-08-03 13:54 550serialVersionUID作用: 序列化时为了保持 ...
相关推荐
log4j2配置,文件分割,自动清除等相关配置。
log4j2配置文件,按照文件大小划分日志,保存日期天数内的日志,指纹日志命名规则,日志输出等级等功能
Log4j2学习笔记,引入log4j2的依赖-log4j2.xml配置模板-application.properties文件配置-使用
log4j中配置日志文件相对路径方法分析 方法一、 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs/app.log 其中“${...
SpringBoot框架配置log4j和log4j2的配置代码,项目中用到的配置文件,可下载使用
log4j配置文件以及配置文件说明 包里有一个log4j配置文件 和一个配置详解
NULL 博文链接:https://53873039oycg.iteye.com/blog/2070098
log4j2配置多个日志级别,拿到即可用, 。
本文档提供log4j配置相对路径三种方法:log4j.properties文件配置、xml文件配置和通过servlet初始化方式来配置,希望对大家有所帮助
log4j 详细配置 log4j 详细配置 log4j 详细配置 log4j 详细配置
自用的log配置文件,比较详细,喜欢的可以拿去,借用了一些人的配置
主要讲述log4j的简介,以及log4j的配置和在实际应用的使用。如果您不知道如何配置log4j,那么这本书将对您有很大的帮助。
tomcat下的log4j日志配置,给tomcat配置log4j有好几种方法,我知道的有: 一、tomcat级别的统一日志管理 二、每个webapp分别配置log4j
log4j配置文档log4j配置文档log4j配置文档log4j配置文档log4j配置文档log4j配置文档log4j配置文档log4j配置文档log4j配置文档log4j配置文档log4j配置文档log4j配置文档
log4j2.xml 应用级的配置文件 支持窗体输出、error、info、trace error和trace按照日生成和清理文件 info按照小时生成和清理文件
Log4j日志配置说明,Log4j日志配置说明Log4j日志配置说明,Log4j日志配置说明
log4j 2.x版本不再支持像1.x中的.properties后缀的文件配置方式,2.x版本配置文件后缀名只能为".xml",".json"或者".jsn". 系统选择配置文件的优先级(从先到后)如下: (1).classpath下的名为log4j2-test.json...
log4j2的配置文件完整版
使用log4j2实现日志数据脱敏
log4j配置和加载方法log4j配置和加载方法