Skip to main content
Esta referência lista as variáveis de ambiente usadas para configurar o Tracer, o serviço de controle de gastos e risco de transação em tempo real. Você as define no momento do deploy, por meio do ambiente do seu orquestrador. Variáveis marcadas como obrigatórias fazem o servidor falhar na inicialização se não forem definidas. Na inicialização, o Tracer também verifica os valores abaixo. Quando uma verificação falha, o Tracer não inicia, e o erro informa o nome da variável.
  • Uma variável booleana nas tabelas desta página aceita apenas true ou false. O Tracer não verifica ALLOW_INSECURE_TLS dessa forma.
  • AUTH_TIMEOUT e AUTH_CACHE_TTL precisam de uma duração com unidade, como 60s.
  • READYZ_DRAIN_GRACE_SECONDS, READYZ_CACHE_STALENESS_THRESHOLD_SECONDS, TENANT_CAP_RETRY_AFTER_SECONDS e as variáveis MULTI_TENANT_* que contêm uma contagem ou um número de segundos aceitam apenas um número inteiro, sem unidade.
  • Quando AUTH_JWT_VERIFY_CERT está definida, ela deve conter chaves públicas RSA ou certificados em PEM. Quando ela está vazia e AUTH_JWT_VERIFY_CERT_PATH está definida, esse arquivo deve ser legível e conter essas chaves ou certificados.
  • Cada entrada de TRUSTED_PROXIES deve ser um endereço IP ou um CIDR.
  • Cada booleano ou número de STREAMING_* deve ser válido, e STREAMING_EVENT_POLICIES deve estar bem formada, também quando STREAMING_ENABLED=false.
Para os blocos de configuração compartilhados por todos os produtos Lerian, veja a referência de configuração BYOC. Esses blocos cobrem postura de TLS, OpenTelemetry, autenticação do Access Manager, descoberta de serviços e streaming de eventos. Esta página foca no que é específico do Tracer.

Portas e endpoints de saúde

Veja a referência de prontidão e disponibilidade para o contrato das sondas.

Deploy e TLS

Aplicação

Avaliação de regras

Autenticação e tratamento de requisições

Declaração de permissões da RI

Banco de dados (PostgreSQL)

O Tracer armazena regras e contadores de uso em seu próprio banco de dados tracer no primário do PostgreSQL compartilhado do Midaz. Uma imagem dedicada de execução de migrações aplica a migração de esquema antes de a aplicação iniciar. O serviço inicia sobre um esquema já migrado e não executa migrações em processo.
Planeje uma janela de manutenção para o upgrade para o Midaz v4.2.0. A migração 000025 dessa versão amplia a coluna de ativo da tabela de histórico de validações. O PostgreSQL reescreve essa tabela e recria os índices dela sob um lock exclusivo, então leituras e escritas de validações esperam até o fim. A duração cresce com o número de validações armazenadas.Cada migração espera no máximo 5 segundos pelo lock e falha com SQLSTATE 55P03 quando o tráfego o mantém. Rode-a de novo em uma janela mais tranquila. Uma segunda execução é segura.

Workers em segundo plano

Reservas

Prontidão e drenagem

Elo gRPC de reserva

Lado servidor do elo que o ledger do Midaz chama para reservar limites de gastos. O Tracer sempre abre a porta de reserva, :4021 por padrão. Proteja-a com autenticação do Access Manager (PLUGIN_AUTH_ENABLED), uma chave de API (API_KEY_ENABLED), TLS mútuo (TRACER_TLS_MODE=mtls) ou sua service mesh. Fora de DEPLOYMENT_MODE=saas e do modo multi-tenant, o Tracer inicia sem nenhuma dessas proteções, e qualquer workload que alcance a porta pode reservar e liberar capacidade de limite.

Multi-tenancy

Configuração compartilhada entre produtos

Os blocos a seguir são idênticos entre os produtos Lerian. A referência de configuração BYOC os documenta por completo. Eles vêm desligados por padrão.
  • Autenticação do Access Manager: PLUGIN_AUTH_ENABLED, PLUGIN_AUTH_ADDRESS. Habilite em produção. Com a descoberta de serviços ligada (veja Descoberta de serviços abaixo), o Tracer resolve o host do Access Manager por meio do Consul. Ele recorre a PLUGIN_AUTH_ADDRESS se a resolução falhar.
  • Descoberta de serviços: SD_* (Consul). Desligado por padrão. Quando SD_ENABLED=true, o Tracer se registra como midaz-tracer (anunciando a porta HTTP a partir de SERVER_ADDRESS, padrão 4020) e resolve o Access Manager por meio do Consul. Se essa resolução falhar, ele recorre ao PLUGIN_AUTH_ADDRESS estático. A descoberta exige SD_EXTERNAL_ADDRESS ou SD_INTERNAL_ADDRESS. O Tracer é o servidor no elo gRPC de reserva e não o anuncia.
  • Streaming de eventos: STREAMING_*. Desligado por padrão.
  • OpenTelemetry: ENABLE_TELEMETRY, OTEL_*. O Tracer também expõe um endpoint Prometheus /metrics.