0 0

logback如何配置一个日志级别一个文件0

日志级别有debug,info,error等,
我想配置成,一个日志级别记录到一个文件中去
比如说
info 的日志,就记录到 log_info.txt文件中去
error的日志,就记录到log_error文件中去

请问,如何配置
2014年12月24日 15:35

2个答案 按时间排序 按投票排序

0 0

例子:
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <!-- encoders are assigned by default the type ch.qos.logback.classic.encoder.PatternLayoutEncoder -->
        <encoder>
            <pattern>
                %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
            </pattern>
        </encoder>
    </appender>
    <appender name="info"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${config.dir}/logs/info.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover -->
            <fileNamePattern>${imam.config.dir}/logs/info.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- keep 30 days worth of history -->
            <maxHistory>30</maxHistory>
            <maxFileSize>20MB</maxFileSize>
        </rollingPolicy>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>INFO</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder
        by default -->
        <encoder>
            <pattern>
                %d{HH:mm:ss.SSS} %-5level %logger{35} - %msg%n
            </pattern>
        </encoder>
    </appender>
    <appender name="debug"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${config.dir}/logs/debug.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover -->
            <fileNamePattern>${imam.config.dir}/logs/debug.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- keep 30 days worth of history -->
            <maxHistory>30</maxHistory>
            <maxFileSize>20MB</maxFileSize>
        </rollingPolicy>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>DEBUG</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder
        by default -->
        <encoder>
            <pattern>
                %d{HH:mm:ss.SSS} %-5level %logger{35} - %msg%n
            </pattern>
        </encoder>
    </appender>
    <appender name="warn"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${config.dir}/logs/warn.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover -->
            <fileNamePattern>${imam.config.dir}/logs/warn.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- keep 30 days worth of history -->
            <maxHistory>30</maxHistory>
            <maxFileSize>20MB</maxFileSize>
        </rollingPolicy>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>WARN</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder
        by default -->
        <encoder>
            <pattern>
                %d{HH:mm:ss.SSS} %-5level %logger{35} - %msg%n
            </pattern>
        </encoder>
    </appender>
    <appender name="error"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${config.dir}/logs/error.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover -->
            <fileNamePattern>${imam.config.dir}/logs/error.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- keep 30 days worth of history -->
            <maxHistory>30</maxHistory>
            <maxFileSize>20MB</maxFileSize>
        </rollingPolicy>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>ERROR</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder
        by default -->
        <encoder>
            <pattern>
                %d{HH:mm:ss.SSS} %-5level %logger{35} - %msg%n
            </pattern>
        </encoder>
    </appender>

    <appender name="mybatis"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${config.dir}/logs/mybatis.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover -->
            <fileNamePattern>${imam.config.dir}/logs/mybatis.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- keep 30 days worth of history -->
            <maxHistory>30</maxHistory>
            <maxFileSize>20MB</maxFileSize>
        </rollingPolicy>
        <encoder>
            <pattern>
                %d{HH:mm:ss.SSS} - %msg%n
            </pattern>
        </encoder>
    </appender>
    <appender name="memcached"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${config.dir}/logs/mybatis.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover -->
            <fileNamePattern>${imam.config.dir}/logs/memcached.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- keep 30 days worth of history -->
            <maxHistory>30</maxHistory>
            <maxFileSize>20MB</maxFileSize>
        </rollingPolicy>
        <encoder>
            <pattern>
                %d{HH:mm:ss.SSS} - %msg%n
            </pattern>
        </encoder>
    </appender>

    <logger name="org.mybatis" additivity="false">
        <level value="debug"/>
        <appender-ref ref="mybatis"/>
    </logger>
    <logger name="org.apache.ibatis">
        <level value="debug" />
        <appender-ref ref="mybatis"/>
    </logger>
    <logger name="java.sql" additivity="false">
        <level value="debug"/>
        <appender-ref ref="mybatis"/>
    </logger>
    <logger name="org.springframework" level="DEBUG" additivity="false">
        <appender-ref ref="debug"></appender-ref>
        <appender-ref ref="info"></appender-ref>
        <appender-ref ref="warn"></appender-ref>
        <appender-ref ref="warn"></appender-ref>
        <appender-ref ref="error"></appender-ref>
    </logger>

    <logger name="org.eclipse" level="DEBUG" additivity="false">
        <appender-ref ref="debug"></appender-ref>
        <appender-ref ref="info"></appender-ref>
        <appender-ref ref="warn"></appender-ref>
        <appender-ref ref="error"></appender-ref>
    </logger>
    <logger name="org.apache.mina" additivity="false">
        <level value="error"/>
        <appender-ref ref="error"/>
    </logger>
    <root level="warn">
        <appender-ref ref="STDOUT" />
    </root>

</configuration>

2014年12月26日 10:29
0 0

<appender name="debugFile"  class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>${qunar.logs}/order-web.log.%d{yyyy-MM-dd}.log</FileNamePattern>
            <MaxHistory>30</MaxHistory>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>[%d{yyyy-MM-dd HH:mm:ss} %5p %c:%L] %m%n</pattern>
        </encoder>
</appender>
<root level="debug">
        <appender-ref ref="console" />
        <appender-ref ref="debugFile" />
    </root>
    <root level="info">
        <appender-ref ref="console" />
        <appender-ref ref="debugFile" />
    </root>

