예측을 위한 구조화된 로그
입력, 출력, 지연 시간을 JSON으로 기록하세요.
예측을 위한 구조화된 로그은(는) CoddyKit의 무료 MLOps Academy 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 MLOps Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. MLOps Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
예측을 기록하는 이유
모델이 실제 사용자에게 서비스를 제공하기 시작하면 직접 지켜볼 수 없습니다. 모든 예측을 기록해야 실제 운영 환경에서 모델이 어떻게 작동하는지 확인할 수 있습니다. 📊
일반 텍스트는 불편합니다
"요청을 받고 0.91을 반환함"과 같은 로그 한 줄은 사람이 읽기에는 괜찮지만, 대규모 환경에서 검색하기에는 매우 불편합니다. 머신에는 문장이 아니라 구조가 필요합니다.
구조화된 기록
구조화된 기록은 각 로그 줄을 문장이 아닌 이름이 지정된 필드로 이루어진 작은 객체로 만드는 것입니다. 그러면 도구가 로그를 즉시 필터링하고 그룹화하며 집계할 수 있습니다.
형식은 JSON
일반적으로 한 줄마다 하나의 JSON 객체를 사용합니다. 모든 필드에 키가 있으므로 로그 시스템이 매번 같은 방식으로 이를 분석할 수 있습니다.
{"event": "prediction", "model": "churn-v3", "score": 0.91}예측마다 기록할 항목
각 호출에 대해 입력, 출력, 그리고 처리에 걸린 시간을 기록합니다. 이 정보들을 함께 사용하면 나중에 문제를 디버깅하고 감사하며 품질을 측정할 수 있습니다.
지연 시간 기록하기
항상 지연 시간을 밀리초 단위로 기록합니다. 지연 시간은 모델이나 서버가 성능 저하를 겪기 시작했다는 것을 가장 먼저 알려 주는 신호입니다.
import time
start = time.perf_counter()
score = model.predict(x)
latency_ms = (time.perf_counter() - start) * 1000추적을 위한 ID 추가하기
모든 요청에 고유한 request_id를 부여합니다. 나중에 로그와 대시보드, 최종적인 실제 결과에서 하나의 예측을 계속 추적할 수 있습니다.
import uuid
request_id = str(uuid.uuid4())로그 레코드 만들기
필드를 하나의 딕셔너리에 모읍니다. 이 하나의 레코드가 로그에서 검색 가능한 JSON 한 줄이 됩니다.
record = {
"request_id": request_id,
"model": "churn-v3",
"score": score,
"latency_ms": latency_ms,
}로거로 JSON 출력하기
Python에 내장된 logging 모듈을 사용하고 레코드를 JSON으로 출력합니다. 수준과 타임스탬프를 건너뛰는 print는 절대 사용하지 마십시오.
import json, logging
log = logging.getLogger("predictions")
log.info(json.dumps(record))원본 비밀 정보는 절대 기록하지 않기
무엇을 기록하는지 주의해야 합니다. 비밀번호와 토큰, 원본 PII는 제외하거나 민감한 필드를 로그에 기록하기 전에 해시 처리하십시오. 🔒
로그를 중앙으로 보내기
서버 하나에만 있는 로그는 서버가 다시 시작되면 사라집니다. 로그를 Loki나 CloudWatch 같은 중앙 저장소로 전달하여 특정 컨테이너가 사라져도 보존되도록 하십시오.
빠른 확인
대규모 환경에서 검색하고 집계할 수 있는 예측 로그가 필요합니다. 어떤 형식이 가장 적합할까요?
복습
모든 예측을 입력, 출력, 지연 시간, ID가 포함된 구조화된 JSON 레코드로 기록한 다음 중앙 저장소로 보냈습니다. 이것이 운영 환경을 확인하는 눈이 됩니다. ✅
자주 묻는 질문
“예측을 위한 구조화된 로그” 강의는 무료인가요?
네 — “예측을 위한 구조화된 로그” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 MLOps Academy 강의 전체를 잠금 해제할 수 있습니다. MLOps Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“예측을 위한 구조화된 로그”에서 뭘 배우나요?
입력, 출력, 지연 시간을 JSON으로 기록하세요. 브라우저에서 직접 실행하는 실습 코드로 MLOps Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
MLOps Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 MLOps Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“예측을 위한 구조화된 로그” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 MLOps Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 MLOps Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 예측을 위한 구조화된 로그
- Prometheus로 지표 노출하기
- Grafana 대시보드 만들기
- 지연 시간과 오류 급증 알림