From 0fa08b51c309a23fc0e0dc711616d04ab8d6e789 Mon Sep 17 00:00:00 2001 From: Youn Chan Hyeok Date: Thu, 7 May 2026 19:19:27 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20@JsonIgnore=20=EB=88=84=EB=9D=BD=20?= =?UTF-8?q?=EC=88=98=EC=A0=95=20=EB=B0=8F=20CLAUDE.md=20=ED=8C=A8=ED=82=A4?= =?UTF-8?q?=EC=A7=80=20=EA=B5=AC=EC=A1=B0=20=EA=B0=B1=EC=8B=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - TicketActionLog, TicketMetricSnapshot의 ticket 필드에 @JsonIgnore 추가 - CLAUDE.md 패키지 구조를 실제 코드와 일치하도록 수정 Co-Authored-By: Claude Sonnet 4.6 --- CLAUDE.md | 14 ++++++++++---- .../java/com/dgu/cap/ticket/TicketActionLog.java | 2 ++ .../com/dgu/cap/ticket/TicketMetricSnapshot.java | 2 ++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 5f8ae5b..d437865 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -81,18 +81,24 @@ com.dgu.cap │ └── SseController.java # GET /api/stream ├── metric/ │ ├── PrometheusService.java # Prometheus HTTP API 연동 -│ └── MetricController.java +│ ├── MetricController.java +│ ├── MetricPoint.java # 시계열 데이터 포인트 +│ └── CurrentMetric.java ├── log/ │ ├── LokiService.java # Loki HTTP API 연동 │ └── LogController.java ├── kubernetes/ │ ├── KubernetesService.java # K8s Java Client 연동 -│ └── PodController.java +│ ├── PodController.java +│ ├── PodInfo.java +│ └── PodEvent.java └── ai/ ├── AiService.java # FastAPI POST /analyze + fallback - ├── PodData.java # AI 요청 DTO + ├── MetricsCollectionScheduler.java # 60초 스케줄러 — 전체 Pod 메트릭 수집 후 AI 전송 + ├── PodData.java # AI /analyze 요청 DTO ├── AiResult.java # AI 응답 DTO - └── MetricPoint.java # 시계열 데이터 포인트 + ├── MetricsData.java # 메트릭 시계열 묶음 DTO + └── MetricsSendRequest.java # AI /metrics 요청 DTO ``` ## 아키텍처 diff --git a/src/main/java/com/dgu/cap/ticket/TicketActionLog.java b/src/main/java/com/dgu/cap/ticket/TicketActionLog.java index 8d436fb..9f313af 100644 --- a/src/main/java/com/dgu/cap/ticket/TicketActionLog.java +++ b/src/main/java/com/dgu/cap/ticket/TicketActionLog.java @@ -1,5 +1,6 @@ package com.dgu.cap.ticket; +import com.fasterxml.jackson.annotation.JsonIgnore; import jakarta.persistence.*; import lombok.*; import org.hibernate.annotations.CreationTimestamp; @@ -18,6 +19,7 @@ public class TicketActionLog { @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; + @JsonIgnore @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "ticket_id") private Ticket ticket; diff --git a/src/main/java/com/dgu/cap/ticket/TicketMetricSnapshot.java b/src/main/java/com/dgu/cap/ticket/TicketMetricSnapshot.java index 4f8fec9..d6033ac 100644 --- a/src/main/java/com/dgu/cap/ticket/TicketMetricSnapshot.java +++ b/src/main/java/com/dgu/cap/ticket/TicketMetricSnapshot.java @@ -1,5 +1,6 @@ package com.dgu.cap.ticket; +import com.fasterxml.jackson.annotation.JsonIgnore; import jakarta.persistence.*; import lombok.*; @@ -18,6 +19,7 @@ public class TicketMetricSnapshot { @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; + @JsonIgnore @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "ticket_id") private Ticket ticket;