我项目中一直使用这样的模板,留档,并纪念。

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<contextName>projectName</contextName>
<property name="contextName" value="projectName" />
<property name="log_dir" value="./logs/" />
<!--输出到控制台-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<!-- 级别过滤器。如果日志级别低于WARN,将被过滤掉。 ALL TRACE DEBUG INFO WARN ERROR-->
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>DEBUG</level>
</filter>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %msg - %file:%line%n</pattern>
<charset>UTF-8</charset>
</encoder>
</appender> <!-- 每天记录info级别日志文件 -->
<appender name="InfoRollingFileAppender"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<Prudent>true</Prudent>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %msg - %file:%line%n</Pattern>
</layout>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${log_dir}/${contextName}_info%d{yyyy-MM-dd}.log
</FileNamePattern>
</rollingPolicy>
<!-- 级别过滤器。如果日志级别低于WARN,将被过滤掉。ALL TRACE DEBUG INFO WARN ERROR-->
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
<!-- 除了DEBUG级别的日志,其它什么级别的日志都不要 -->
<!-- <filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>DEBUG</level>
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY </onMismatch>
</filter> -->
</appender> <!-- 每天记录ERROR级别日志文件 -->
<appender name="ErrorRollingFileAppender"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<Prudent>true</Prudent>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %msg - %file:%line%n</Pattern>
</layout>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${log_dir}/${contextName}_error%d{yyyy-MM-dd}.log
</FileNamePattern>
</rollingPolicy>
<!-- 级别过滤器。如果日志级别低于WARN,将被过滤掉。 -->
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level>
</filter>
<!-- 除了DEBUG级别的日志,其它什么级别的日志都不要 -->
<!-- <filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>DEBUG</level>
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY </onMismatch>
</filter> -->
</appender> <root>
<appender-ref ref="console" />
<appender-ref ref="InfoRollingFileAppender" />
<appender-ref ref="ErrorRollingFileAppender" />
</root>
</configuration>

logback.xml例子的更多相关文章

  1. logback.xml配置详解

    先附上本文分析用的例子: <?xml version="1.0" encoding="UTF-8" ?> <configuration> ...

  2. 【转】logback logback.xml常用配置详解(二)<appender>

    原创文章,转载请指明出处:http://aub.iteye.com/blog/1101260, 尊重他人即尊重自己 详细整理了logback常用配置, 不是官网手册的翻译版,而是使用总结,旨在更快更透 ...

  3. 【转】logback logback.xml常用配置详解(一)<configuration> and <logger>

    原创文章,转载请指明出处:http://aub.iteye.com/blog/1101260, 尊重他人即尊重自己 详细整理了logback常用配置, 不是官网手册的翻译版,而是使用总结,旨在更快更透 ...

  4. logback logback.xml常用配置详解(三)

    logback logback.xml常用配置详解 <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之 ...

  5. logback.xml配置

    一:根节点<configuration>包含的属性: scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true. scanPeriod: 设置监测配置文 ...

  6. 使用logback.xml配置来实现日志文件输出

    转自:http://sungang-1120.iteye.com/blog/2104296 Logback是由log4j创始人设计的又一个开源日志组件.logback当前分成三个模块:logback- ...

  7. logback logback.xml 常用配置详解

    一:根节点<configuration>包含的属性: scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true. scanPeriod: 设置监测配置文 ...

  8. (转)Spring boot——logback.xml 配置详解(二)

    文章转载自:http://aub.iteye.com/blog/1101260,在此对作者的辛苦表示感谢! 1 根节点<configuration>包含的属性 scan: 当此属性设置为t ...

  9. logback的使用和logback.xml详解

    一.logback的介绍 Logback是由log4j创始人设计的另一个开源日志组件,官方网站: http://logback.qos.ch.它当前分为下面下个模块: logback-core:其它两 ...

随机推荐

  1. echarts 折线图点击高亮

    echarts中注册事件很多 ,记录下今天做的折线图点击高亮: 查了api,看了半天,发现折线图点击时只能做到圆点变大,并不能实现点击线条,整条线条高亮,也真是醉了. 上图: 如图所示,只能圆点变大. ...

  2. learn-ES6基础语法1-let&const

    1.let ① 使用let声明的变量,所声明的变量只能在命令所在的代码块内有效. 同样在代码块内的a和c,c在代码块内就可以输出,a在代码块外就找不到了. ② 使用let命令声明的变量在域解析的时候不 ...

  3. 解决 Unknown action buyram in contract eosio 错误

  4. 《Java编程思想》读书笔记-赋值操作符

    在最底层,Java中的数据是通过使用操作符来操作的.接下来我们逐一认识一些操作符. 怎么运用操作符 操作符接受一个或多个参数,并生成一个新值. 基本操作符 赋值操作符 符号:= 作用:取右边的值,把它 ...

  5. Visual C++ 6.0中if语句的常见问题

    # include <stdio.h> int main (void) { > )//如果在第四行加分号的话,编译的时候就会在第六行出错 printf("你好\n" ...

  6. Python3.7和数据库MySQL 8.0.12 数据库SQLite3连接(三)

    SQLite3 # SQLite3 嵌入式 数据库 python内置SQLite3 # 导入驱动 import sqlite3 # 创建自增主键的表 msql = "create table ...

  7. Python:从入门到实践--第五章--if语句--练习

    #1.编写一系列条件测试:将每个测试以及结果打印出来 car = '宝马' if car == "宝马": print("预测正确") print(car) e ...

  8. MATLAB实现二值化函数

    function  bc = binary_conversion(a)  %这是灰度值二值化转换函数,阈值为平均值j=imread(a);             %读取灰度图像   j=double ...

  9. 前端导出csv

    前端导出csv export: function(data, name) { // csv文件的BOM头 \ufeff可以让excel等识别出csv文件的编码 var uri = 'data:text ...

  10. spring3-struts2整合

    spring  负责对象创建 struts   用Action处理请求 说明: spring版本:spring-framework-3.2.5.RELEASE struts版本:struts-2.3. ...