Skip to content

Environment Variables

Every config key supported by Lakta can be set via an environment variable. This is useful for secrets, deployment-time overrides, and container environments.

Transform the dot-notation config key:

  1. Prefix with LAKTA_
  2. Convert to uppercase
  3. Replace each path-separating . with a double underscore (__)
  4. Leave underscores inside a key (e.g. max_open_conns) as single underscores

The double-underscore separator is what lets a snake_case key survive: a single underscore everywhere would be ambiguous between a path boundary and the underscore inside the key.

Examples:

Config key Environment variable
modules.grpc.server.default.port LAKTA_MODULES__GRPC__SERVER__DEFAULT__PORT
modules.db.pgx.primary.dsn LAKTA_MODULES__DB__PGX__PRIMARY__DSN
modules.db.pgx.default.max_open_conns LAKTA_MODULES__DB__PGX__DEFAULT__MAX_OPEN_CONNS
modules.http.fiber.default.health_path LAKTA_MODULES__HTTP__FIBER__DEFAULT__HEALTH_PATH

Environment variables override config file values but are overridden by CLI flags:

config file < environment variable < CLI flag
# kubernetes deployment
env:
- name: LAKTA_MODULES__DB__PGX__DEFAULT__DSN
valueFrom:
secretKeyRef:
name: db-secret
key: dsn
- name: LAKTA_MODULES__OTEL__OTEL__DEFAULT__ENDPOINT
value: "http://otel-collector:4317"

Generated from the module config structs (showing the default instance). Swap DEFAULT for any instance name.

modules.auth.verifier

Config keyEnvironment variable
modules.auth.verifier.default.issuers.issuer
modules.auth.verifier.default.issuers.audience
modules.auth.verifier.default.issuers.jwks_url
modules.auth.verifier.default.issuers.algorithms
modules.auth.verifier.default.issuers.clock_skew
modules.auth.verifier.default.static_key.algorithmLAKTA_MODULES__AUTH__VERIFIER__DEFAULT__STATIC_KEY__ALGORITHM
modules.auth.verifier.default.static_key.secretLAKTA_MODULES__AUTH__VERIFIER__DEFAULT__STATIC_KEY__SECRET
modules.auth.verifier.default.static_key.profilesLAKTA_MODULES__AUTH__VERIFIER__DEFAULT__STATIC_KEY__PROFILES
modules.auth.verifier.default.scope_claimLAKTA_MODULES__AUTH__VERIFIER__DEFAULT__SCOPE_CLAIM
modules.auth.verifier.default.roles_claimLAKTA_MODULES__AUTH__VERIFIER__DEFAULT__ROLES_CLAIM

modules.cache.memory

Config keyEnvironment variable
modules.cache.memory.default.caches.max_size
modules.cache.memory.default.caches.ttl
modules.cache.memory.default.caches.ttl_access
modules.cache.memory.default.caches.record_stats

modules.db.pgx

Config keyEnvironment variable
modules.db.pgx.default.dsnLAKTA_MODULES__DB__PGX__DEFAULT__DSN
modules.db.pgx.default.max_open_connsLAKTA_MODULES__DB__PGX__DEFAULT__MAX_OPEN_CONNS
modules.db.pgx.default.log_levelLAKTA_MODULES__DB__PGX__DEFAULT__LOG_LEVEL
modules.db.pgx.default.health_checkLAKTA_MODULES__DB__PGX__DEFAULT__HEALTH_CHECK
modules.db.pgx.default.min_connsLAKTA_MODULES__DB__PGX__DEFAULT__MIN_CONNS
modules.db.pgx.default.max_conn_lifetimeLAKTA_MODULES__DB__PGX__DEFAULT__MAX_CONN_LIFETIME
modules.db.pgx.default.max_conn_idle_timeLAKTA_MODULES__DB__PGX__DEFAULT__MAX_CONN_IDLE_TIME
modules.db.pgx.default.health_check_periodLAKTA_MODULES__DB__PGX__DEFAULT__HEALTH_CHECK_PERIOD
modules.db.pgx.default.statement_timeoutLAKTA_MODULES__DB__PGX__DEFAULT__STATEMENT_TIMEOUT
modules.db.pgx.default.migrations.run_on_startLAKTA_MODULES__DB__PGX__DEFAULT__MIGRATIONS__RUN_ON_START
modules.db.pgx.default.migrations.tableLAKTA_MODULES__DB__PGX__DEFAULT__MIGRATIONS__TABLE
modules.db.pgx.default.migrations.dirLAKTA_MODULES__DB__PGX__DEFAULT__MIGRATIONS__DIR
modules.db.pgx.default.migrations.lockLAKTA_MODULES__DB__PGX__DEFAULT__MIGRATIONS__LOCK
modules.db.pgx.default.migrations.allow_missingLAKTA_MODULES__DB__PGX__DEFAULT__MIGRATIONS__ALLOW_MISSING

