From f730c73ceb7746fdd4e961a3e7b1dd190ab1ce9d Mon Sep 17 00:00:00 2001 From: devmrko Date: Thu, 23 Jul 2026 10:38:02 +0900 Subject: [PATCH] refs #703: log schema metadata lookup failures --- .../vpdbackoffice/web/SchemaMetadataController.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/cloudhandson/vpdbackoffice/web/SchemaMetadataController.java b/src/main/java/com/cloudhandson/vpdbackoffice/web/SchemaMetadataController.java index 2c518e5..fae93a8 100644 --- a/src/main/java/com/cloudhandson/vpdbackoffice/web/SchemaMetadataController.java +++ b/src/main/java/com/cloudhandson/vpdbackoffice/web/SchemaMetadataController.java @@ -3,6 +3,8 @@ package com.cloudhandson.vpdbackoffice.web; import com.cloudhandson.vpdbackoffice.service.AppException; import com.cloudhandson.vpdbackoffice.service.SchemaMetadataService; import org.springframework.dao.DataAccessException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; @@ -13,6 +15,8 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes; @Controller public class SchemaMetadataController { + private static final Logger log = LoggerFactory.getLogger(SchemaMetadataController.class); + private final SchemaMetadataService schemaMetadataService; public SchemaMetadataController(SchemaMetadataService schemaMetadataService) { @@ -27,7 +31,8 @@ public class SchemaMetadataController { try { model.addAttribute("metadata", schemaMetadataService.find(selectedKey)); } catch (AppException | DataAccessException exception) { - model.addAttribute("errorMessage", safeMessage(exception)); + log.warn("Schema metadata lookup failed for table key={}", selectedKey, exception); + model.addAttribute("errorMessage", readMessage(exception)); } return "schema-metadata"; } @@ -105,4 +110,10 @@ public class SchemaMetadataController { ? exception.getMessage() : "DB 메타데이터를 저장하지 못했습니다. 권한, 식별자, Oracle annotation 문법을 확인하세요."; } + + private String readMessage(Exception exception) { + return exception instanceof AppException + ? exception.getMessage() + : "DB 메타데이터를 조회하지 못했습니다. SGMP_POC 조회 권한과 대상 테이블 상태를 확인하세요."; + } }