logback.xml配置如何按天输出日志文件

2015-05-12  来源:本站原创  分类:转贴的文章  人气:2383 

<?xml version="1.0" encoding="UTF-8"?>

<configuration>

<appender name="stdout"

class="ch.qos.logback.core.ConsoleAppender">

<layout class="ch.qos.logback.classic.PatternLayout">

<Pattern>

%d{HH:mm:ss} [%thread] %-5level %logger{80} - %msg%n

</Pattern>

</layout>

</appender>

<appender name="R"

class="ch.qos.logback.core.rolling.RollingFileAppender">

<File>../ptvslog/server.log</File>

<layout class="ch.qos.logback.classic.PatternLayout">

<Pattern>

%d{HH:mm:ss} [%thread] %-5level %logger{80} - %msg%n

</Pattern>

</layout>

<rollingPolicy

class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">

<maxIndex>2</maxIndex>

<FileNamePattern>../ptvslog/server.log.%i</FileNamePattern>

</rollingPolicy>

<triggeringPolicy

class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">

<MaxFileSize>50MB</MaxFileSize>

</triggeringPolicy>

</appender>

(1)第一种配置如下时,将会使日志文件往后累加,而不是每日只生成当日的日志文件

<appender name="logfile"

class="ch.qos.logback.core.rolling.RollingFileAppender">

<File>../ptvslog/access.log</File>

<rollingPolicy

class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

<FileNamePattern>

../ptvslog/access.%d{yyyy-MM-dd}.log

</FileNamePattern>

<!-- keep 1 days worth of history -->

<MaxHistory>1</MaxHistory>

</rollingPolicy>

<layout class="ch.qos.logback.classic.PatternLayout">

<Pattern>

%d{yyyy-MM-dd HH:mm:ss} -%msg%n

</Pattern>

</layout>

</appender>

(2)第二种配置如下时,按天生成日志文件,每天的日志文件里只保存当天的日志信息

<appender name="logfile2"

class="ch.qos.logback.core.rolling.RollingFileAppender">

<Prudent>true</Prudent>

<rollingPolicy

class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

<FileNamePattern>

../ptvslog/access.%d{yyyy-MM-dd}.log

</FileNamePattern>

<!-- keep 60 days worth of history -->

<MaxHistory>60</MaxHistory>

</rollingPolicy>

<layout class="ch.qos.logback.classic.PatternLayout">

<Pattern>

%d{yyyy-MM-dd HH:mm:ss} -%msg%n

</Pattern>

</layout>

</appender>

(2)第三种配置如下时,按天生成文件夹,每个文件夹里放当天的日志文件

<appender name="logDirfile"

class="ch.qos.logback.core.rolling.RollingFileAppender">

<Prudent>true</Prudent>

<rollingPolicy

class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">

<FileNamePattern>

../ptvslog/%d{yyyy-MM-dd}/access.%d{yyyy-MM-dd}.log

</FileNamePattern>

</rollingPolicy>

<layout class="ch.qos.logback.classic.PatternLayout">

<Pattern>

%d{yyyy-MM-dd HH:mm:ss} -%msg%n

</Pattern>

</layout>

</appender>

以下配置表示DataController类的INFO日志以logDirfile输出,additivity="false"表示只在

logDirfile输出,不在其他输出台输出,如果设置为true,表示要在其他地方也输出。

<logger name="com.apabi.ptvs.web.DataController"

additivity="false">

<level value="INFO" />

<appender-ref ref="logDirfile" />

</logger>

<root level="INFO">

<appender-ref ref="stdout" />

<appender-ref ref="R" />

</root>

</configuration>

