log4j2配置详解

1.    log4j2需要两个jar   log4j-api-2.x.x.jar    log4j-core-2.x.x.jar  .log4j和log4j2有很大的区别,jar包不要应错.

2.  配置文件位置.

  log4j2的配置文件默认是在根目录下面的log4j2.xml.若不配置log4j2的配置文件.那么就会用默认的配置文件.

3. 配置文件解释

  

 1     <?xml version="1.0" encoding="UTF-8"?>
 2     <!--
 3         Configuration后面的status,这个用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,你会看到log4j2内部各种详细输出。
 4     -->
 5     <!--
 6         monitorInterval:Log4j能够自动检测修改配置 文件和重新配置本身,设置间隔秒数。
 7     -->
 8     <configuration status="error" monitorInterval=”30″>
 9         <!--先定义所有的appender-->
10         <appenders>
11             <!--这个输出控制台的配置-->
12             <Console name="Console" target="SYSTEM_OUT">
13                 <!--控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch)-->
14                 <ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY"/>
15                 <!--这个都知道是输出日志的格式-->
16                 <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/>
17             </Console>
18             <!--文件会打印出所有信息,这个log每次运行程序会自动清空,由append属性决定,这个也挺有用的,适合临时测试用-->
19             <File name="log" fileName="log/test.log" append="false">
20                 <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/>
21             </File>
22             <!-- 这个会打印出所有的信息,每次大小超过size,则这size大小的日志会自动存入按年份-月份建立的文件夹下面并进行压缩,作为存档-->
23             <RollingFile name="RollingFile" fileName="logs/app.log"
24                      filePattern="log/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
25                 <PatternLayout pattern="%d{yyyy-MM-dd ‘at‘ HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n"/>
26                 <SizeBasedTriggeringPolicy size="50MB"/>
27                 <!-- DefaultRolloverStrategy属性如不设置,则默认为最多同一文件夹下7个文件,这里设置了20 -->
28                 <DefaultRolloverStrategy max="20"/>
29             </RollingFile>
30         </appenders>
31         <!--然后定义logger,只有定义了logger并引入的appender,appender才会生效-->
32         <loggers>
33             <!--建立一个默认的root的logger-->
34             <root level="trace">
35                 <appender-ref ref="RollingFile"/>
36                 <appender-ref ref="Console"/>
37             </root>
38         </loggers>
39     </configuration>

  1.configuration.log4j2的根节点.

     status是log4j2本身的日志级别.级别定义TRACE < DEBUG < INFO < WARN < ERROR < FATAL

    monitorInteval是系统多久检测一下这个配置文件的改动.单位为s.

  2.appenders. log4j2日志的输出

    Console 输入到控制台

    File输出到特定的文件

    RollingFile输出到特定的文件.但是可以控制每隔一段时间或者文件大小到达一定是切换另一个文件

  3.loggers  定义日志的输入级别,以及这个级别适配到那个appernder.

    每隔loggers里面可以定义多个logger以对应不同的appender

时间: 2024-10-06 00:31:03

log4j2配置详解的相关文章

java log4j基本配置及日志级别配置详解

java log4j日志级别配置详解 1.1 前言 说出来真是丢脸,最近被公司派到客户公司面试外包开发岗位,本来准备了什么redis.rabbitMQ.SSM框架的相关面试题以及自己做过的一些项目回顾,信心满满地去面试,结果别人一上来就问到了最近项目使用的日志系统是什么?日志级别是怎么配置的?当时我都蒙X了,平时都是项目经理搭的,我自己也是随便上网一搜往配置文件一黏贴就OK了.我就这么说完后面试官深深定了我一眼,当时我的内心羞愧到...... 1.2 闲话少说,讲讲日志的发展故事(如果已经了解的

Mycat 核心配置详解

先上官方文档: Mycat-doc Mycat 权威指南 常用配置文件间的关系 由上图可以看到 Mycat 的核心配置文件均采用xml格式,这几个配置文件的用途如下: server.xml:用于配置系统参数.用户信息.访问权限及SQL防火墙和SQL拦截功能等 schema.xml:用于配置逻辑库.逻辑表相关信息 rule.xml:如果使用了水平切分,就需要使用该文件配置切分规则 log4j2.xml:Mycat日志相关的配置,例如日志输出格式.日志级别等 应用连接Mycat服务时,Mycat首先

使用LVS实现负载均衡原理及安装配置详解

转:http://www.cnblogs.com/liwei0526vip/p/6370103.html 使用LVS实现负载均衡原理及安装配置详解 负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均衡设备F5.Netscale.这里主要是学习 LVS 并对其进行了详细的总结记录. 一.负载均衡LVS基本介绍 LB集群的架构和原理很简单,就是当用户的请求过来时,会直接分发到Director

LVS配置详解

一.LVS系统组成 前端:负载均衡层 –      由一台或多台负载调度器构成 中间:服务器群组层 –      由一组实际运行应用服务的服务器组成 底端:数据共享存储层 –      提供共享存储空间的存储区域 二.LVS术语 Director Server:调度服务器,将负载分发到RealServer的服务器 Real Server:真实服务器,真正提供应用服务的服务器 VIP:虚拟IP地址,公布给用户访问的IP地址 RIP:真实IP地址,集群节点上使用的IP地址 DIP:Director连

logback logback.xml 常用配置详解

一:根节点 包含的属性: scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true. scanPeriod: 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒.当scan为true时,此属性生效.默认的时间间隔为1分钟. debug: 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态.默认值为false. 例如: <configuration scan="true" scan

php-fpm的配置详解

php5.3自带php-fpm /usr/local/php/etc/php-fpm.confpid = run/php-fpm.pidpid设置,默认在安装目录中的/var/run/php-fpm.pid,建议开启 error_log = log/php-fpm.log错误日志,默认在安装目录中的/var/log/php-fpm.log log_level = notice错误级别. 可用级别为: alert(必须立即处理), error(错误情况), warning(警告情况), notic

varnish安装及配置详解

varnish系统架构: varnish主要运行两个进程:Management进程和Child进程(也叫Cache进程). Management进程主要实现应用新的配置.编译VCL.监控varnish.初始化varnish以及提供一个命令行接口等.Management进程会每隔几秒钟探测一下Child进程以判断其是否正常运行,如果在指定的时长内未得到Child进程的回应,Management将会重启此Child进程. Child进程包含多种类型的线程,常见的如:Acceptor线程:接收新的连接

Windows下Nginx Virtual Host多站点配置详解

Windows下Nginx Virtual Host多站点配置详解 此教程适用于Windows系统已经配置好Nginx+Php+Mysql环境的同学. 如果您还未搭建WNMP环境,请查看 windows7配置Nginx+php+mysql教程. 先说明一下配置多站点的目的:在生产环境中,如果将系统所有代码文件都放在公开目录中,则很容易被查看到系统源码,这样是很不安全的,所以需要只公开index.php的入口文件目录.而同一个服务器中,可能运行多个系统,这样就必须公开多个入口文件目录,以便用不同的

linux FTP配置详解

一.vsftpd说明: LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterprise Linux中默认安装的是vsftpd. 访问FTP服务器时需要经过验证,只有经过了FTP服务器的相关验证,用户才能访问和传输文件.vsftpd提供了3种ftp登录形式:  (1)anonymous(匿名帐号) 使用anonymous是应用广泛的一种FTP服务器.如果用户在FTP服务器上没有帐号,那么用户可以以anonymous为用户名,以自己