log4j分模块分内容配置

log4j日志分模块打印 打印日志时,需要根据项目中的不同模块将日志输入到不同的文件中,可通过添加不同的日志 log4j.rootLogger=DEBUG,Console,LOGFILE_COMMOM log4j.appender.Console=org.apache.log4j.ConsoleAppender log4j.appender.Threshold=INFO log4j.appender.Console.T 阅读详情
og4j的强大功能无可置疑,但实际应用中免不了遇到某个功能需要输出独立的日志文件的情况,怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢?其实只要在现有的log4j基础上稍加配置即可轻松实现这一功能。

  先看一个常见的log4j.properties文件,它是在控制台和myweb.log文件中记录日志:

log4j.rootLogger=DEBUG, stdout, logfile

log4j.category.org.springframework=ERROR

log4j.category.org.apache=INFO

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n

log4j.appender.logfile=org.apache.log4j.RollingFileAppender

log4j.appender.logfile.File=${myweb.root}/WEB-INF/log/myweb.log

log4j.appender.logfile.MaxFileSize=512KB

log4j.appender.logfile.MaxBackupIndex=5

log4j.appender.logfile.layout=org.apache.log4j.PatternLayout

log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

  

如果想对不同的类输出不同的文件(以cn.com.Test为例),先要在Test.java中定义:

private static Log logger = LogFactory.getLog(Test.class);

  然后在log4j.properties中加入:

log4j.logger.cn.com.Test= DEBUG, test

log4j.appender.test=org.apache.log4j.FileAppender

log4j.appender.test.File=${myweb.root}/WEB-INF/log/test.log

log4j.appender.test.layout=org.apache.log4j.PatternLayout

log4j.appender.test.layout.ConversionPattern=%d %p [%c] - %m%n

  也就是让cn.com.Test中的logger使用log4j.appender.test所做的配置。

  但是,如果在同一类中需要输出多个日志文件呢?其实道理是一样的,先在Test.java中定义:

private static Log logger1 = LogFactory.getLog("myTest1");

private static Log logger2 = LogFactory.getLog("myTest2");

  然后在log4j.properties中加入:

log4j.logger.myTest1= DEBUG, test1

log4j.appender.test1=org.apache.log4j.FileAppender

log4j.appender.test1.File=${myweb.root}/WEB-INF/log/test1.log

log4j.appender.test1.layout=org.apache.log4j.PatternLayout

log4j.appender.test1.layout.ConversionPattern=%d %p [%c] - %m%n

  

log4j.logger.myTest2= DEBUG, test2

log4j.appender.test2=org.apache.log4j.FileAppender

log4j.appender.test2.File=${myweb.root}/WEB-INF/log/test2.log

log4j.appender.test2.layout=org.apache.log4j.PatternLayout

log4j.appender.test2.layout.ConversionPattern=%d %p [%c] - %m%n

  也就是在用logger时给它一个自定义的名字(如这里的"myTest1"),然后在log4j.properties中做出相应配置即可。别忘了不同日志要使用不同的logger(如输出到test1.log的要用logger1.info("abc"))。

  还有一个问题,就是这些自定义的日志默认是同时输出到log4j.rootLogger所配置的日志中的,如何能只让它们输出到自己指定的日志中呢?别急,这里有个开关:

log4j.additivity.myTest1 = false

  它用来设置是否同时输出到log4j.rootLogger所配置的日志中,设为false就不会输出到其它地方啦!注意这里的"myTest1"是你在程序中给logger起的那个自定义的名字!

如果你说,我只是不想同时输出这个日志到log4j.rootLogger所配置的logfile中,stdout里我还想同时输出呢!那也好办,把你的log4j.logger.myTest1 = DEBUG, test1改为下式就OK啦!

log4j.logger.myTest1=DEBUG, test1, stdout


ssm框架配置文件详解,(分模块配置) 通过maven创建一个web工程,则经过修改之后会是如下的目录结构: 每个目录的含义我就不一一介绍了,这不是本次讨论的重点,创建好之后,我们在src/main/resources资源目录下加入以下配置文件:   一共6个,最后加上一个web.xml的配置,就OK了,现在来详解这些配置文件的内容: sqlMapConfig.xml 空文件即可: <?xml version... 阅读详情

