메인 콘텐츠로 건너뛰기

사용 사례

시간 범위 청사진에서 지원하는 일반적인 시나리오를 살펴보세요:

서버리스 함수

함수 실행 시간 및 메모리 사용량에 따라 청구합니다.

컨테이너 런타임

사용 기반 청구를 위해 컨테이너 실행 시간을 추적합니다.

컴퓨팅 인스턴스

VM 런타임을 모니터링하고 분 또는 시간 단위로 청구합니다.

백그라운드 작업

데이터 내보내기, 보고서 및 배치 작업의 처리 시간을 추적합니다.
컴퓨팅 시간, 함수 실행 기간, 컨테이너 런타임 또는 시간 기반 사용에 따라 청구하는 데 적합합니다.

빠른 시작

시간 지속에 따라 리소스 사용량을 추적합니다:
1

SDK 설치

npm install @dodopayments/ingestion-blueprints
2

API 키 받기

3

미터 생성

Dodo Payments 대시보드에서 미터를 생성하세요:
  • 이벤트 이름: time_range_usage (또는 선호하는 이름)
  • 집계 유형: sum 총 지속 시간을 추적하기 위해
  • 속성 기준: durationSeconds, durationMinutes, 또는 durationMs
4

시간 사용량 추적

import { Ingestion, trackTimeRange } from '@dodopayments/ingestion-blueprints';

const ingestion = new Ingestion({
  apiKey: process.env.DODO_PAYMENTS_API_KEY,
  environment: 'test_mode',
  eventName: 'function_execution'
});

// Track function execution time
const startTime = Date.now();

// Execute your function (example: image processing)
const result = await yourImageProcessingLogic();

const durationMs = Date.now() - startTime;

await trackTimeRange(ingestion, {
  customerId: 'customer_123',
  durationMs: durationMs
});

구성

수집 구성

apiKey
string
required
대시보드에서 가져온 Dodo Payments API 키입니다.
environment
string
required
환경 모드: test_mode 또는 live_mode.
eventName
string
required
미터 구성과 일치하는 이벤트 이름입니다.

시간 범위 추적 옵션

customerId
string
required
청구 귀속을 위한 고객 ID입니다.
durationMs
number
밀리초 단위의 지속 시간입니다. 서브 초 정밀도를 위해 사용합니다.
durationSeconds
number
초 단위의 지속 시간입니다. 함수 실행 및 짧은 작업에 가장 일반적입니다.
durationMinutes
number
분 단위의 지속 시간입니다. VM과 같은 장기 실행 리소스에 유용합니다.
metadata
object
CPU, 메모리, 지역 등과 같은 리소스에 대한 선택적 메타데이터입니다.

모범 사례

올바른 단위 선택: 짧은 작업에는 밀리초, 함수에는 초, 장기 실행 리소스에는 분을 사용하세요.
정확한 타이밍: 서버리스 함수의 경우 특히 Date.now() 또는 performance.now()을 사용하여 정확한 시간 추적을 하세요.