log4j2使用
来源:互联网 发布:a5淘宝客 编辑:程序博客网 时间:2024/05/21 10:01
项目做了次升级,由log4j升级到了log4j2,记录一下基本的配置。
1. 引入Jar包
<dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.8.2</version></dependency><dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.8.2</version></dependency>
2. 添加配置文件
在资源目录下添加log4j2.xml文件。
<?xml version="1.0" encoding="UTF-8"?> <!-- status log4j2自身的日志级别 monitorInterval 动态加载时间,单位为秒--><configuration status="OFF" monitorInterval="30"> <!-- 定义公共的变量 --> <Properties> <Property name="log.path">/data/logs</Property> </Properties> <appenders> <!-- appender1:控制台输出 --> <Console name="Console" target="SYSTEM_OUT"> <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> </Console> <!-- appender2:输出到文件log.log 每天生成一个文件 或 超过100M 另外生成文件--> <RollingFile name="log" fileName="${log.path}/log.log" filePattern="${log.path}/$${date:yyyy-MM}/log-%d{yyyy-MM-dd}-%i.log"> <!-- DENY,NEUTRAL,ACCEPT其中之一。返回DENY,日志将立即被抛弃不再经过其他过滤器;返回NEUTRAL,有序列表里的下个过滤器过接着处理日志;返回ACCEPT,日志会被立即处理,不再经过剩余过滤器 --> <ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/> <Policies> <TimeBasedTriggeringPolicy/> <SizeBasedTriggeringPolicy size="100 MB"/> </Policies> </RollingFile > <!-- appender3:输出到文件error.log --> <File name="ERROR" fileName="${log.path}/error.log"> <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/> <PatternLayout pattern="%d{yyyy.MM.dd 'at' HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n"/> </File> <!-- appender4:输出到文件result.txt,不拼接(append="false"),每次启动都会覆盖老的文件 --> <File name="result" fileName="${log.path}/result.txt" append="false"> <PatternLayout pattern="%msg%xEx%n"/> </File> </appenders> <loggers> <!--定义名称为“start”的log对象,日志输出级别为trace,并输出到result、Console Appender中--> <logger name="start" level="trace" additivity="false"> <appender-ref ref="result"/> <appender-ref ref="Console"/> </logger> <!--定义全局的log对象,日志输出级别为trace,并输出到log、ERROR、Console Appender中--> <root level="trace"> <appender-ref ref="log" /> <appender-ref ref="ERROR" /> <appender-ref ref="Console"/> </root> </loggers> </configuration>
3. 使用
public static Logger start= LogManager.getLogger("start"); public static Logger log= LogManager.getLogger(XXX.class.getClassName()); start.info("test start"); log.info("test log");
“test start”会在控制台和result.txt中打印;
“test log”会在控制台和log.log中打印。
阅读全文
0 0
- log4j2使用
- log4j2使用
- log4j2使用
- log4j2使用
- [log4j2] 使用教程详解(怎么使用log4j2)
- log4j2 使用详解
- Log4j2使用总结
- log4j2使用笔记
- log4j2 使用详解
- log4j2 使用详解
- log4j2 简单使用方式
- log4j2 使用详解
- log4j2 使用详解
- log4j2配置及使用
- log4j2 使用详解
- log4j2使用总结
- Log4j2使用总结
- Log4j2 使用示例
- 6---LeetCode【tag: Array】【Rotate Array】|C语言|总结
- SpringMVC启动过程详解
- 20. Valid Parentheses
- Linux 挂载移动硬盘,使其内部文件有可执行权限
- Java并发编程好文
- log4j2使用
- 零基础入门深度学习(1)
- 实现一个Android锁屏App的难点总结
- Consst 用法
- 存储空间(Bucket)
- jquery 对 select 中option进行赋值,取值,append,remove操作
- Caffe学习:Forward and Backward
- 基于aspectj的aop操作
- 2017多校联合第五场1011/hdu6095Rikka with Competition(排序)