메인 콘텐츠로 건너뛰기

사용 사례

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

API-as-a-Service

API 플랫폼의 고객별 사용량을 추적하고 호출 수에 따라 요금을 부과합니다.

요금 제한

API 사용 패턴을 모니터링하고 사용 기반 요금 제한을 구현합니다.

성능 모니터링

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

다중 테넌트 SaaS

다양한 엔드포인트에서의 API 소비에 따라 고객에게 요금을 부과합니다.
API 엔드포인트 사용량 추적, 요금 제한 및 사용 기반 API 청구 구현에 적합합니다.

빠른 시작

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

SDK 설치

npm install @dodopayments/ingestion-blueprints
2

API 키 받기

3

미터 생성

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

API 호출 추적

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

API 호출 추적 옵션

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

배치 구성

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

모범 사례

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