modules.debug.actuator

Config keyEnvironment variable
modules.debug.actuator.default.enabledLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__ENABLED
modules.debug.actuator.default.hostLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__HOST
modules.debug.actuator.default.portLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__PORT
modules.debug.actuator.default.base_pathLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__BASE_PATH
modules.debug.actuator.default.show_valuesLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__SHOW_VALUES
modules.debug.actuator.default.redact_patternsLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__REDACT_PATTERNS
modules.debug.actuator.default.endpoints.pprofLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__ENDPOINTS__PPROF
modules.debug.actuator.default.endpoints.expvarLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__ENDPOINTS__EXPVAR
modules.debug.actuator.default.endpoints.uiLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__ENDPOINTS__UI
modules.debug.actuator.default.endpoints.loggersLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__ENDPOINTS__LOGGERS
modules.debug.actuator.default.allow_insecureLAKTA_MODULES__DEBUG__ACTUATOR__DEFAULT__ALLOW_INSECURE

modules.events.bus

Config keyEnvironment variable
modules.events.bus.default.buffer_sizeLAKTA_MODULES__EVENTS__BUS__DEFAULT__BUFFER_SIZE

modules.features.flags

Config keyEnvironment variable
modules.features.flags.default.flagsLAKTA_MODULES__FEATURES__FLAGS__DEFAULT__FLAGS

modules.grpc.client

Config keyEnvironment variable
modules.grpc.client.default.targetLAKTA_MODULES__GRPC__CLIENT__DEFAULT__TARGET
modules.grpc.client.default.insecureLAKTA_MODULES__GRPC__CLIENT__DEFAULT__INSECURE
modules.grpc.client.default.tlsLAKTA_MODULES__GRPC__CLIENT__DEFAULT__TLS

modules.grpc.server

Config keyEnvironment variable
modules.grpc.server.default.hostLAKTA_MODULES__GRPC__SERVER__DEFAULT__HOST
modules.grpc.server.default.portLAKTA_MODULES__GRPC__SERVER__DEFAULT__PORT
modules.grpc.server.default.health_checkLAKTA_MODULES__GRPC__SERVER__DEFAULT__HEALTH_CHECK
modules.grpc.server.default.tlsLAKTA_MODULES__GRPC__SERVER__DEFAULT__TLS

modules.health.health

Config keyEnvironment variable
modules.health.health.default.component_nameLAKTA_MODULES__HEALTH__HEALTH__DEFAULT__COMPONENT_NAME
modules.health.health.default.component_versionLAKTA_MODULES__HEALTH__HEALTH__DEFAULT__COMPONENT_VERSION

modules.http.connect

Config keyEnvironment variable
modules.http.connect.default.hostLAKTA_MODULES__HTTP__CONNECT__DEFAULT__HOST
modules.http.connect.default.portLAKTA_MODULES__HTTP__CONNECT__DEFAULT__PORT
modules.http.connect.default.h2cLAKTA_MODULES__HTTP__CONNECT__DEFAULT__H2C
modules.http.connect.default.read_timeoutLAKTA_MODULES__HTTP__CONNECT__DEFAULT__READ_TIMEOUT
modules.http.connect.default.read_header_timeoutLAKTA_MODULES__HTTP__CONNECT__DEFAULT__READ_HEADER_TIMEOUT
modules.http.connect.default.tlsLAKTA_MODULES__HTTP__CONNECT__DEFAULT__TLS

modules.http.fiber

Config keyEnvironment variable
modules.http.fiber.default.hostLAKTA_MODULES__HTTP__FIBER__DEFAULT__HOST
modules.http.fiber.default.portLAKTA_MODULES__HTTP__FIBER__DEFAULT__PORT
modules.http.fiber.default.health_pathLAKTA_MODULES__HTTP__FIBER__DEFAULT__HEALTH_PATH
modules.http.fiber.default.tlsLAKTA_MODULES__HTTP__FIBER__DEFAULT__TLS

modules.logging.slog

Config keyEnvironment variable
modules.logging.slog.default.levelLAKTA_MODULES__LOGGING__SLOG__DEFAULT__LEVEL
modules.logging.slog.default.levelsLAKTA_MODULES__LOGGING__SLOG__DEFAULT__LEVELS
modules.logging.slog.default.global_defaultLAKTA_MODULES__LOGGING__SLOG__DEFAULT__GLOBAL_DEFAULT

modules.logging.tint

Config keyEnvironment variable
modules.logging.tint.default.time_formatLAKTA_MODULES__LOGGING__TINT__DEFAULT__TIME_FORMAT

