spring logback 配置
<appender name="DubboInfo"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>./data/log/sim-kpi.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>./data/log/sim-kpi.%d{yyyy-MM-dd}.%i.log
</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>5MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%date [%thread] %-5level %logger{80} - %msg%n</Pattern>
</layout>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>DEBUG</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>NEUTRAL</onMismatch>
</filter>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
./data/log/sim-kpi.log 此路径表示在项目根目录路径下生成日志文件

请看下面这段配置,这是无法工作的:
- <?xml version="1.0" encoding="UTF-8" ?>
- <configuration>
- <contextName>JTheque</contextName>
- <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>logs/jtheque.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <FileNamePattern>logs/jtheque.%i.log.zip</FileNamePattern>
- <MinIndex>1</MinIndex>
- <MaxIndex>5</MaxIndex>
- </rollingPolicy>
- <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <MaxFileSize>5MB</MaxFileSize>
- </triggeringPolicy>
- <layout class="ch.qos.logback.classic.PatternLayout">
- <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern>
- </layout>
- </appender>
- <root level="DEBUG">
- <appender-ref ref="FILE"/>
- </root>
- </configuration>
使用该配置,不会生成任何日志文件,这可能是 LogBack 的 bug,解决的办法就是使用绝对路径,你可以用一些系统变量来代替,例如:
- ...
- <file>${user.dir}/logs/jtheque.log</file>
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <FileNamePattern>${user.dir}/logs/jtheque.%i.log.zip</FileNamePattern>
- <MinIndex>1</MinIndex>
- <MaxIndex>5</MaxIndex>
- </rollingPolicy>
- ...

现在就好了,希望对某些使用 LogBack 的人有帮助。
其实使用相对路径是能产生日志文件的,只是这个相对路径是相对与Eclipse(我是使用eclipse开发的,在eclipse启动的),我发现日志全部跑到eclipse安装目录里面去了
不过看样子,logback是不推荐使用相对路径来记录日志文件,个人觉得确实使用一些环境变量来引用绝对路径要更好控制一点
tomcat下可以用:${catalina.base}/logs/your_log.log
一直使用相对路径. 没发现问题. 使用你这个配置也没问题. 可能你用的版本比较老,用最新的时会有警告,
http://logback.qos.ch/codes.html#layoutInsteadOfEncoder
ps: logback在当打包时目录不存在时不会自动创建的目录, 需要做小小的修改才行.
1, 把日志发送到邮件中
2, 把日志保存到数据库中(有异步么?)
官方文档有: http://logback.qos.ch/manual/appenders.html
- 线上会有Rolling日志, 放到磁盘的某个特殊位置(tomcat/logs/)
- 本地Console即可
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml" />
<springProfile name="production">
<appender name="dailyRollingFileAppender"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${catalina.base}/logs/sim-kpi.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<FileNamePattern>${catalina.base}/logs/sim-kpi.%d{yyyy-MM-dd}.%i.log
</FileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>1</maxHistory>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 100MB -->
<maxFileSize>20KB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%d{YYYY-MM-dd HH:mm:ss.SSS} [%thread] %-5level
%logger{80}-%msg%n</Pattern>
</layout>
</appender>
</springProfile>
<springProfile name="embedded">
<root level="INFO">
<appender-ref ref="CONSOLE" />
</root>
</springProfile>
<springProfile name="production">
<root level="INFO">
<appender-ref ref="CONSOLE" />
<appender-ref ref="dailyRollingFileAppender" />
</root>
</springProfile>
</configuration>
spring logback 配置的更多相关文章
- Spring Boot系列一:默认日志logback配置解析
前言 今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢 如何引入日志? 日志输出格式以及输出方式如何配置? 代码中如何使用? 正文 Sp ...
- spring整合mybatis、hibernate、logback配置
Spring整合配置Mybatis 1.配置数据源(连接数据库最基本的属性配置,如数据库url,账号,密码,和数据库驱动等最基本参数配置) <!-- 导入properties配置文件 --> ...
- Spring Boot - Logback配置日志要考虑哪些因素
Spring Boot - Logback配置日志 出于性能等原因,Logback 目前是springboot应用日志的标配: 当然有时候在生产环境中也会考虑和三方中间件采用统一处理方式.@pdai ...
- Spring Boot默认日志logback配置解析
前言 今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢 如何引入日志? 日志输出格式以及输出方式如何配置? 代码中如何使用? 正文 Sp ...
- (转)Spring Boot干货系列:(七)默认日志logback配置解析
转:http://tengj.top/2017/04/05/springboot7/ 前言 今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的, ...
- Spring Boot 2 中的默认日志管理与 Logback 配置详解
Spring Boot在所有内部日志中使用Commons Logging,但是对底层日志的实现是开放的.在Spring Boot生态中,为Java Util Logging .Log4J2 和Logb ...
- NoSql存储日志数据之Spring+Logback+Hbase深度集成
NoSql存储日志数据之Spring+Logback+Hbase深度集成 关键词:nosql, spring logback, logback hbase appender 技术框架:spring-d ...
- Spring Boot 配置优先级顺序
一般在一个项目中,总是会有好多个环境.比如: 开发环境 -> 测试环境 -> 预发布环境 -> 生产环境 每个环境上的配置文件总是不一样的,甚至开发环境中每个开发者的环境可能也会有一 ...
- 剖析项目多个logback配置(下)
来源:http://www.cnblogs.com/guozp/p/5973038.html 上篇大概描述了logback的加载顺序以及加载的源码,本篇将分析如果在你的Maven或者其他多模块的项目中 ...
随机推荐
- ubuntu 搭建maven库 2.14.2-01并配置离线索引文件
前提 安装JDK版本1.8或者以上 1 下载 http://www.sonatype.org/nexus/archived/ 选择相应的版本 2 复制到/usr/local 下解压 sudo cp ...
- Hadoop:输入,输出,key,value格式
map: (K1, V1) → list(K2, V2) reduce: (K2, list(V2)) → list(K3, V3) (K1, V1): jobConf.setInputKeyClas ...
- Bootstrap-datetimepicker年月日
<div class="input-group date form_date" data-date="" data-date-format="y ...
- 安装了简易版XP系统后不能安装IIS的解决办法
第一步 找到C:\WINDOWS\inf文件夹中的sysoc.inf文件,在 [Components]区域中的NetOC=netoc.dll,NetOcSetupProc,netoc.inf,,7和c ...
- Android 数据库管理— — —更新数据
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" ...
- jquery 触发/失去焦点事件例子详解
触发焦点: $("Element").focus() 触发每一个匹配元素获得焦点事件. $("Element").focus(function) 事件会在获得焦 ...
- Sweet Alert
http://www.dglives.com/demo/sweetalert-master/example/ Sweet Alert A beautiful replacement for Javas ...
- C# treeview 绑定数据 【转】
private void bindTreeView1() { string sql = "select * from dm_category"; DataTable dt = db ...
- asp.net中的GridView控件的部分知识点
<PagerTemplate> <br /> <asp:Label ID="lblPage" runat="server" Tex ...
- C++ 11 Template ... 与Decltype 测试
#include <iostream> #include "string" using namespace std; template<typename T> ...