有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

我有一个类生成错误输出,我想使用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没有被捕获


共 (1) 个答案

  1. # 1 楼答案

    我猜是bar hass Logger。getLogger调用它。您应该在一个名为logging的文件中设置整个日志应用程序。财产

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

    所以当你打电话给Logger的时候。在foo的getLogger。bar()它将采用标准设置

    查看http://www.crazysquirrel.com/computing/java/logging.jspx了解有关该主题的更多高级信息