modules.otel.otel

Config keyEnvironment variable
modules.otel.otel.default.service_nameLAKTA_MODULES__OTEL__OTEL__DEFAULT__SERVICE_NAME
modules.otel.otel.default.service_versionLAKTA_MODULES__OTEL__OTEL__DEFAULT__SERVICE_VERSION
modules.otel.otel.default.service_namespaceLAKTA_MODULES__OTEL__OTEL__DEFAULT__SERVICE_NAMESPACE
modules.otel.otel.default.environmentLAKTA_MODULES__OTEL__OTEL__DEFAULT__ENVIRONMENT
modules.otel.otel.default.endpointLAKTA_MODULES__OTEL__OTEL__DEFAULT__ENDPOINT
modules.otel.otel.default.protocolLAKTA_MODULES__OTEL__OTEL__DEFAULT__PROTOCOL
modules.otel.otel.default.insecureLAKTA_MODULES__OTEL__OTEL__DEFAULT__INSECURE
modules.otel.otel.default.headersLAKTA_MODULES__OTEL__OTEL__DEFAULT__HEADERS
modules.otel.otel.default.sample_rateLAKTA_MODULES__OTEL__OTEL__DEFAULT__SAMPLE_RATE
modules.otel.otel.default.metric_intervalLAKTA_MODULES__OTEL__OTEL__DEFAULT__METRIC_INTERVAL
modules.otel.otel.default.runtime_intervalLAKTA_MODULES__OTEL__OTEL__DEFAULT__RUNTIME_INTERVAL
modules.otel.otel.default.enabledLAKTA_MODULES__OTEL__OTEL__DEFAULT__ENABLED
modules.otel.otel.default.requiredLAKTA_MODULES__OTEL__OTEL__DEFAULT__REQUIRED
modules.otel.otel.default.signalsLAKTA_MODULES__OTEL__OTEL__DEFAULT__SIGNALS

modules.resilience.policy

Config keyEnvironment variable
modules.resilience.policy.default.policies.timeout
modules.resilience.policy.default.policies.retry.max_attempts
modules.resilience.policy.default.policies.retry.delay
modules.resilience.policy.default.policies.retry.max_delay
modules.resilience.policy.default.policies.retry.jitter
modules.resilience.policy.default.policies.circuit_breaker.failure_threshold
modules.resilience.policy.default.policies.circuit_breaker.success_threshold
modules.resilience.policy.default.policies.circuit_breaker.delay
modules.resilience.policy.default.policies.rate_limit.max
modules.resilience.policy.default.policies.rate_limit.period
modules.resilience.policy.default.policies.rate_limit.bursty
modules.resilience.policy.default.policies.rate_limit.max_wait
modules.resilience.policy.default.policies.hedge.delay
modules.resilience.policy.default.policies.hedge.max_hedges
modules.resilience.policy.default.policies.adaptive_limiter.min
modules.resilience.policy.default.policies.adaptive_limiter.max
modules.resilience.policy.default.policies.adaptive_limiter.initial
modules.resilience.policy.default.policies.adaptive_limiter.max_wait
modules.resilience.policy.default.policies.adaptive_limiter.queueing.initial_factor
modules.resilience.policy.default.policies.adaptive_limiter.queueing.max_factor
modules.resilience.policy.default.policies.bulkhead.max_concurrent
modules.resilience.policy.default.policies.bulkhead.max_wait

modules.workers.pool

Config keyEnvironment variable
modules.workers.pool.default.pools.workers
modules.workers.pool.default.pools.queue_size

modules.workers.scheduler

Config keyEnvironment variable
modules.workers.scheduler.default.timezoneLAKTA_MODULES__WORKERS__SCHEDULER__DEFAULT__TIMEZONE
modules.workers.scheduler.default.jobs.schedule
modules.workers.scheduler.default.jobs.timezone
modules.workers.scheduler.default.jobs.jitter
modules.workers.scheduler.default.jobs.overlap
modules.workers.scheduler.default.jobs.enabled

modules.workflows.temporal

Config keyEnvironment variable
modules.workflows.temporal.default.targetLAKTA_MODULES__WORKFLOWS__TEMPORAL__DEFAULT__TARGET
modules.workflows.temporal.default.task_queueLAKTA_MODULES__WORKFLOWS__TEMPORAL__DEFAULT__TASK_QUEUE
modules.workflows.temporal.default.namespaceLAKTA_MODULES__WORKFLOWS__TEMPORAL__DEFAULT__NAMESPACE
modules.workflows.temporal.default.insecureLAKTA_MODULES__WORKFLOWS__TEMPORAL__DEFAULT__INSECURE