重定向的System.out / System.err的到log4j的一些瓶子只

在我们的产品,我们使用了一些外部库。 我们做我们的记录与log4j的,和大多数图书馆也这样做,所以我们得到的大部分信息在我们的appender罚款。

但也有,只是使用System.out和System.err的几个库。 所以我在寻找一种方式来重定向的System.out和System.err我们的log4j附加目的地只有一个特定的罐子 ,使用log4j的其他库应该不会受到影响,而那些有时打印到System.out和System.err太,这些消息还是应该去那里。

这在某种程度上可能吗?

--------------解决方案-------------

假设 - 没试过

  • 创建自定义日志级别。 等级应该是波纹管Level.ALL的
  • 覆盖STD打印流,以你自己的流。 执行控制台和日志文件的输出与您的自定义级别
  • 创建新的类别,你需要的软件包,并设置其日志记录级别为您的自定义日志记录级别

有用的示例代码

http://blogs.oracle.com/nickstephen/entry/java_redirecting_system_out_and

log4j的stdout重定向到DailyRollingFileAppender

不知道如果你能得到的输出流Log4j追加,但如果你只是想将它发送到一个日志文件,你可以直接到的System.out如下文件:

File file = new File("my.log");
PrintStream printStream = new PrintStream(new FilleOutputStream(file));
System.setOut(printStream);

你可以做同样的System.err的

我喜欢Faheem的第一个环节,它的解决方案,以滚动文件。

分类:java的 时间:2012-01-01 人气:3
本文关键词: 日志记录,JAVA,log4j的
分享到:

相关文章

  • 使用SL4J记录,雅加达共享日志记录,log4j的第三方库和我自己的代码 2014-12-10

    我有记录,更具体地约设置它并确保它的工作原理的一些问题. 我做的这个项目将使用检票,Spring和Hibernate. 我知道,检票和Hibernate使用简单记录门面的Java(SL4J)和春季使用来自Apache共享日志记录组件. 他们会和谐并存? 我以为我会使用log4j的共同既SL4J和来自Apache的公共记录组件,你认为这是一个好主意? 我可以设置所有这些输出记录数据到一个共同文件? 或者我应该使用单独的文件? 或者我应该存储在数据库中的日志消息? (我宁愿不要,因为我觉得grepp

  • 我该如何关闭日志记录使用log4j的? 2012-08-28

    我使用的是其具有的log4j.xml配置的第三方库 - 什么是关闭日志功能最好的方法是什么? --------------解决方案------------- 我认为这是需要的所有是设置阈值参数设置为OFF <log4j:configuration threshold="OFF"> <root> <priority value ="off" /> <appender-ref ref="console" /&

  • 禁用日志记录的log4j的碧玉报告 2013-01-11

    我创建了一个Java应用程序,其中一个报告是要生成. 该报告是iReports 3.7.5进行. 问题是,我的应用程序使用log4j记录错误,甚至报告使用log4j的记录它的错误,似乎有某种两者之间的冲突. 我试图改变的jar文件但没有成功. 我包含在另一个项目中不使用log4j的报告,正在生成的报告的罚款. 任何帮助,将不胜感激. 我得到的错误是 com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in

  • 从使用Axis2和Netbeans 7 web服务的服务器应用程序日志记录到log4j的日志文件 2014-11-18

    我是新来web服务的发展. 我使用NetBeans 7.0 Axis2的插件和Tomcat 7. 我有一个服务器应用程序,它只是一堆Web方法没有UI或任何东西,我创造了它在http://netbeans.org/kb/69/websvc/gs-axis.html教程几乎以下. 我用的是Axis2的插件部署到Tomcat. 所以,当我建立了我的服务器应用程序,没有main方法或任何东西. 通常情况下,如果我要登录到一个log4j的日志文件,我把这样的事情在我的主要方法来定义的log4j的配置文件

  • Java记录VS Log4J的 2012-01-14

    是否仍然值得log4j的库添加到Java 5的项目只是为了记录让我们说一些例外的文件有一些很好的过渡设置. 或将标准util.logging工厂做的工作呢? 你怎么看? --------------解决方案------------- 我说你可能罚款util.logging为你描述的需求. 对于一个好的决策树,看看Log4j的VS的java.util.logging 问题一:你预计需要任何Log4j的具有JUL不具备聪明的处理程序,如SMTPHandler,NTEventLogHandler,或任

  • 在WebLogic 9/10使用log4j的日志记录 2012-08-23

    在WebLogic我可以在控制台上配置的SERVERLOG使用的默认JDK日志的log4j代替. 然而,SERVERLOG不使用一个log4j.properties文件,但似乎使用的配置config.xml中即使log4j.properties文件在类路径中,我设置这些属性: set JAVA_OPTIONS=%JAVA_OPTIONS% -Dlog4j.configuration=file:<path>/log4j.properties set JAVA_OPTIONS=%JAVA_OPTI

  • 如何禁用Java代码log4j的日志记录 2014-03-18

    我使用log4j的使用日志写入一个遗留库. 我默认的log4j.properties文件指示日志到控制台,但在我的主要程序的某些特定的功能,我想禁用(所有类)共记录. 我尝试这样做: Logger.getLogger(BasicImplementation.class.getName()).setLevel(Level.OFF); 其中"BasicImplementation"是,它记录了主要的类之一,但它没有工作 - 日志仍然写入控制台. 这里是我的log4j.properties:

  • Java日志VS的Log4j的Spring框架。 哪一个是最适合的 2012-07-22

    我们正在开发使用Spring框架在Java中基于Web的应用程序. 我们想知道它的日志系统将是最适合的,无论是Log4j的或JUL(java.util.logging中),它集成了JDK. 就我而言,前者是在开发人员更受欢迎,并提供更高的定制选项,但我不知道这是简单的弹簧相适应. 任何帮助将不胜感激. 谢谢! --------------解决方案------------- 在开始使用log4j的,看的logback. Log4j的,不应再用于新的项目. 如果您有需要的任何日志框架遗留代码,使用S

  • Java的日志记录级别的困惑 2012-12-04

    我设置日志记录级别配置,但没有看到写在CONFIG级别的消息. 我很想念? 组态: Logger logger = java.util.logging.Logger.getLogger("xxx"); logger.setLevel(java.util.logging.Level.CONFIG); 测试: logger.log(java.util.logging.Level.SEVERE, "severe"); logger.log(java.util.loggin

  • 如何禁用类的使用log4j的调试日志记录? 2013-02-26

    在我的log4j.xml,我有 <logger name="java.sql"> <level value="DEBUG" /> </logger> 但是使用这一点,还可以使记录为接口Resultset . 如果我想禁用日志记录这个接口,但仍希望有调试日志记录statement preparedstatement ,等...我怎样才能做到这一点? --------------解决方案------------- Log4j的不支持对

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 2.393 (s). 10 q(s)