相关推荐

别再手动对照了!用Python+ArcGIS Pro一键搞定三调数据转土地三大类

本文介绍如何利用Python和ArcGIS Pro实现三调数据向土地三大类的自动化转换,大幅提升国土空间规划和土地变更调查的工作效率。通过封装分类规则为Python函数并集成到ArcGIS Pro脚本工具中,解决了传统手动操作耗时且易错的问题,适用于大规模数据处理场景。

weixin_29081101的博客 304

log4j输出多个自定义日志文件

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

janestone的专栏 2万+

分辨率太小 / Retina 模糊 / 全屏异常:一篇解决 VMware Fusion + Kali 显示问题(Xfce & GNOME 通用)

本文提供了在Mac(尤其是Retina屏)上运行Kali Linux时常见显示问题的完整解决方案。主要解决三类问题:分辨率太小、Retina屏模糊和全屏异常。核心思路是先安装open-vm-tools-desktop并重启,这是90%问题的根源。然后根据不同问题分别处理:调整DPI/Scale解决字体大小,避免双重缩放导致的模糊,以及通过窗口拉伸和重启解决全屏异常。文章还给出了针对Xfce和GNOME的最佳配置建议,并强调调试完成后应创建快照以便快速恢复。最后提供了速查表,方便用户快速参考关键步骤。

致力于分享在各类技术领域的学习与实践经验,涵盖编程、虚拟化、开源工具、网络安全等。 874

log4j输出多个自定义日志文件,动态配置路径

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

heishen51的专栏 621

xilinx zynq-7000 linux下rs422串口通信测试步骤

这几天使用xilinx的zynq-7000系列调试rs422串口,期间遇到不少问题,好在最终调试完成,在这里记录一下调试步骤。 我用的soc型号是xc7z100,板载了2个rs422外设,PS端有2个uart控制器,uart0用于连接rs232并作为console控制台输出,uart1连接rs422。 rs422和主板连线原理图如下: 其中422_TXD1_3V3 和422_RXD1_3V3 为数据发送和接收引脚,422_TXD_DE1_3V3为发送使能引脚,422_RXD_REn1_...

dongyunke的博客 5907

避坑指南:C#用S7NetPlus读写西门子PLC字符串(String/WString)的完整方案

本文详细解析了C#通过S7NetPlus读写西门子PLC字符串(String/WString)的完整方案,包括内存布局、编码差异和字节序处理等关键技术细节。提供了实战优化的代码示例和常见问题排查指南,帮助开发者避免乱码、截断等常见陷阱,提升工业自动化项目的开发效率。

weixin_32956805的博客 320

log4j日志输出到多个文件

log4j.rootLogger=INFO,console,logfile log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=[%x/%d{MM-dd HH:mm:ss}][%t][%-3p] %C{1}.%M(%L): %m%n

1192

聚类模型-层次聚类

聚类模型 1、层次聚类 2、原型聚类-K-means 3、模型聚类-GMM 4、EM算法-LDA主题模型 5、密度聚类-DBSCAN 6、图聚类-谱聚类 一、层次聚类 一、聚类理论 ​ 一般来说,聚类是在训练样本的标签信息不知的情况下,学习样本内在的性质和规律,将有限的集合划分成ccc类。根据“方以类聚,物以群分”的思想,类内对象尽可能的相似,...

myazi 6504

log4j配置输出到多个日志文件

通常我们项目里,有一些重要的日志想单独的输出到指定的文件,而不是全总输出到系统的日志文件里,那么我们log4j为我们提供了这样的功能,下面我们来一步一步看是怎么做的。这里以property的配置方式写,xml方式类似,想了解的,可以看官方文档。

prefer_n的专栏 6841

从零开始:如何用Python建立你的第一个人工智能模型

在这篇文章中,我们将介绍如何从零开始使用Python建立你的第一个人工智能模型。无论你是刚接触编程的新手,还是有经验的开发者想进一步探索人工智能领域,这篇文章都将为你提供清晰、详细的指南。我们将一步步探索数据预处理、模型建立、训练和测试的过程,以及如何解读模型的结果。

