`
dreamstone
  • 浏览: 288274 次
  • 来自: ...
文章分类
社区版块
存档分类

Log4J的一些小技巧和使用中一些须要注意的问题。

阅读更多


一、为多个项目指定使用哪个log4j文件
情况一:多个小项目合成一个大项目,多个小项目有自己不同的入口,这个时候如果使用同一个log4j文件,各个项目的输
出会混乱在一起,如果拆分成多个小项目,看起来又比较散不太好管理。
情况二:一个项目实施在linux上,编写在windows上,log4j的输出目录/opt/xxx/web.log
这个时候开发者被迫必须在本机的workspace所在的目录加入一个opt/xxx/web.log的目录和文件
同时,大多数情况下linux上的服务是不须要输出log到Console,只要输出到文件
而windows大部份是只须要输出到console,不须要输出到文件
本地调试的时候log4j的级别多是debug ,而实际实施的时候多是之上的级别
造成须要不停的修改log4j的属性文件,cvs同步的时候不停的提示
也许你说可以整个项目完成再来写log4j的属性文件,但有的时候这个效果并不好。
因为还有这种时候,项目完成(包括log),反复测试的这段时间。

解决:解决办法很简单,建立一个log4j的配制文件的目录,在这个目录下为每个小项目建立一个目录,
每个目录下放着自己的log4j配制,然後把这些目录作为每个小工程的classpath的第一个,ok上边的问题就
解决了。这个时候可以写一个log4j放在src下,用来开发时候调试用,而真正服务器上使用的都在各自的文件夹下

二,为默写包,某些类定义不同的log4j级别
是否想过这中需求呢,一个项目调试的时候,希望其中默写包不打出log信息。
比如struts的包,spring的包,还有你引用的别人已经开发好包,或者你自己写的类,但是你不想看到这个
类的log信息.但是你须要调试当前的一些class,log级别必须设置在debug级别
这个时候可以在log4j的属性文件中加入如下内容:
log4j.logger.包名or类名=高的级别
例如:
log4j.logger.org.springframework=error

三、注意事项

1 public   void  execute() {
2   // ..
3  logger.debug( " aa " + " bb " + " cc " );
4 }

5


是否这么写过呢?这样写是有些问题的。当你把log级别调整到info或者更高的时候,log信息是不输出了
但是字符串的拼接一样进行了,使你的程序效率降低,实验一下

1 public   void  execute() {
2   // ..
3      logger.debug(getStr());
4 }

5 public  String getStr() {
6      System.out.println( " execute getStr " );
7 }

8


调整log4j属性文件级别到info 结果getStr()照样执行了
解决办法:

1 public   void  execute() {
2   // .
3      if (logger.isDebugEnabled()) {
4         logger.debug(getStr());
5     }

6 }

7
分享到:
评论

相关推荐

    android log4j资源上传

    - 在Android中使用log4j需要解决与Android SDK兼容性的问题,因为log4j依赖于Java的反射和线程API,而Android对这些API有所限制。 - 可以通过第三方库,如log4android或android-log4j,它们是专门为Android优化的...

    教你更简单的使用log4j日志

    ### 教你更简单的使用log4j日志 在日常的软件开发过程中,日志记录是必不可少的一个环节,它能够帮助我们追踪程序运行时的状态、定位问题所在,并且为后期维护...希望本文能够帮助你更好地理解和掌握Log4j的使用技巧。

    log4j优化文件 logging-log4j2-log4j-2.15.0-rc1.tar

    《深入理解Log4j2:基于logging-log4j2-log4j-2.15.0-rc1.tar的优化实践》 Log4j2是Java日志框架中的一个重要组件,它提供了高度...同时,理解和掌握Log4j2的配置与优化技巧,对于提升开发效率和维护质量至关重要。

    深入学习log4j.pdf

    本文将基于“深入学习log4j.pdf”的内容,详细解析Log4j配置文件的使用、数据库日志记录机制以及Log4j的封装技巧,以帮助读者更深入地理解并掌握Log4j的核心知识。 ### Log4j配置文件的学习 #### 配置文件格式 ...

    log4net调试配置

    在C#中使用log4net,可以提高代码的可维护性和可读性,尤其是在大型复杂项目中,良好的日志记录可以帮助我们快速定位和解决问题。 要开始使用log4net,你需要在项目中引用log4net库,并在配置文件(通常是app....

    Java实际开发中的小技巧汇总

    以上只是部分Java实际开发中的一些小技巧,具体的内容还需要参考博客文章"Java实际开发中的小技巧汇总"来获取更详尽的解释和实例。通过不断学习和实践这些技巧,Java开发者可以提升自己的专业水平,写出更高质量的...

    de.jayefem.log4e_free_1.3.1

    "Log4E" 可能是对 Apache Log4j 的致敬,Log4j 是一个广泛使用的Java日志框架,用于记录应用程序中的事件和错误信息。"Free" 可能表示这是一个免费或开源的版本。 标签 "mylvan" 似乎是一个个人或团队的标识,可能...

    AVR单片机ICCAVR应用的一些小技巧

    AVR单片机ICCAVR应用中有一些小技巧可以提高编程效率和代码可读性。下面将详细介绍这些小技巧。 1. 位操作 在AVR单片机中,对寄存器的位操作是非常常见的。例如,使用`PORTA = PORTA | 0x08`将 PORTA 的第三位置 1...

    ACM大赛一些技巧做题小技巧

    在准备ACM(国际大学生程序设计竞赛)的过程中,掌握一些做题技巧是非常重要的。以下是一些关键点: 1. **编程语言选择**:通常选择C语言来节省内存,因为它的语法简洁。但若需要使用C++库函数或STL,可以部分使用...

    Qualcomm平台开发如何抓取Log.

    在Qualcomm平台开发中,正确地抓取和分析Log是解决各种问题的关键之一。通过本文介绍的方法,开发者可以更有效地捕捉和利用Log信息,进而提高开发效率和产品质量。无论是初学者还是资深开发者,掌握这些Log抓取技巧...

    -电脑的如飞九个小技巧(批处理

    当遇到问题时,批处理可以用来收集系统日志,例如使用`type %windir%\system32\logfiles\sysmon.log`显示Sysmon日志。 8. **文件搜索与替换**: 在大量文本文件中查找和替换特定内容,使用`findstr`和`find`命令...

    精美log素材

    同时,还需要注意版权问题,如果使用他人设计的素材,应确保获得了适当的授权或购买了使用权,避免引发法律纠纷。 总结来说,"精美log素材"是设计领域的重要资源,它们可以帮助设计师高效地创作出吸引人的品牌标识...

    Sql Server实用操作小技巧集合(一).txt

    ### SQL Server 实用操作小技巧集合(一) #### 关键知识点概述 本文档将围绕给定文件中的几个关键操作技巧进行展开,主要包括:如何检查表的碎片化程度、如何优化索引、解决安装过程中遇到的问题以及如何查询 SQL...

    android抓log工具

    在Android开发过程中,日志(Log)是一种非常重要的调试工具,它可以帮助开发者追踪应用程序的运行状态,定位并解决出现的问题。本教程将详细介绍如何使用"android抓log工具",特别是结合Windows环境下的log文档生成...

    网上绝无仅有的Log分析教程及例子.zip

    1. **日志的使用**:如何在代码中插入Log语句,如`Log.v()`, `Log.d()`, `Log.i()`, `Log.w()`, `Log.e()` 和 `Log.wtf()`,以及如何使用`Log.println()`进行自定义级别的日志输出。 2. **日志过滤和查看**:使用`...

    【JavaScript源代码】JavaScript的一些小技巧分享.docx

    本文将深入探讨《JavaScript的一些小技巧分享》文档中提及的几个实用技巧,特别是关于数组操作的部分,这些技巧可以帮助开发者更高效地编写JavaScript代码。 #### 数组去重 数组去重是在实际开发中经常遇到的需求...

    log最佳实践

    7. **日志工具选择**:使用成熟的日志管理工具,如Log4j(Java)、logback、Python的logging库或ELK(Elasticsearch, Logstash, Kibana)堆栈,它们提供了丰富的功能和良好的可扩展性。 8. **日志监控与报警**:...

    40种网页常用小技巧

    10. **错误处理与日志记录**:设置统一的错误页面,并合理使用日志工具如Log4j,便于调试和问题定位。 11. **使用MVC模式**:如Spring MVC,分离视图、控制和模型,使代码结构清晰,易于维护。 12. **JSP中的EL...

    log处理

    在实际应用中,我们还需要关注日志的安全性和隐私保护。比如,日志可能包含敏感信息,需要进行脱敏处理,避免泄露用户数据。同时,日志的合规性也至关重要,特别是在金融、医疗等领域,需要遵循严格的法规标准。 ...

    Archive Log 学习笔记 --oracle 数据库

    Oracle数据库中的归档日志(Archive Log)是数据库在运行过程中产生的一种重要数据记录,它存储了数据库事务的完整历史,对于数据保护、故障恢复和多版本并发控制(MVCC)有着至关重要的作用。这篇学习笔记将深入...

Global site tag (gtag.js) - Google Analytics