【发布时间】:2019-03-15 04:20:48
【问题描述】:
在使用 hikari 处理数据库连接的 Spring Boot 中,我想捕获 JDBCConnectionException 异常或任何其他休眠级别异常,以便在发生这种情况时生成通知。我配置了一个@ControllerAdvice,但似乎没有达到那个级别,但处理得更早。
@Order(Ordered.HIGHEST_PRECEDENCE)
@ControllerAdvice
public class ExceptionTranslator {
@ExceptionHandler(JDBCConnectionException.class)
public void handleJdbcConnectionException(JDBCConnectionException ex, HttpServletResponse response) throws IOException {
response.sendError(HttpStatus.INTERNAL_SERVER_ERROR.value(), ex.getMessage());
}
我正在使用 spring 数据存储库来访问 db。
WARN |PoolBase |2d33dd4e-46d6-11e9-9d35-2f44d962868c|conf-hikari-pool - Failed to validate connection ConnectionID:1 ClientConnectionId: 1f1135cd-94bf-4543-bfe8-687e10a40797 (The connection is closed.). Possibly consider using a shorter maxLifetime value.
WARN |PoolBase |2d33dd4e-46d6-11e9-9d35-2f44d962868c|conf-hikari-pool - Failed to validate connection ConnectionID:2 ClientConnectionId: 28890cd1-16ad-43f9-b240-a9ae3aa2d45f (The connection is closed.). Possibly consider using a shorter maxLifetime value.
WARN |SqlExceptionHelper |2d33dd4e-46d6-11e9-9d35-2f44d962868c|SQL Error: 0, SQLState: null
ERROR|SqlExceptionHelper |2d33dd4e-46d6-11e9-9d35-2f44d962868c|conf-hikari-pool - Connection is not available, request timed out after 6010ms.
ERROR|SqlExceptionHelper |2d33dd4e-46d6-11e9-9d35-2f44d962868c|The connection is closed.
【问题讨论】:
-
嗨@GhostCat 我不太确定,如何为此提供更多详细信息。我可以给出我的异常处理程序的代码 sn-p 但它不会对 IMO 有任何帮助。
-
@aravindaM 仅通过查看日志很难理解问题。发布代码肯定会有所帮助
标签: java spring-boot spring-data-jpa spring-data hikaricp