style: remove all emojis from source code as per user rule

This commit is contained in:
jade
2026-07-13 16:15:17 +09:00
parent fc1e8489cd
commit 7e591e8421
23 changed files with 92 additions and 58 deletions

View File

@@ -55,7 +55,7 @@ public class ExternalApiConnector {
Object payload = isFixedLength ? payloadBuilder.buildFixedLengthString(spec, data) : data;
String contentType = isFixedLength ? "application/x-www-form-urlencoded;charset=EUC-KR" : "application/json";
log.info("🌐 외부 API 호출 [{}] 시작 (FixedLength: {})", apiName, isFixedLength);
log.info(" 외부 API 호출 [{}] 시작 (FixedLength: {})", apiName, isFixedLength);
return restClient.post()
.uri(endpoint)

View File

@@ -37,7 +37,7 @@ public class LegacyDbConnector {
@RateLimiter(name = "legacyDb", fallbackMethod = "fallbackForDb")
@CircuitBreaker(name = "legacyDb", fallbackMethod = "fallbackForDb")
public List<Map<String, Object>> executeDynamicQuery(String queryId, String sql, Map<String, Object> params) {
log.info("🗄 Legacy DB 조회 시작 [QueryID: {}]", queryId);
log.info(" Legacy DB 조회 시작 [QueryID: {}]", queryId);
// 1. SQL 쿼리 실행 (오라클 등)
List<Map<String, Object>> rawResults = jdbcTemplate.queryForList(sql, params);

View File

@@ -32,7 +32,7 @@ public class ThirdPartySecurityConnector {
* 3rd Party 보안 모듈(DRM, BM 등)과 연동하기 위한 전용 메서드입니다.
*/
public String executeSecurityModule(String interfaceId, Map<String, Object> data) throws Exception {
log.info("🔐 [3rd Party Security] 보안 모듈 연동 시작 - Interface: {}", interfaceId);
log.info(" [3rd Party Security] 보안 모듈 연동 시작 - Interface: {}", interfaceId);
// 보안 모듈 통신을 위한 특수 페이로드 조립 (예시)
// 실제로는 RestClient나 WebClient를 통해 보안 VM의 전용 엔드포인트로 호출합니다.
@@ -49,7 +49,7 @@ public class ThirdPartySecurityConnector {
"data", data != null ? data : Map.of()
));
} else if (interfaceId.startsWith("BM_")) {
log.info("👆 [BM 처리] 바이오 인증 모듈과 통신 중...");
log.info(" [BM 처리] 바이오 인증 모듈과 통신 중...");
resultJson = jsonMapper.writeValueAsString(Map.of(
"status", "SUCCESS",
"module", "Bio-Metric",

View File

@@ -35,7 +35,7 @@ public class EaiEimsSender implements EimsSender {
// 실전 코드: 스프링이 제공하는 카프카 템플릿 주입
private final KafkaTemplate<String, String> kafkaTemplate;
// 🎫 비동기 티켓 매니저
// 비동기 티켓 매니저
private final TicketManager ticketManager;
@Override
@@ -47,12 +47,12 @@ public class EaiEimsSender implements EimsSender {
String xmlData = xmlMapper.writeValueAsString(jsonNode);
String esbStandardXml = wrapWithEaiHeader(interfaceId, xmlData);
log.info("📦 [EAI 어댑터] Kafka 토픽(eai-topic)으로 전송 시도...");
log.info(" [EAI 어댑터] Kafka 토픽(eai-topic)으로 전송 시도...");
try {
// 실전 코드 적용: Kafka로 메시지 발행
kafkaTemplate.send("eai-topic", esbStandardXml);
log.info("📦 [EAI 어댑터] Kafka 전송 완료!");
log.info(" [EAI 어댑터] Kafka 전송 완료!");
} catch (Exception e) {
// 로컬 환경에는 카프카가 없으므로 에러가 날 수 있습니다. 테스트를 위해 로깅만 하고 넘깁니다.
log.warn(" 로컬 환경이거나 Ka<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n" +
@@ -82,7 +82,7 @@ public class EaiEimsSender implements EimsSender {
} finally {
stopWatch.stop();
log.info("📊 [SLA 모니터링 - EAI] 소요시간: {} ms", stopWatch.getTotalTimeMillis());
log.info(" [SLA 모니터링 - EAI] 소요시간: {} ms", stopWatch.getTotalTimeMillis());
}
}

View File

@@ -44,7 +44,7 @@ public class HttpEimsSender implements EimsSender {
@Override
public String send(String interfaceId, String payload) {
log.info("🌐 [HTTP 모드] EIMS API 호출 중... URL: {}", eimsUrl);
log.info(" [HTTP 모드] EIMS API 호출 중... URL: {}", eimsUrl);
// EIMS가 요구하는 JSON 포맷으로 래핑해서 전송 (EIMS 규격에 따라 수정 가능)
Map<String, String> requestBody = Map.of(
@@ -52,7 +52,7 @@ public class HttpEimsSender implements EimsSender {
"data", payload
);
// 📊 4번 항목 적용: MDC에 저장된 traceId를 추출하여 HTTP Header(X-Trace-Id)로 전파
// 4번 항목 적용: MDC에 저장된 traceId를 추출하여 HTTP Header(X-Trace-Id)로 전파
String traceId = MDC.get("traceId");
if (traceId == null) traceId = "SYSTEM-GENERATED-" + UUID.randomUUID().toString();

View File

@@ -37,7 +37,7 @@ public class JspFormEimsSender implements EimsSender {
@Override
public String send(String interfaceId, String payload) {
log.info("🌐 [JSP Form 모드] 레거시 폼 데이터 전송 중... URL: {}", jspUrl);
log.info(" [JSP Form 모드] 레거시 폼 데이터 전송 중... URL: {}", jspUrl);
// 1. Form Data 조립 (HTML <form> 태그 전송과 동일한 효과)
MultiValueMap<String, String> formData = new LinkedMultiValueMap<>();

View File

@@ -37,7 +37,7 @@ public class JspJsonEimsSender implements EimsSender {
@Override
public String send(String interfaceId, String payload) {
log.info("🌐 [JSP JSON 모드] JSON 페이로드 전송 중... URL: {}", jspUrl);
log.info(" [JSP JSON 모드] JSON 페이로드 전송 중... URL: {}", jspUrl);
// 1. JSON 객체로 조립 (스프링이 알아서 JSON String으로 변환해 줌)
Map<String, String> jsonBody = Map.of(

View File

@@ -49,7 +49,7 @@ public class MciEimsSender implements EimsSender {
String xmlData = xmlMapper.writer().withRootName("Body").writeValueAsString(jsonNode);
String esbStandardXml = wrapWithEsbHeader(interfaceId, xmlData);
log.info("🌐 [ESB 어댑터] 전송 준비 완료 - RestClient 호출 시작");
log.info(" [ESB 어댑터] 전송 준비 완료 - RestClient 호출 시작");
String responseXml = restClient.post()
.uri(mciUrl)
@@ -58,14 +58,14 @@ public class MciEimsSender implements EimsSender {
.retrieve()
.body(String.class);
log.info("🌐 [ESB 어댑터] 응답 수신 완료: {}", responseXml);
log.info(" [ESB 어댑터] 응답 수신 완료: {}", responseXml);
JsonNode responseNode = xmlMapper.readTree(responseXml);
return jsonMapper.writeValueAsString(responseNode);
} finally {
stopWatch.stop();
log.info("📊 [SLA 모니터링 - MCI] 소요시간: {} ms", stopWatch.getTotalTimeMillis());
log.info(" [SLA 모니터링 - MCI] 소요시간: {} ms", stopWatch.getTotalTimeMillis());
}
}

View File

@@ -38,7 +38,7 @@ public class MciStringEimsSender implements EimsSender {
StopWatch stopWatch = new StopWatch(); stopWatch.start();
try {
log.info("🌐 [ESB 어댑터(String)] 전송 준비 완료 - RestClient 호출 시작 (Interface: {})", interfaceId);
log.info(" [ESB 어댑터(String)] 전송 준비 완료 - RestClient 호출 시작 (Interface: {})", interfaceId);
String response = restClient.post()
.uri(mciUrl)
@@ -47,12 +47,12 @@ public class MciStringEimsSender implements EimsSender {
.retrieve()
.body(String.class);
log.info("🌐 [ESB 어댑터(String)] 응답 수신 완료: {}", response);
log.info(" [ESB 어댑터(String)] 응답 수신 완료: {}", response);
return response != null ? response : "";
} finally {
stopWatch.stop();
log.info("📊 [SLA 모니터링 - MCI(String)] 소요시간: {} ms", stopWatch.getTotalTimeMillis());
log.info(" [SLA 모니터링 - MCI(String)] 소요시간: {} ms", stopWatch.getTotalTimeMillis());
}
}
}

View File

@@ -39,7 +39,7 @@ public class TcpEimsSender implements EimsSender {
@Override
public String send(String interfaceId, String payload) throws Exception {
log.info("🔌 [TCP 소켓 모드] EIMS 접속 중... {}:{}", host, port);
log.info(" [TCP 소켓 모드] EIMS 접속 중... {}:{}", host, port);
// TCP 소켓 자원을 사용 후 안전하게 닫아주는 try-with-resources 구문
try (Socket socket = new Socket()) {

View File

@@ -42,25 +42,25 @@ public class MciTemplate {
* @throws MciCommunicationException 통신 또는 파싱 실패 시 예외 발생
*/
public <T, R> R call(String interfaceId, T requestDto, Class<R> responseType) {
log.info("📞 [MciTemplate] 시작 - Interface ID: {}", interfaceId);
log.info(" [MciTemplate] 시작 - Interface ID: {}", interfaceId);
try {
String payload = objectMapper.writeValueAsString(requestDto);
log.debug("📤 [MciTemplate] 전송 페이로드: {}", payload);
log.debug(" [MciTemplate] 전송 페이로드: {}", payload);
String responseJson = httpEimsSender.send(interfaceId, payload);
log.debug("📥 [MciTemplate] 수신 응답 JSON: {}", responseJson);
log.debug(" [MciTemplate] 수신 응답 JSON: {}", responseJson);
R response = objectMapper.readValue(responseJson, responseType);
log.info(" [MciTemplate] 완료 - Interface ID: {}", interfaceId);
log.info(" [MciTemplate] 완료 - Interface ID: {}", interfaceId);
return response;
} catch (JsonProcessingException e) {
log.error(" [MciTemplate] JSON 변환 중 오류 발생", e);
log.error(" [MciTemplate] JSON 변환 중 오류 발생", e);
throw new MciCommunicationException("MCI 통신 중 JSON 파싱 오류", e);
} catch (Exception e) {
log.error(" [MciTemplate] 통신 중 오류 발생", e);
log.error(" [MciTemplate] 통신 중 오류 발생", e);
throw new MciCommunicationException("MCI 통신 실패", e);
}
}

View File

@@ -47,7 +47,7 @@ public class TicketManager {
ticketStore.put(ticketId, ticket);
log.info("🎫 [TicketManager] 비동기 작업 티켓 발급 완료: {}", ticketId);
log.info(" [TicketManager] 비동기 작업 티켓 발급 완료: {}", ticketId);
// 10초 뒤에 자동으로 작업을 완료 상태로 변경하는 백그라운드 시뮬레이터 실행
simulateEaiProcessing(ticketId, interfaceId);
@@ -74,7 +74,7 @@ public class TicketManager {
// 가짜 최종 결과 데이터 주입
ticket.setResultData("{\"resultCode\":\"0000\", \"interfaceId\":\"" + interfaceId + "\", \"processedRecords\":50000}");
ticketStore.put(ticketId, ticket);
log.info("🏁 [TicketManager] EAI 비동기 작업 시뮬레이션 완료! (Ticket: {})", ticketId);
log.info(" [TicketManager] EAI 비동기 작업 시뮬레이션 완료! (Ticket: {})", ticketId);
}
}, 10, TimeUnit.SECONDS); // 10초 지연
}

View File

@@ -60,9 +60,9 @@ public class ToolSlaMonitoringAspect {
// SLA 기준을 초과하면 (예: 2초 이상) 경고 로깅 처리 가능
if (timeMillis > 2000) {
log.warn("🚨 [SLA 경고] Tool: {} | 소요시간: {}ms | 상태: SLOW_RESPONSE", finalName, timeMillis);
log.warn(" [SLA 경고] Tool: {} | 소요시간: {}ms | 상태: SLOW_RESPONSE", finalName, timeMillis);
} else {
log.info("📊 [SLA 추적] Tool: {} | 소요시간: {}ms | 상태: SUCCESS", finalName, timeMillis);
log.info(" [SLA 추적] Tool: {} | 소요시간: {}ms | 상태: SUCCESS", finalName, timeMillis);
}
return result;
@@ -74,7 +74,7 @@ public class ToolSlaMonitoringAspect {
long timeMillis = stopWatch.getTotalTimeMillis();
// 에러 발생 시 명확하게 실패 로그 기록
log.error("💥 [SLA 장애] Tool: {} | 소요시간: {}ms | 상태: FAILED | 사유: {}", finalName, timeMillis, e.getMessage());
log.error(" [SLA 장애] Tool: {} | 소요시간: {}ms | 상태: FAILED | 사유: {}", finalName, timeMillis, e.getMessage());
// 원래 흐름대로 예외를 던져서 게이트웨이나 상위 로직이 에러를 처리하게 함
throw e;

View File

@@ -27,9 +27,9 @@ public class SampleMciMapperTest {
SampleMciReqDto mciDto = sampleMciMapper.toMciReq(aiDto);
// then: 콘솔에 결과 출력 및 값 검증
System.out.println("====== 🚀 MapStruct 변환 테스트 결과 🚀 ======");
System.out.println(" [변환 전] AI DTO : " + aiDto);
System.out.println(" [변환 후] MCI DTO: " + mciDto);
System.out.println("====== MapStruct 변환 테스트 결과 ======");
System.out.println(" [변환 전] AI DTO : " + aiDto);
System.out.println(" [변환 후] MCI DTO: " + mciDto);
System.out.println("===============================================");
assertNotNull(mciDto, "변환된 객체는 null이 아니어야 합니다.");