메인 콘텐츠로 건너뛰기

사용 사례

API Gateway Blueprint에서 지원하는 일반적인 시나리오를 살펴보세요:

API-as-a-Service

API 플랫폼에서 고객별 사용량을 추적하고 호출 수를 기준으로 요금 청구.

Rate Limiting

API 사용 패턴을 모니터링하고 사용량 기반 속도 제한을 구현.

Performance Monitoring

청구 데이터와 함께 응답 시간 및 오류율을 추적.

Multi-Tenant SaaS

다양한 엔드포인트에서 API 소비를 기준으로 고객에게 청구.
API 엔드포인트 사용량 추적, 속도 제한, 사용량 기반 API 청구 구현에 적합.

빠른 시작

고용량 시나리오를 위한 자동 배치로 게이트웨이 수준에서 API 호출을 추적합니다:
1

Install the SDK

npm install @dodopayments/ingestion-blueprints
2

Get Your API Keys

3

Create a Meter

다음에서 미터를 생성하세요: Dodo Payments Dashboard
  • 이벤트 이름: api_call (또는 선호하는 이름)
  • 집계 유형: count (호출 수 추적용)
  • 응답 시간, 상태 코드 등과 같은 메타데이터를 추적하는 경우 추가 속성을 구성합니다.
4

Track API Calls

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

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

// Track a single API call
await trackAPICall(ingestion, {
  customerId: 'customer_123',
  metadata: {
    endpoint: '/api/v1/users',
    method: 'GET',
    status_code: 200,
    response_time_ms: 45
  }
});

구성

수집 구성

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

API 호출 추적 옵션

customerId
string
필수
청구 귀속을 위한 고객 ID입니다.
metadata
object
API 호출에 대한 선택적 메타데이터(엔드포인트, 메서드, 상태 코드, 응답 시간 등).

배치 구성

maxSize
number
자동 플러시 전 최대 이벤트 수. 기본값: 100.
flushInterval
number
자동 플러시 간격(밀리초). 기본값: 5000 (5초).

모범 사례

대용량에는 배칭 사용: 초당 10건 이상의 요청을 처리하는 애플리케이션은 createBatch()를 사용하여 오버헤드를 줄이고 성능을 개선하세요.
항상 배치 정리: 애플리케이션 종료 시 batch.cleanup()를 호출하여 대기 중인 이벤트를 플러시하고 데이터 손실을 방지하세요.