Skip to main content
This reference lists the environment variables used to configure Tracer, the real-time spending-control and transaction-risk service. You set these at deploy time, through Helm values, Docker Compose, or your orchestrator’s environment. Variables marked as required cause the server to fail on startup if not set. For the configuration blocks that every Lerian product shares — TLS posture, OpenTelemetry, Access Manager authentication, multi-tenancy, service discovery, and event streaming — see the BYOC configuration reference. This page focuses on what is distinctive to Tracer.

Ports and health endpoints

See the health and readiness reference for the probe contract.

Deployment and TLS

Application

Rule evaluation

Authentication and request handling

Database (PostgreSQL)

Tracer stores rules and usage counters in its own tracer database on the shared Midaz PostgreSQL primary. Schema migration is applied by a dedicated migration-runner image before the application starts; the service boots against an already-migrated schema and does not run migrations in-process.

Background workers

Reservations

Readiness and draining

Reservation gRPC seam

Server side of the seam the Midaz ledger calls to reserve spending limits. Off unless TRACER_GRPC_PORT is set.

Shared configuration backbone

The following blocks are identical across Lerian products and are documented in full in the BYOC configuration reference. They default off.
  • Access Manager authenticationPLUGIN_AUTH_ENABLED, PLUGIN_AUTH_ADDRESS. Enable in production. In discovery-enabled builds (see Service discovery below), Tracer resolves the Access Manager host through Consul and falls back to PLUGIN_AUTH_ADDRESS if resolution fails; current builds always use PLUGIN_AUTH_ADDRESS.
  • Multi-tenancyMULTI_TENANT_*, plus Tracer’s per-tenant pool knobs (MULTI_TENANT_MAX_TENANT_POOLS, MULTI_TENANT_MAX_OPEN_CONNS_PER_TENANT, TENANT_CAP_RETRY_AFTER_SECONDS). Off by default. APPLICATION_NAME identifies the module to Tenant Manager.
  • Service discoverySD_* (Consul). Off by default, and temporarily inert: current builds compile the Consul integration out, so SD_ENABLED=true has no effect and Tracer always resolves Access Manager from the static PLUGIN_AUTH_ADDRESS. In discovery-enabled builds, Tracer registers itself as midaz-tracer (advertising the HTTP port from SERVER_ADDRESS, default 4020) and resolves Access Manager through Consul. The reservation gRPC seam is not advertised — Tracer is the server on that seam.
  • Event streamingSTREAMING_* (lib-streaming producer). Off by default.
  • OpenTelemetryENABLE_TELEMETRY, OTEL_*. Tracer also exposes a Prometheus /metrics endpoint.