繁体   English   中英

日志控制台输出到日志文件Java记录器

[英]Log console output to a log file Java logger

我正在尝试使用Java Logger类将所有控制台输出写入日志文件。

public static Logger logger = Logger.getLogger("Log");  
public static FileHandler fh; 
public static ConsoleHandler handler = new ConsoleHandler();
public static DateFormat dateFormat = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss");
public static Calendar cal = Calendar.getInstance();

/**
 * Launch the application.
 * @param args
 * @throws IOException
 */

/* -- START MAIN -- */
public static void main(String[] args) throws IOException {
    Settings.settingsRead();

    try {  
        // This block configure the logger with handler and formatter  
        fh = new FileHandler("logs/hudedit_log_" + dateFormat.format(cal.getTime()) + ".log");  
        logger.setLevel(Level.ALL);
        handler.setFormatter(new SimpleFormatter());
        logger.addHandler(handler);
        logger.info("hello world");
        logger.addHandler(fh);
        SimpleFormatter formatter = new SimpleFormatter();  
        fh.setFormatter(formatter);  

        logger.info("Test");  

    } catch (SecurityException e) {  
        e.printStackTrace();  
    } catch (IOException e) {  
        e.printStackTrace();  
    } 

我如何做到这一点,以便它可以将已输出到控制台的所有内容都有效地写入文件,而不是将logger.info(“无论我要输出的内容”)放在哪里; 到处?

我认为您应该使用Log4j。

http://logging.apache.org/log4j/2.x/

此例程非常复杂。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM