Pular para o conteúdo principal

Casos de Uso

Explore cenários comuns suportados pelo Modelo de Intervalo de Tempo:

Serverless Functions

Cobrança baseada no tempo de execução da função e no uso de memória.

Container Runtime

Acompanhe o tempo de execução do container para cobrança baseada em uso.

Compute Instances

Monitore o tempo de execução da VM e cobre por minuto ou hora.

Background Jobs

Acompanhe o tempo de processamento de exportações de dados, relatórios e jobs em lote.
Perfeito para cobrança com base no tempo de computação, duração de execução de funções, tempo de execução de containers ou qualquer uso baseado em tempo.

Início Rápido

Rastreie o uso de recursos por duração de tempo:
1

Install the SDK

npm install @dodopayments/ingestion-blueprints
2

Get Your API Keys

3

Create a Meter

Crie um medidor no seu Dodo Payments Dashboard:
  • Event Name: time_range_usage (ou o nome que preferir)
  • Aggregation Type: sum para acompanhar a duração total
  • Over Property: durationSeconds, durationMinutes ou durationMs
4

Track Time Usage

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
});

Configuração

Configuração de Ingestão

apiKey
string
obrigatório
Sua chave da API Dodo Payments obtida no painel.
environment
string
obrigatório
Modo de ambiente: test_mode ou live_mode.
eventName
string
obrigatório
Nome do evento que corresponde à configuração do seu medidor.

Opções de Rastreio de Intervalo de Tempo

customerId
string
obrigatório
O ID do cliente para atribuição de cobrança.
durationMs
number
Duração em milissegundos. Use para precisão subsegundo.
durationSeconds
number
Duração em segundos. Mais comum para execução de funções e tarefas curtas.
durationMinutes
number
Duração em minutos. Útil para recursos de longa execução, como VMs.
metadata
object
Metadados opcionais sobre o recurso, como CPU, memória, região, etc.

Melhores Práticas

Escolha a unidade certa: use milissegundos para operações curtas, segundos para funções e minutos para recursos de execução mais longa.
Tempo preciso: use Date.now() ou performance.now() para rastreamento de tempo preciso, especialmente para funções serverless.