Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 拦截正在使用Logger从另一个类生成的stderr?_Java_Logging - Fatal编程技术网

Java 拦截正在使用Logger从另一个类生成的stderr?

Java 拦截正在使用Logger从另一个类生成的stderr?,java,logging,Java,Logging,我有一个类生成错误输出,我想使用Logger输出。我对我是如何做到这一点有点困惑。我有这样的想法: public static void main(String[] args) throws Exception { ClassA foo = new ClassA(); Logger logger = Logger.getLogger(ClassA.class.getName()); FileHandler logFile = new FileHandler("LogToF

我有一个类生成错误输出,我想使用Logger输出。我对我是如何做到这一点有点困惑。我有这样的想法:

public static void main(String[] args) throws Exception {
    ClassA foo = new ClassA();
    Logger logger = Logger.getLogger(ClassA.class.getName());
    FileHandler logFile = new FileHandler("LogToFile2.txt");
    logFile.setFormatter(new SimpleFormatter());
    logger.addHandler(logFile);
    logger.info("A message logged to the file");
    foo.bar();
}

它输出“一条记录到文件中的消息”,但我从bar()收到的其余信息stderr没有被捕获。

我假设bar hass Logger.getLogger在其中调用。您应该在名为logging.properties的文件中设置整个日志应用程序

现在,您正在为CobolProgramService检索的记录器实例上执行此操作

因此,当您在foo.bar()中调用Logger.getLogger时,它将有一个标准设置


请查看有关该主题的更多高级信息。

对不起,我本打算删除此内容。所以我需要在另一个类中调用getLogger来执行?是的,如果您写入System.err,它将输出到stderr。记录器不会捕获stderr的输出。谢谢。我知道这不是最优的,但在保留控制台输出(即不只是重定向)的同时,是否仍然可以捕获stdErr