Saltar al contenido principal
Esta referencia enumera las variables de entorno que se usan para configurar Tracer, el servicio de control de gasto y riesgo de transacciones en tiempo real. Estas variables se configuran en el momento del despliegue, mediante el entorno de tu orquestador. Las variables marcadas como obligatorias hacen que el servidor falle al iniciar si no están definidas. Al iniciar, Tracer también verifica los valores de abajo. Cuando una verificación falla, Tracer no inicia, y el error indica el nombre de la variable.
  • Una variable booleana de las tablas de esta página acepta solo true o false. Tracer no verifica ALLOW_INSECURE_TLS de esta forma.
  • AUTH_TIMEOUT y AUTH_CACHE_TTL necesitan una duración con unidad, como 60s.
  • READYZ_CACHE_STALENESS_THRESHOLD_SECONDS, TENANT_CAP_RETRY_AFTER_SECONDS y las variables MULTI_TENANT_* que contienen un conteo o un número de segundos aceptan solo un número entero, sin unidad.
  • Cuando AUTH_JWT_VERIFY_CERT está definida, debe contener claves públicas RSA o certificados en PEM. Cuando está vacía y AUTH_JWT_VERIFY_CERT_PATH está definida, ese archivo debe ser legible y contener esas claves o certificados.
  • Cada entrada de TRUSTED_PROXIES debe ser una dirección IP o un CIDR.
  • Cada booleano o número de STREAMING_* debe ser válido, y STREAMING_EVENT_POLICIES debe estar bien formada, también cuando STREAMING_ENABLED=false.
Para los bloques de configuración que comparten todos los productos de Lerian, consulta la referencia de configuración de BYOC. Esos bloques cubren la postura de TLS, OpenTelemetry, la autenticación de Access Manager, el descubrimiento de servicios y el streaming de eventos. Esta página se enfoca en lo que es propio de Tracer.

Licencia

Tracer necesita una licencia al iniciar. Inicia con LICENSE_KEY o con LICENSE_FILE_PATH. Sin ninguna de las dos, se niega a iniciar. Tracer no lee ninguna otra variable de licencia. Con LICENSE_KEY, Tracer obtiene la licencia firmada del servidor de licencias y la mantiene solo en memoria. Tracer no guarda ninguna licencia en PostgreSQL, así que cada inicio la obtiene de nuevo. Mientras el servidor de licencias no responde, Tracer sigue en ejecución pero no listo, y lo intenta de nuevo. Mientras espera, el puerto principal rechaza conexiones y solo responde el listener de HEALTH_PORT. Un rechazo del servidor de licencias detiene Tracer.

Puertos y endpoints de salud

Consulta la referencia de salud y readiness para el contrato de los probes. Sondea /readyz en HEALTH_PORT. El puerto principal no sirve /readyz ni /metrics. Sin HEALTH_PORT, ningún listener los responde.

Despliegue y TLS

Aplicación

Evaluación de reglas

Autenticación y manejo de solicitudes

Tracer ya no lee API_KEY_ENABLED_ONLY_VALIDATION. Cuando la variable sigue definida, Tracer registra una advertencia en el log al iniciar y la ignora. POST /v1/validations/rules-only se autentica como cualquier otra ruta.

Declaración de permisos RI

Base de datos (PostgreSQL)

Tracer almacena las reglas y los contadores de uso en su propia base de datos tracer, dentro del primario de PostgreSQL compartido con Midaz. Una imagen dedicada de migration-runner aplica la migración del esquema antes de que la aplicación arranque. El servicio arranca contra un esquema ya migrado y no ejecuta migraciones en el proceso.

Workers en segundo plano

Reservas

Readiness, drenado y timeouts

Seam gRPC de reservas

Lado servidor del seam que el ledger de Midaz llama para reservar límites de gasto. Tracer siempre abre el puerto de reservas, :4021 de forma predeterminada. Protégelo con la autenticación de Access Manager (PLUGIN_AUTH_ENABLED), una clave de API (API_KEY_ENABLED), TLS mutuo (TRACER_TLS_MODE=mtls) o tu service mesh. Fuera de DEPLOYMENT_MODE=saas y del modo multi-tenant, Tracer inicia sin ninguna de estas protecciones, y cualquier workload que alcance el puerto puede reservar y liberar capacidad de límite.

Multi-tenancy

Configuración compartida entre productos

Los siguientes bloques son idénticos en todos los productos de Lerian. La referencia de configuración de BYOC los documenta en su totalidad. Están desactivados por defecto.
  • Autenticación de Access Manager: PLUGIN_AUTH_ENABLED, PLUGIN_AUTH_ADDRESS. Habilítala en producción. Con el descubrimiento de servicios activado (consulta Descubrimiento de servicios más abajo), Tracer resuelve el host de Access Manager mediante Consul. Recurre a PLUGIN_AUTH_ADDRESS si la resolución falla.
  • Descubrimiento de servicios: SD_* (Consul). Desactivado por defecto. Cuando SD_ENABLED=true, Tracer se registra a sí mismo como midaz-tracer (anunciando el puerto HTTP de SERVER_ADDRESS) y resuelve Access Manager mediante Consul. Si esa resolución falla, recurre a la dirección estática PLUGIN_AUTH_ADDRESS. El descubrimiento requiere SD_EXTERNAL_ADDRESS o SD_INTERNAL_ADDRESS. Tracer es el servidor en el seam gRPC de reservas y no lo anuncia.
  • Streaming de eventos: STREAMING_*. Desactivado por defecto.
  • OpenTelemetry: ENABLE_TELEMETRY, OTEL_*. Tracer también expone un endpoint /metrics de Prometheus.