【问题标题】:When exception occurs, logging specified message to console and logging its stack trace to log file发生异常时,将指定消息记录到控制台并将其堆栈跟踪记录到日志文件
【发布时间】:2019-01-15 16:01:19
【问题描述】:

在我的java代码中,当发生异常时,我想将我指定的消息打印到控制台,同时将其堆栈跟踪写入日志文件。我该怎么做?我想要做的就像跟随;

    try {
        //do something
    } catch (Exception e) {
        logger.error("Exception occured."); //print console "Exception occured
        logger.error("Exception occured", e); //write entire stack trace to log file
    }

【问题讨论】:

标签: java exception logging exception-handling


【解决方案1】:

您必须配置 2 个不同的附加程序:一个用于控制台输出,另一个用于日志文件输出。
slf4j 是一种抽象,而不是一种实现。所以它不提供特定的附加程序。

您可以使用 logback 或 log4j2 作为实现。这些提供了您正在寻找的附加程序:

LogBack appenders.

Log4J2 appenders

【讨论】:

  • 我明白你的意思,但在你回答之后,我编辑了我的问题以避免误解。可能,您的意思是在配置文件 xml 中指定多个附加程序,但对于代码级别,我没有明白您的意思。你能看看我编辑的问题@davidxxx 吗?
猜你喜欢
  • 1970-01-01
  • 2011-09-16
  • 2015-07-30
  • 1970-01-01
  • 2018-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多