比较全的log4j示例
<?xml version="1.0" encoding="UTF-8"?><configuration status="off"><!--先定义所有的appender --><appenders><!--这个输出控制台的配置 --><Console name="Console" target="SYSTEM_OUT"><!--这个都知道是输出日志的格式 --><PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n%ex" /><!--控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch) --><ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY" /></Console><RollingFile name="RollingFile" fileName="/log/CFDMS.log" filePattern="/log/CFDMS.%d{yyyy-MM-dd}.log"><PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n%ex" charset="UTF-8" /><ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY" /><Policies><!-- 每天一个文件 --><TimeBasedTriggeringPolicy interval="1" modulate="true" /><!-- 保存365天的记录 --><DefaultRolloverStrategy max="365" /></Policies></RollingFile><RollingFile name="RollingFileSuccess" fileName="/log/CFDMSSuccess.log" filePattern="/log/CFDMSSuccess.%d{yyyy-MM-dd}.log"><PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n%ex" charset="UTF-8" /><Filters><!-- 显示error级别之外的信息 --><ThresholdFilter level="error" onMatch="DENY" onMismatch="NEUTRAL"/><ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY"/></Filters><Policies><!-- 每天一个文件 --><TimeBasedTriggeringPolicy interval="1" modulate="true" /><!-- 保存365天的记录 --><DefaultRolloverStrategy max="365" /></Policies></RollingFile><RollingFile name="RollingFileError" fileName="/log/CFDMSError.log" filePattern="/log/CFDMSError.%d{yyyy-MM-dd}.log"><PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n%ex" charset="UTF-8" /><Filters><!-- 只显示error级别的信息 --><ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/></Filters><Policies><!-- 每天一个文件 --><TimeBasedTriggeringPolicy interval="1" modulate="true" /><!-- 保存365天的记录 --><DefaultRolloverStrategy max="365" /></Policies></RollingFile><!-- 自定义一个log文件在程序中直接使用 --><RollingFile name="liuyxlog" fileName="/log/liuyx.log" append="true" filePattern="/log/liuyx$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz"> <PatternLayout pattern="%d{yyyy-MM-dd 'at' HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n"/> <SizeBasedTriggeringPolicy size="4 MB"/> </RollingFile></appenders><!--然后定义logger,只有定义了logger并引入的appender,appender才会生效 --><loggers><!-- 3rdparty Loggers --> <logger name="org.springframework.core" level="warn"> </logger> <logger name="org.springframework.beans" level="warn"> </logger> <logger name="org.springframework.context" level="warn"> </logger> <logger name="org.springframework.web" level="warn"> </logger> <logger name="org.jboss.netty" level="warn"> </logger> <logger name="org.apache.http" level="warn"> </logger> <logger name="com.mchange.v2" level="warn"> </logger><!-- 自定义一个log文件在程序中直接使用 --><logger name="liuyxlogger" additivity="TRUE" level="ALL"> <appender-ref ref="liuyxlog" level="ALL" /> </logger><!--建立一个默认的root的logger --><root level="info"><appender-ref ref="RollingFile" /><appender-ref ref="RollingFileSuccess" /><appender-ref ref="RollingFileError" /><appender-ref ref="Console" /></root></loggers> </configuration>
package com.inspur;import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger;public class WhereIsMyLogFile {private static Logger logger = LogManager.getLogger("liuyxlogger"); private static Logger logger2 = LogManager.getLogger(WhereIsMyLogFile.class); public static void main(String[] args) {logger.trace("hello liuyx log");logger2.info("from logger2");logger2.error("im an error");} }
输出结果
如果想输出到tomcat根目录下,可以在路径前加上${sys:catalina.home}
转载于:https://www.cnblogs.com/flying607/p/7449618.html
比较全的log4j示例相关推荐
- R语言使用knitr生成机器学习模型全流程步骤示例:knitr与自动化结果报告、knitr常用参数
R语言使用knitr生成机器学习模型全流程步骤示例:knitr与自动化结果报告.knitr常用参数 目录
- 音频数据建模全流程代码示例:通过讲话人的声音进行年龄预测
来源:DeepHub IMBA 本文约6100字,建议阅读10+分钟 本文展示了从EDA.音频预处理到特征工程和数据建模的完整源代码演示. 大多数人都熟悉如何在图像.文本或表格数据上运行数据科学项目. ...
- mysql的dml全,MySQL数据管理----DML语言(全记住)(示例代码)
DML语言(全记住) 数据库意义:数据存储.数据管理 DML语言:数据操作语言 Insert update delete truncate 1.insert 添加 错误示例: -- 1.指定1个字段, ...
- Spring MVC-集成(Integration)-集成LOG4J示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_log4j.htm 说明:示例基于Spring MVC 4.1.6. 以下示例说明 ...
- 音频数据的建模全流程代码示例:通过讲话人的声音进行年龄预测
大多数人都熟悉如何在图像.文本或表格数据上运行数据科学项目.但处理音频数据的样例非常的少见.在本文中,将介绍如何在机器学习的帮助下准备.探索和分析音频数据.简而言之:与其他的形式(例如文本或图像)类似 ...
- 最全-python教程示例大全 同步学习
文章目录 第1章 计算机基础及Python简介 第2章 编写简单的程序 2.1 示例程序 2.2 标识符及命名规范 2.3 变量与赋值语句 2.3.1 Python语言中的变量 2.3.2 变量的赋值 ...
- F11快捷键自适应缩放全屏(CSS示例)
一.F11快捷键 在使用B/S系统时,为了突出展示系统功能,一般会按F11快捷键将浏览器全屏展示.全屏展示时将浏览器的地址栏.书签栏.PC机的任务栏等都被隐藏,显示器仅仅显示整个web系统的所有元素, ...
- 正则表达式全解析+常用示例
在开始写这篇文章之前,我的心里还是纠结的.我在问自己要不要写这篇东西,关于相似的内容网上多如牛毛,而且还不乏珍品,况且,就算我写了也不一定能写的好.但是现在你既然看到了,那说明我还是写了出来.就算是对 ...
- android4.0.3去掉底部状态栏statusbar,全屏显示示例代码
要去掉android4.0上的状态栏,全屏显示的代码如下: 1.将usleep和killall这二个文件放到assets文件夹下.这二个文件可在下面的附件中下载到. 2.创建Device.java(注 ...
最新文章
- .NET MVC 学习笔记(一)— 新建MVC工程
- 在 Eclipse 中使用 Maven 构建 Web 项目
- python 翻译库_有没有大神用Python Requests库翻译一下呢?
- Nginx(三):负载均衡策略 与 Nginx静态服务器
- 游戏开发-从零开始 002
- 如何在Spring Boot App中集成H2数据库
- Python扑克牌发牌(用类实现)
- oracle pl/sql 无监听程序
- R爬虫可视化第五季-图解欧洲足球五大联赛
- 5064. 删除字符串中的所有相邻重复项
- 转载 信号量 第六篇
- 探究L298N模块烧毁的原因
- 王者荣耀android换ios,2021王者荣耀安卓账号可以转苹果吗 2021年安卓账号转移到ios方法...
- 技术之外——哀悼我的大学舍友
- matlab impixel的用法
- Android 手势操作GestureDetector
- python 散点图 自定义x轴标签/经度180到-180连接
- 国外调查问卷项目赚美金
- vba和vb的小区别
- 安装.NET 4.5.1
热门文章
- jQuery框架学习第十天:实战jQueryUI常用功能
- 错误 1 类型“System.Web.UI.ScriptManager”同时存在于“c:\windows\assembly\GAC_MSIL\System.Web.Extensions\3.5.0.0
- 基于LINQ to SQL的WEB开发三层架构(1)
- 《scikit-learn》数据预处理与特征工程(一)数据归一化
- 0 full gc时cpu idle_Go语言中如何观察GC
- kettle时间维度_MySQL快速生成时间维度表
- leetcode —— 337. 打家劫舍 III
- WAMP下解决localhost可以访问但IP地址无法访问的问题
- 网络爬虫之Url含有中文如何转码
- python绘制动态图-数据可视化