java - 堆栈跟踪在日志文件中的一行上打印所有内容 (Java)

标签 java logging stack trace slf4j

我有一个程序,它创建一个日志文件,并输出抛出的异常的堆栈跟踪。但是,堆栈跟踪仅打印在一行上。关于如何分解它,而不手动捕获异常并逐行分解它的任何想法?或者这就是 slf4j 记录到文本文件的方式?

日志文件

07-25-2013 11:11:27 [loggerError] - ERROR - [EXCEPTION] java.sql.SQLException, 
[STACK TRACE] [com.***.********.******.************.<init>(************.java:195), ***.***.*******.****.***********.main(***********.java:210)]

日志记录代码

 loggerError.error("[EXCEPTION] {}, \n[STACK TRACE] {}", e, e.getStackTrace());

使用 myEclipse,使用 slf4j 进行日志记录 任何帮助将不胜感激

最佳答案

您可以使用Java's Logger .

使用 Logger,这应该可以解决问题:

Logger = logger = Logger.getLogger(<YourClass>);
logger.log(Level.SEVERE, <your message>, e);

如果您想以困难的方式做到这一点,您应该记住 getStackTrace() returns an array ,所以你必须处理它。

关于java - 堆栈跟踪在日志文件中的一行上打印所有内容 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17863531/

相关文章:

java - Ajax post调用应该返回到html页面

java - Hibernate和图形设计,该走哪条路?

java - 您可以覆盖 log.properties 中特定日志的格式化程序吗

c - 在 C 中,结构数组是否在堆栈中分配?

将 double 的堆栈结构转换为类型 void*

java - 为cloudera中的oozie作业配置JAVA_HOME?

java - Java中的集合-更好的编程实践

javascript - 获取新对象的对象变量名

C++ 同时记录到控制台和日志文件

java - 构造函数中的 this 引用