안 보이는 건 못 고쳐
"내 파이프라인 돌아" 에서 "내 파이프라인 observable" 로의 전환은 스크립트에서 시스템으로의 전환과 같아. Observability 는 세 layer 있고 각 layer 가 다른 사고 클래스 해결.
- 로그 — 뭐 일어났는지, 순서대로, 사람 읽을 수 있는 형태. 디버깅용.
- Metric — 모든 stage 에서 emit 된 count, duration, rate. 트렌드와 알림용.
- Run log — 시작 시간, 종료 시간, 성공/실패, stage 별 in/out row count, 에러의 per-run 기록. Forensic 과 SLA 추적용.
구조화 로그는 비협상
일반 텍스트 로그 ('started extract') 는 터미널 보는 사람한테 OK. Production grade 로그는 구조화 (key=value 또는 JSON), log aggregator 가 indexing, 패턴 알림, run 간 query 가능하게. Python logging 모듈이 두 줄 config + 중요한 값 포함 습관으로 거기 도달.