2014年12月24日 17:55

相关推荐

    Logback配置文件根据 LEVEL级别将日志分类保存到不同文件.docx

    以下是一个配置示例: ```xml &lt;appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"&gt; ... &lt;appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"&gt; ${LOG_...

    Logback动态修改日志级别的方法

    总结来说,Logback 动态修改日志级别提供了两种实用的方法:通过代码接口直接控制和通过配置文件自动扫描。前者适合临时调整,后者适用于自动化运维环境。根据实际情况选择合适的方式,可以显著提升问题排查的效率。...

    SpringBoot Logback配置,SpringBoot日志配置

    一个基础的`logback-spring.xml`配置文件通常包括以下几个部分: 1. ****:配置文件的根元素。 2. ****:用于读取Spring应用的属性配置,使日志配置更灵活。 3. ****:定义日志输出的目标,如控制台、文件、数据库...

    Logback类库含logback.xml配置文件

    5. ****:定义日志消息的格式,例如 `%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n` 是一个常见的PatternLayout,它包括时间戳、线程名、日志级别、logger 名称和日志消息。 6. ****:可以添加过滤器...

    springboot+logback输出日志文件1

    我们可以在 application.properties 或 application.yml 文件中配置日志级别。例如: logging.level.root= WARN logging.level.org.springframework.security= DEBUG logging.level.org.springframework.web= ERROR...

    logback下载 日志文件jar包

    这个压缩包包含了实现 Logback 功能所需的几个关键组件,以及一个配置文件,使得用户能够方便地管理和记录应用程序的日志信息。 1. **logback-core-1.2.3.jar**: 这是 Logback 的核心库,包含了日志记录的基本...

    Grails3配置logback日志.pdf

    除了上述的设置,logback配置文件还可以定义其他的内容,比如root级别控制整个应用程序的日志级别,以及logger标签用于配置具体的日志输出级别。在本文中,root级别被设置为ERROR,意味着只有ERROR级别的日志才会被...

    logback日志配置

    ### Logback日志配置详解 #### 一、Logback简介 Logback 是一款非常流行的 Java 日志框架,它由 Ceki Gülcü 开发并维护,作为 log4j 的一个优秀替代品出现。Logback 相对于 log4j 有着更好的性能表现,并且拥有...

    logback日志配置demo

    总结来说,`logback` 是一个强大的日志框架,通过配置 `logback.xml` 文件,我们可以控制日志记录的方方面面,包括日志级别、输出目的地、格式和过滤规则。在实际项目中,合理地配置 logback 能够帮助我们更好地管理...

    logback配置详解

    logback 的默认配置如果配置文件 logback-test.xml 和 logback.xml 都不存在,那么 logback 默认地会调用 BasicConfigurator,创建一个最小化配置。最小化配置由一个关联到根 logger 的 ConsoleAppender 组成。输出...

    logback日志分目录分级别案例

    **Logback日志框架概述** Logback 是一个用于日志记录的开源框架,由 Ceki Gülcü(SLF4J 的创始人)开发。它是 log4j 的后继者,旨在提供更高的性能、更灵活的配置以及更好的可扩展性。Logback 主要由三部分组成...

    springboot 日志配置文件 logback

    logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API使你可以很方便地更换成其它日志系统如log4j或JDK14 Logging。 logback-access:访问模块与Servlet容器集成提供通过Http来访问日志的功能。 ...

    日志文件配置,logback

    Logback 配置文件的灵活性使得它能够满足各种日志需求,包括控制日志级别、定制日志格式、设置日志输出位置以及管理日志文件大小。SLF4J 的使用则简化了与日志框架的交互,提供了良好的可移植性。正确配置和使用 ...

    将Logback日志输出到websocket

    标题中的“将Logback日志输出到websocket”指的是利用Logback这一强大的日志框架,结合WebSocket技术,实现实时的日志传输。Logback是Java世界中广泛使用的日志记录工具,它提供了高效的日志记录功能,而WebSocket则...

    logback日志级别动态切换的终极方案(Java ASM使用).doc

    【logback日志级别动态切换】是Java应用中常见的需求,尤其在大型分布式系统中,为了应对不同的运行环境和性能优化,需要灵活调整日志输出级别。本文将介绍一种使用Java ASM库实现的终极解决方案。 首先,理解...

    logbackーslf4j-配置文件实例 难得

    Logback的配置主要通过`logback.xml`文件完成,这是一个XML格式的配置文件,用于定义日志级别、日志输出目的地、过滤器等。以下是一份基本的`logback.xml`配置示例: ```xml ...

    logback jar包和logback.xml配置文件打包下载 小白新手学Java

    一个基本的`logback.xml`配置可能包括以下元素: ```xml &lt;appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"&gt; &lt;pattern&gt;%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n ...

    扩展logback将日志输出到Kafka实例源码

    5. **日志级别与过滤**:在`logback.xml`配置文件中,可以设置不同级别的日志(如DEBUG、INFO、WARN、ERROR等),并可以使用过滤器(filter)来决定哪些日志应发送到Kafka,哪些不发送。 6. **性能优化**:考虑到...

Global site tag (gtag.js) - Google Analytics