지출 한도
워크스페이스마다 월 지출 한도를 두어 한 프로젝트가 조직 잔액을 다 쓰지 않게 막습니다, 한도 설정과 도달 시 동작과 알림을 설명합니다
조직의 월 한도는 사용 티어로 정해지고, 워크스페이스마다 그보다 낮은 한도를 둘 수 있습니다, 새 잡은 항상 min(티어 월 한도 남은 액, 워크스페이스 한도 남은 액) 안에서만 시작됩니다
한도의 종류
| 한도 | 단위 | 누가 정하나 | 도달 시 오류 |
|---|---|---|---|
| 워크스페이스 월 지출 한도 | 워크스페이스, UTC 달력 월 | 소유자, 관리자 | 402 workspace_spend_limit |
| 티어 월 사용 한도 | 조직, UTC 달력 월 | 티어가 정함 | 402 tier_monthly_limit |
| 잔액 | 조직 | 충전액 | 402 insufficient_credit, 실행 중이면 credit_exhausted |
워크스페이스 한도 정하기
- 관리 → 워크스페이스에서 워크스페이스를 엽니다
- 지출 한도의 한도 정하기(이미 있으면 한도 조정)를 누릅니다
- USD 정수를 넣습니다, 1 이상 10,000,000 이하이고 비우면 한도가 없습니다
- 저장을 누릅니다
API로는 워크스페이스 수정에 monthly_limit_usd를 보냅니다, null이면 한도를 없앱니다
curl -X PATCH "https://xenoci.com/api/runner/v1/organizations/org_7Kq2m9ZtP3/workspaces/wrk_3fK9Qm2Zp8" \
--cookie "xci_console=$SESSION" \
-H "Origin: https://xenoci.com" \
-H "Content-Type: application/json" \
-d '{"monthly_limit_usd":100}'한도에 닿으면
- 이번 달 정산액에 실행 중인 잡이 이미 쓴 금액을 더한 값이 한도 이상이면 새 잡은 시작되지 않습니다
- 실행 중인 잡은 끝까지 돕니다, 한도는 새 잡만 막습니다
- 대기열에 있던 잡은 슬롯을 받는 순간 다시 검사하고, 그때 한도에 닿아 있으면
failed로 끝나며 오류 코드에 이유가 남습니다 - 한도를 올리거나 없애면 바로 풀립니다, 다음 달 1일 00:00 UTC에는 사용액이 0에서 시작합니다
오류 응답의 details에 limit_usd, spent_usd, resets_at이 있습니다, CLI와 GitHub Action은 이 오류를 종료 코드 3으로 끝내고 한 줄로 안내합니다
알림
한도의 75%, 90%, 100%에 닿으면 소유자와 관리자에게 메일이 갑니다, 임계마다 한 달에 한 번이고 여러 임계를 한 번에 넘으면 가장 높은 것만 보냅니다, 한도 값을 바꾸면 다시 보냅니다, 알림 종류는 알림에서 끌 수 있습니다
한도 보기
- 관리 → 워크스페이스: 워크스페이스마다 이번 달 지출 / 한도
- 분석 → 한도: 티어 월 한도와 워크스페이스 한도를 한 화면에서
- API: 한도 조회, 워크스페이스 조회의
month_spend_usd
다음 단계
- 속도 제한과 티어 티어 월 한도
- 크레딧 충전과 만료 잔액이 0이 되면
- 사용량과 비용 어디에 얼마를 썼나