Pular para o conteúdo principal

Casos de Uso

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

Funções Serverless

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

Tempo de Execução de Contêiner

Rastreie o tempo de execução do contêiner para cobrança baseada em uso.

Instâncias de Computação

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

Trabalhos em Segundo Plano

Rastreie o tempo de processamento para exportações de dados, relatórios e trabalhos em lote.
Perfeito para cobrança com base no tempo de computação, duração da execução da função, tempo de execução do contêiner ou qualquer uso baseado em tempo.

Início Rápido

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

Instale o SDK

npm install @dodopayments/ingestion-blueprints
2

Obtenha suas Chaves de API

3

Crie um Medidor

Crie um medidor no seu Painel do Dodo Payments:
  • Nome do Evento: time_range_usage (ou seu nome preferido)
  • Tipo de Agregação: sum para rastrear a duração total
  • Sobre a Propriedade: durationSeconds, durationMinutes, ou durationMs
4

Rastreie o Uso do Tempo

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
required
Sua chave da API do Dodo Payments do painel.
environment
string
required
Modo de ambiente: test_mode ou live_mode.
eventName
string
required
Nome do evento que corresponde à sua configuração de medidor.

Opções de Rastreio de Intervalo de Tempo

customerId
string
required
O ID do cliente para atribuição de cobrança.
durationMs
number
Duração em milissegundos. Use para precisão sub-segundo.
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 duraçã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 longa duração.
Tempos Precisos: Use Date.now() ou performance.now() para rastreamento de tempo preciso, especialmente para funções serverless.