Allen1862105的博客 4万+

MS17-010(Eternal blue永恒之蓝)漏洞利用+修复方法

msf永恒之蓝漏洞复现过程以及修复建议

记录学习 8512

log4j分模块

也属于新手,自己研究了一下,然后在前辈的帮助下配置好的,可让初学者或者需要分模块的参考下。 我使用的是XML配置的,使用properties配置大同小异,基础配置网上很多资料,大家可以自己找找。 这是输出文件格式控制符,网上都有: %m 输出代码中指定的消息 %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL %r 输出自应用启动到输出该log信息

Ice379771942的专栏 980

ISOLAR Autosar BSW 配置 之 Com

Autosar ISOLAR Bsw Configuration 之 Com

qq_42262743的博客 453

分模块配置文件多个logger,每个模块有自己单独的输出位源,彼此不影响

log4j.rootLogger=INFO         #分模块配置文件多个logger,每个模块有自己单独的输出位源,彼此不影响     log4j.logger.AppUser=INFO,A1     log4j.logger.AppDebug=DEBUG,A2         #   additivity属性设为false,“不继承root”     log4j.additivity.A

xdsungirl的专栏 938

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

log4j日志输出分级别或模块到不同文件

一、 实现分模块,输出到不同的日志文件,  以下是log4j.properties的实现   log4j.appender.file=org.apache.log4j.DailyRollingFileAppender log4j.appender.file.file=src\\log\\all.log log4j.appender.file.DatePa

tianshijianbing1989的专栏 1万+

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

log4j分模块日志

[code="java"] log4j.rootLogger=INFO, stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.Conv...

joe_zhjiang的专栏 355

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

log4j分模块文件存储

log4j.rootLogger=debug,file log4j.logger.userManager=info,usermanagerfile log4j.logger.epic=error,epicfile log4j.appender.file=org.apache.log4j.DailyRollingFileAppender log4j.a

1253

log4j日志分模块打印,同时不打印到控制台上

由于定时刷新程序的启用,导致catalina.out配置文件中打入大量日志,致使程序调试困难。无法正常查看日志。所以客户要求将性能流量配置日志迁移出catalina.out目录。修改log4j配置文件后,发现分文件中有了日志输出,但是,catalina.out文件中依然有性能流量日志输...

chichetai5142的博客 253

log4j配置文件参考以及用法,log4j分模块输出

1 log4j.properties配置文件参考如下 ###配置全局打印级别### log4j.rootCategory=INFO, stdout log4j.rootLogger=DEBUG, stdout # Log日志文件存放根目录 logdir=/usr/local/log log4j.addivity.org.apache=true ### 输出到控制台 ### log4j....

一条吃软饭的软狗 568

log4j日志按分模块和分级输出到不同的文件中去

现在遇到这样一个场景:输出日志,按照不同的模块,和级别 输出到不同的文件中。 现在有 org.zq.core 和 org.zq.web 包下需要将 info 和 error 分别输出到文件中,也就是说,需要输出到4个文件中。 以下为配置文件; `实现思路:` 分包:应该叫 log4j 的过滤功能,先过滤 log4j.logger.org.zq.core = xxx , 分级:然后使用 自定义的

代码有毒的博客 7188

log4j分级别记录日志,借鉴也可以分模块记日志

[code="java"] ...

hyb_jackson的博客 211

Loggers 配置解析(log4j.xml)

Appender输出内容覆盖范围全局INFO+日志(不含特殊包)非特殊包全局DEBUG+日志 + 特殊包TRACE+日志所有包,不同级别全局DEBUG+日志(不含特殊包)非特殊包全局INFO+日志(不含特殊包)非特殊包全局WARN+日志(不含特殊包)非特殊包全局ERROR+日志(不含特殊包)非特殊包及其子包生产环境安全:默认只记录DEBUG+日志关键模块追踪:特定包记录最详细的TRACE日志。可以调试用。分类存储:不同级别日志分离到不同文件控制台精简:只显示INFO+关键信息。

干就完了!!! 930
上一篇: 递归的力量
下一篇: windows下添加svn服务
青青韭菜
博客等级 码龄15年 1粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值