java必备技能-slf4j-log4j12 + log4j


<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <properties>
        <property name="LOG_HOME">F:/logs</property>
        <property name="FILE_NAME">mylog</property>
        <property name="log.level">debug</property>
    </properties>

    <!-- 输出源:用于定义日志输出的地方 -->
    <!-- log4j2支持的输出源有很多,有控制台Console、文件File、RollingRandomAccessFile、MongoDB、Flume 等 -->
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %l - %msg%n" />
        </Console>

        <!-- 该输出源也是写入到文件,不同的是比File更加强大,
        可以指定当文件达到一定大小(如20MB)时,另起一个文件继续写入日志,
        另起一个文件就涉及到新文件的名字命名规则,因此需要配置文件命名规则,
        这种方式更加实用,因为你不可能一直往一个文件中写,如果一直写,文件过大,打开就会卡死,也不便于查找日志 -->
        <!--
        fileName 指定 当前日志文件 的位置和文件名称
        filePattern 指定当发生Rolling时,文件的 转移和重命名 规则
        每分钟生成一次文件,超过 10M,做切割
        -->
        <RollingRandomAccessFile name="RollingRandomAccessFile"
                                 fileName="${LOG_HOME}/${FILE_NAME}.log"
                                 filePattern="${LOG_HOME}/$${date:yyyy-MM}/${FILE_NAME}-%d{yyyy-MM-dd HH-mm}-%i.log">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %l - %msg%n"/>
            <Policies>
                <TimeBasedTriggeringPolicy interval="1"/>

                <!-- 当文件体积大于size指定的值时,触发Rolling -->
                <SizeBasedTriggeringPolicy size="10 MB"/>
            </Policies>

            <!-- 最多保存的文件个数 -->
            <DefaultRolloverStrategy max="20"/>
        </RollingRandomAccessFile>
    </Appenders>

    <!-- 日志器:需要配置一个或多个输出源 -->
    <!-- 日志器分根日志器Root和自定义日志器 -->
    <!-- 当根据日志名字获取不到指定的日志器时就使用Root作为默认的日志器,
    自定义时需要指定每个Logger的名称name(对于命名可以以包名作为日志的名字,不同的包配置不同的级别等),
    日志级别level,相加性additivity(是否同时输出log到父类的appender) -->
    <Loggers>
        <!-- root 日志器 -->
        <Root level="${log.level}">
            <AppenderRef ref="Console" />
            <AppenderRef ref="RollingRandomAccessFile" />
        </Root>

        <!-- 自定义日志器 -->
        <Logger name="com.office.flink.demo" level="${log.level}" additivity="false">
            <AppenderRef ref="Console" />
        </Logger>
    </Loggers>
</Configuration>

debug级别日志
输出到console、F:\logs\mylog.log 及 F:\logs\2021-03\mylog-2021-03-28 10-17-1.log

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值