我有一个生成错误输出的类,我想使用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()接收到的其余INFO stderr。
最佳答案
我假设bar中有Logger.getLogger调用。您应该在一个名为logging.properties的文件中设置整个日志应用程序。
现在,您正在为CobolProgramService检索的Logger实例上执行此操作。
因此,当您在foo.bar()中调用Logger.getLogger时,它将具有标准设置。
请查看http://www.crazysquirrel.com/computing/java/logging.jspx,以获取有关该主题的更多高级信息。
关于java - 拦截使用Logger从另一个类生成的stderr吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6447813/