비용과 보존 정책
조직 단위 사용량과 비용, 프로젝트 단위 보존 정책과 cleanup 흐름을 관리합니다.
비용은 조직 단위로 보고, 데이터 보존은 프로젝트 단위로 정합니다. 이 문서에서는 사용량을 해석하고 보존 기간을 정할 때 확인해야 할 기준을 정리합니다.
조직 단위 사용량 및 요금
조직의 사용량 및 요금 화면은 /dashboard/[orgId]/billing에서 열 수 있어요.
조직 멤버는 사용량과 인보이스를 조회할 수 있습니다.
플랜 변경, checkout 확인, Billing Portal 진입은 owner 또는 admin 권한이 필요합니다.
여기에서 다음 데이터를 확인합니다.
- current usage
- subscription status
- usage history
- daily usage
- usage by project
- cost estimate
- credit breakdown
- invoice history
- plan catalog
- Stripe checkout / billing portal 상태
원본 보기사용량 및 요금에서 답할 수 있는 질문
- 이번 달에 얼마나 사용했나요?
- 어떤 프로젝트가 사용량을 많이 만들었나요?
- 현재 플랜에서 초과 비용이 생기나요?
- 크레딧은 어떤 기능에서 많이 소모되나요?
- 구독이 활성, 연체, 미납, 해지 상태 중 어디에 있나요?
- checkout이나 billing portal에서 돌아온 뒤 상태가 동기화되었나요?
플랜과 결제 흐름
현재 플랜은 demo, starter, growth, scale로 나뉩니다.
| 플랜 | 수집 정책 | 결제 방식 |
|---|---|---|
demo | 자기 데이터 수집 불가 | 무료 탐색용 |
starter | 월간 데이터 포인트 + 초과 과금 | Stripe checkout |
growth | 더 큰 월간 데이터 포인트 + 초과 과금 | Stripe checkout |
scale | 무제한/계약형 | 영업 문의 |
Starter와 Growth는 billing 화면에서 선택하면 Stripe checkout으로 이동합니다.
checkout 성공 후 /dashboard/[orgId]/billing?checkout=success&session_id=...로 돌아오고, 앱이 checkout session을 확인해 조직 구독 상태를 동기화합니다.
기존 Stripe customer가 있는 조직은 Billing Portal 버튼으로 Stripe billing portal을 열 수 있어요. portal에서 돌아오면 billing query를 다시 불러와 최신 구독/인보이스 상태를 표시합니다.
데이터 포인트 차감
조직 사용량은 Redis 실시간 카운터와 PostgreSQL usage record로 관리합니다.
| 액션 | 데이터 포인트 |
|---|---|
| 이벤트 수집 | 1 |
| 퍼널 쿼리 | 5 |
| 리텐션 쿼리 | 5 |
| 실시간 대시보드 1분 | 2 |
| 사용자 타임라인 조회 | 3 |
| 알림 발송 | 2 |
일부 분석 쿼리는 캐시 hit 시 데이터 포인트를 차감하지 않습니다.
/api/cron/sync-usage가 Redis 사용량을 PostgreSQL에 동기화합니다.
프로젝트 단위 보존 정책
프로젝트 설정 화면에서는 retention policy를 관리합니다. 보존 기간은 저장소 비용과 장애 복구 가능 기간에 함께 영향을 줍니다.
조직 멤버는 저장소 사용량과 cleanup preview를 볼 수 있습니다.
보존 정책 변경과 실제 cleanup 실행은 owner 또는 admin만 할 수 있습니다.
지원 값:
- 미설정 또는 무제한
- 30일
- 60일
- 90일
- 180일
- 365일
운영 기능:
- storage usage
- cleanup preview
- run cleanup
원본 보기주의할 점
- cleanup은 데이터 삭제를 동반할 수 있으므로 preview를 먼저 확인하세요.
- raw event 보존 기간을 줄이면 replay 가능한 기간도 짧아집니다.
- 비용을 줄이려면 사용량이 큰 프로젝트부터 retention policy를 점검하세요.
- Stripe checkout을 쓰려면
STRIPE_SECRET_KEY,STRIPE_WEBHOOK_SECRET, plan별 price id가 설정되어야 합니다. demo플랜은 자기 데이터 수집을 차단합니다. 첫 실제 이벤트를 보내려면 유료 플랜 또는 운영 설정이 필요합니다.
다음 단계
- 프로젝트 설정 상세는 설정과 DevTools
- 보존 대상 테이블과 구현은 데이터 수집과 거버넌스
- 배포별 환경변수는 환경변수와 배포