相关文章
  • logback.xml配置如何按天输出日志文件 2015-05-12

    <?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender"> <layout class="ch.qos.logback.classic.PatternLayout"> <

  • logback logback.xml 常用配置详解 2014-08-06

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

  • 在Spring中配置使用commons-logging的simplelog来输出日志 2014-05-20

    烦透了log4j,最新版的包结构变动也不做下兼容,在spring项目中用会爆找不到class,maven仓中的老版又依赖了一大堆Java1.4的东西,实在是不爽,于是果断抛弃,改用commons-logging的simplelog来输出日志. 要在spring中使用simplelog输出日志,需要在classpath中放入两个properties:commons-logging.properties和simplelog.properties commons-logging.properties:

  • logback常用配置信息 2015-03-11

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

  • java自定义日志输出文件(log4j日志文件输出多个自定义日志文件) 2014-07-23

    打印日志的在程序中是必不可少的,如果需要将不同的日志打印到不同的地方,则需要定义不同的Appender,然后定义每一个Appender的日志级别.打印形式和日志的输出路径,下面看一个示例吧 log4j输出多个自定义日志文件 如果在实际应用中需要输出独立的日志文件,怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢? 先看一个常见的log4j.properties文件,它是在控制台和test.log文件中记录日志: log4j.rootLogger=DEBUG, stdout, logfi

  • LOG4J 按类输出日志 2010-03-24

    一个根据类来输出日志的实例 LOG4J.XML如下所示: <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="INFO" class="org.apache.log4j.DailyRollingFileAppender"> <param

  • log4j输出多个日志文件 2011-02-26

    不同的包路径,采用不同的 appender及日志文件进行记录有2种方法 第一种: 修改配置文件: XX.AName为包名 XX.BName为包名 log4j.logger.XX.AName=DEBUG,A1 log4j.additivity.XX.AName=false log4j.appender.A1=org.apache.log4j.RollingFileAppender log4j.appender.A1.MaxFileSize=5120KB log4j.appender.A1.MaxB

  • 在 Linux 服务器上配置 WEB 应用程序的日志打印到指定文件 2012-08-22

    服务器环境是 RedHat Linux, 其上运行的是 Apache + Tomcat,容器中运行的是我们公司的壹个小型电子商务网站,原来项目里的日志信息都是直接随着 Tomcat 容器壹起打印到 /tomcat/logs/catalina.out 中,与服务器本身的日志混合在壹起,特别难看,尤其当日志信息很多时,总是把重要的信息给冲掉了.感觉特别不爽.于是从两个月前开始,我就想把这个问题给解决下,思路就是给应用程序单独配置日志的输出方式,将其重定向到指定的日志文件,这样,我们可以简单的通过查看

  • log4j输出多个自定义日志文件 2013-05-20

    1. log4j输出多个自定义日志文件 log4j的强大功能无可置疑,但实际应用中免不了遇到某个功能需要输出独立的日志文件的情况,怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢?其实只要在现有的log4j基础上稍加配置即可轻松实现这一功能. 先看一个常见的log4j.properties文件,它是在控制台和myweb.log文件中记录日志: log4j.rootLogger=DEBUG, stdout, logfile log4j.category.org.springframewo

  • Struts2 XML配置详解 2013-06-06

    1. 深入Struts2的配置文件 本部分主要介绍struts.xml的常用配置. 1.1. 包配置: Struts2框架中核心组件就是Action.拦截器等,Struts2框架使用包来管理Action和拦截器等.每个包就是多个Action.多个拦截器.多个拦截器引用的集合. 在struts.xml文件中package元素用于定义包配置,每个package元素定义了一个包配置.它的常用属性有: l name:必填属性,用来指定包的名字. l extends:可选属性,用来指定该包继承其他包.继承

  • log4j.xml配置示例 2015-04-27

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration SYSTEM "http://toolkit.alibaba-inc.com/dtd/log4j/log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

  • Spring的注解配置与XML配置之间的比较 2013-10-20

    在很多情况下,注释配置比 XML 配置更受欢迎,注释配置有进一步流行的趋势.Spring 2.5 的一大增强就是引入了很多注释类,现在您已经可以使用注释配置完成大部分 XML 配置的功能 注释配置相对于 XML 配置具有很多的优势:它可以充分利用 Java 的反射机制获取类结构信息,这些信息可以有效减少配置的工作.如使用 JPA 注释配置 ORM 映射时,我们就不需要指定 PO 的属性名.类型等信息,如果关系表字段和 PO 属性名.类型都一致,您甚至无需编写任务属性映射信息--因为这些信息都可以

  • Windows 7采用Xml格式保存日志文件 2014-06-30

    在Windows操作系统好几个版本中,都可以把系统日志另存为文本文件.CSV文件等等,以方便系统管理员查询.不过同XP操作系统版本不同,在Windows7中其日志另存为多了一个格式,即Xml格式.如下图所示,在Windows7中除了有XP操作系统所具有的三种格式外,还多了一个XML文件格式.这个格式也真是很多系统管理员所期待的日志格式.因为采用这个日志格式,能够给我们日常管理带来很大的便利. 便利一:阅读与查询方便. Xml格式的文件与其它文件最大的不同,就是Xml文件是一种结构化的数据.通俗的

  • 将文件夹下所有文件输出到日志文件中 c#递归算法学习示例 2014-08-03

    这篇文章主要介绍了将文件夹下所有文件输出到日志文件中,通过这个示例我们学习一下递归算法的使用方法 算法文章,总是带给我们无穷的思考和兴趣,一个问题,多种解决方法,看你如何去思考它,对于标题所引出的问题,我觉得,使用递归是比较有效的方法,当然递归还有很多使用场合,如树型分类列表的操作等等. 注意: 使用递归时,初学者要特别注意的就是"出口",必须为递归提供一个出口,否则你的内存就要溢出了,呵呵,memory overflow大家肯定都见过,都是从那时候过来的,呵呵. 代码中的递归: st

  • PowerShell默认参数$PSDefaultParameterValues结合Out-File输出到日志文件 2015-04-09

    这篇文章主要介绍了PowerShell默认参数$PSDefaultParameterValues结合Out-File输出到日志文件实例,需要的朋友可以参考下 输出log是一个永恒的话题,什么tracelistener,net4log,nlog,windows中自带的eventlog,之前在自动重定向PowerShell控制台输出到文件 也算.其实借助于PowerShell 3.0以后的PowerShell默认参数$PSDefaultParameterValues,可以让Out-File,命令也变

  • Spring XML配置的12个技巧 2012-02-16

    Spring是一个强有力的java程序框架,其被广泛应用于java的程序中.它用POJO提供了企业级服务.Spring利用依赖注入可以获得简单而 有效的测试能力.Spring beans,依赖关系,以及服务所需要的bean都将在配置文件中予以描述,配置文件一般采用XML格式.然而XML配置文件冗长而不易使用,在你进行一 个使用了大量bean的大项目中它将变得难以阅读和控制. 在这篇文章中我将给你展示12种的有关Spring XML配置文件的最佳技巧.它们中的一些具有更多的实际意义,而不仅是最好的

  • 利用php的register_shutdown_function来记录php的输出日志 2012-09-14

    最近在做的一个项目..由于全是通过远程http请求来调用php的接口程序.. 接收到的参数和返回的内容对开发人员来说都是未知不可见的.. 虽然可以通过直接在脚本中模拟请求..但由于实际环境复杂的多..调试极其不方便. 于是想是否可以写一个函数用来记录对php接口调用的情况. 想到以前看到过的一个php函数register_shutdown_function.. 该函数的作用是注册一个函数,当php脚本执行完成,或者代码中调用了exit ,die这样的代码之后,执行预先注册好的函数. 这样我们就可

  • spring整合hibernate(注解.xml)applicationContext.xml配置 2013-04-12

    每次ssh框架整合都很麻烦,今天有空余时间总结下(主要总结spring+hibernate): 1.注解方式整合: applicationContext.xml配置文件: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.or

  • cmd命令行中logcat输出日志中文乱码 2014-01-30

    http://www.6san.com/913/ 在命令行使用adb logcat命令直接输出日志中文内容显示乱码,原因是中文系统中cmd命令行窗口默认的编码是GBK,而LogCat打印的日志是UTF-8编码,所以adb logcat命令输出的中文内容显示乱码. 修改cmd命令行窗口字符编码即可解决logcat日志中文显示乱码问题: 1.cmd命令行窗口字符编码切换为UTF-8,命令行中执行:chcp 65001 2.修改cmd窗口字体属性,在命令行标题栏上点击右键,选择"属性"-&g

  • C#实现用XML配置MenuStrip菜单 2014-05-15

    1.关于本程序的说明 用XML配置MenuStrip菜单,本程序只是提供一个思路.程序在Load函数中根据XML文件中的设置动态生成一个MenuStrip组件的Items集合. 程序示例如下: 2.使用到的XML文档示例 <?xml version="1.0" encoding="gb2312"?> <!--MenuStrip:mnsMainMenu控件中的各个菜单配置--> <!--Menu:菜单栏中的各项,Text:显示名称,Sho