@dodopayments/ingestion-blueprints npm package에 trackTimeRange()로 제공됩니다.
사용 사례
Time Range Blueprint는 다음 시나리오에 적합합니다:Serverless Functions
function execution time 및 memory usage를 기준으로 요금을 청구합니다.
Container Runtime
usage-based billing을 위해 container running time을 추적합니다.
Compute Instances
VM runtime을 모니터링하고 분 또는 시간 단위로 요금을 청구합니다.
Background Jobs
data exports, reports 및 batch jobs의 processing time을 추적합니다.
compute time, function execution duration, container runtime 또는 기타 time-based usage에 대해 요금을 청구하는 데 사용하세요.
빠른 시작
runtime을 추적하려면 package를 설치하고 meter를 생성한 다음, 리소스 실행이 완료될 때마다 duration을 전송하세요.1
Install the SDK
Dodo Payments Ingestion Blueprints package를 설치합니다:
2
Get Your API Keys
Dodo Payments dashboard의 Developer → API Keys에서 Dodo Payments API key를 생성하고
DODO_PAYMENTS_API_KEY environment variable에 저장하세요. 개발하는 동안에는 test mode key를 사용하세요. test mode key는 test_mode에서만 작동합니다.3
Create a Meter
Dodo Payments dashboard에서 Products → Meters로 이동하고 Create Meter를 클릭하세요. 다음 field를 설정합니다:
- Meter Name:
Compute Time와 같은 설명적인 이름입니다. - Event Name:
time_range_usage또는 직접 선택한 이름입니다. 코드의eventName와 대소문자까지 정확히 일치해야 합니다. 다음 단계의 예제에서는function_execution와 같이 각 resource type에 별도의 event name을 사용하므로 각각 자체 meter가 필요합니다. - Aggregation Type: 총 duration을 합산하는 Sum입니다.
- Over Property: 전송하는 duration key인
durationSeconds,durationMinutes또는durationMs입니다. - Measurement Unit:
seconds와 같이 invoice에 표시되는 unit입니다.
4
Track Time Usage
작업이 실행된 시간을 측정한 다음, meter가 사용하는 unit으로 duration을 전달하여
trackTimeRange()을 호출하세요:구성
Ingestion 구성
다음 options를new Ingestion()에 전달하세요:
string
필수
Dashboard에서 확인한 Dodo Payments API key입니다.
string
Environment mode:
test_mode 또는 live_mode입니다. 기본값은 test_mode입니다. 대신 Dodo Payments SDKs의 기본값은 live_mode이므로 production에서는 live_mode을 명시적으로 설정하세요.string
필수
meter의 Event Name과 일치하는 event name입니다(대소문자 구분).
Track Time Range options
다음 options를trackTimeRange()에 전달하세요. 전달하는 각 duration은 동일한 이름의 metadata key로 전송됩니다.
string
필수
runtime에 대해 요금을 청구할 Dodo Payments customer ID입니다(예:
cus_123).number
밀리초 단위의 duration입니다. 1초 미만의 정밀도가 필요할 때 사용하세요.
number
초 단위의 duration입니다. function execution 및 짧은 task에 가장 일반적으로 사용됩니다.
number
분 단위의 duration입니다. VM과 같이 오래 실행되는 resource에 유용합니다.
object
CPU, memory 또는 region과 같은 resource에 대한 선택적 metadata입니다. 각 value는 string, number 또는 boolean이어야 합니다.