如何记录 sql 异常?
How to log a sql exception?
我正在尝试以下面的方式记录堆栈跟踪,它工作正常,但我想弄清楚是否还有其他有效的方法来记录异常?
catch (SQLException e) {
LOG.error(
"Sql Exception: "
+ e.getStackTrace()[1].getClassName() + "."
+ e.getStackTrace()[1].getMethodName(), e);
throw e;
是:
LOG.error("Sql Exception", e);
注意第二个参数e
。当 Exception/Throwable 像这样传入时,记录器会包含堆栈跟踪。无需手动(笨拙地)使用 e.getStackTrace()
。
您不需要在代码中使用 + e.getStackTrace()[1].getClassName() + "." + e.getStackTrace()[1].getMethodName()
,此信息由记录器本身使用异常堆栈跟踪生成。
我正在尝试以下面的方式记录堆栈跟踪,它工作正常,但我想弄清楚是否还有其他有效的方法来记录异常?
catch (SQLException e) {
LOG.error(
"Sql Exception: "
+ e.getStackTrace()[1].getClassName() + "."
+ e.getStackTrace()[1].getMethodName(), e);
throw e;
是:
LOG.error("Sql Exception", e);
注意第二个参数e
。当 Exception/Throwable 像这样传入时,记录器会包含堆栈跟踪。无需手动(笨拙地)使用 e.getStackTrace()
。
您不需要在代码中使用 + e.getStackTrace()[1].getClassName() + "." + e.getStackTrace()[1].getMethodName()
,此信息由记录器本身使用异常堆栈跟踪生成。