Skip to content

Environment Variables

This reference documents all environment variables for both License Monitor and License Server Detail.

VariableDescriptionDefault
LICENSE_MONITOR_CONFIGPath to configuration file./config.toml
LICENSE_MONITOR_MODEOperating modecommand
LICENSE_MONITOR_LOG_LEVELLog levelwarn
VariableDescriptionDefault
LICENSE_MONITOR_API_ENABLEDEnable API servertrue
LICENSE_MONITOR_BIND_ADDRESSAPI bind address127.0.0.1
LICENSE_MONITOR_BIND_PORTAPI bind port8080
ALLOW_PUBLIC_BINDAllow 0.0.0.0 bindingfalse
LICENSE_MONITOR_API_KEYAPI authentication keyNone
VariableDescriptionDefault
LICENSE_MONITOR_CORS_ENABLEDEnable CORSfalse
LICENSE_MONITOR_CORS_ORIGINSAllowed origins (comma-separated)None
VariableDescriptionDefault
LICENSE_MONITOR_EXECUTECommand to executeNone
LICENSE_MONITOR_INTERVALExecution interval (seconds)300
LICENSE_MONITOR_TIMEOUTCommand timeout (seconds)120
VariableDescriptionDefault
LICENSE_MONITOR_FILELog file to monitorNone
LICENSE_MONITOR_REGEXRegex patternNone
LICENSE_MONITOR_BATCH_SIZEBatch processing size10
VariableDescriptionDefault
LICENSE_MONITOR_LOG_FILELog file pathlogs/license_monitor.log
LICENSE_MONITOR_CONSOLE_LOG_LEVELConsole log levelSame as main
LICENSE_MONITOR_FILE_LOG_LEVELFile log levelSame as main
LICENSE_MONITOR_LOG_FORMATLog format (text/json)text
VariableDescriptionDefault
LICENSE_MONITOR_UPDATE_CHANNELUpdate channelstable
LICENSE_MONITOR_UPDATE_OWNERGitHub repo ownerNone
LICENSE_MONITOR_UPDATE_REPOGitHub repo nameNone
GITHUB_TOKENGitHub token for private reposNone
VariableDescriptionDefault
OTEL_EXPORTER_OTLP_ENDPOINTOTLP endpointNone
OTEL_EXPORTER_OTLP_METRICS_ENDPOINTMetrics endpointNone
OTEL_EXPORTER_OTLP_LOGS_ENDPOINTLogs endpointNone
OTEL_SERVICE_NAMEService namelicense_monitor
VariableDescriptionDefault
NEXT_PUBLIC_API_BASE_URLBackend API base URLhttp://localhost:8080
NEXT_PUBLIC_API_TIMEOUT_MSRequest timeout (ms)10000
NEXT_PUBLIC_LOG_LEVELClient log leveldebug (dev), info (prod)
VariableDescriptionDefault
NEXT_PUBLIC_API_RETRY_MAX_ATTEMPTSMax retry attempts3
NEXT_PUBLIC_API_RETRY_BASE_DELAY_MSBase backoff delay (ms)250
NEXT_PUBLIC_API_RETRY_MAX_DELAY_MSMax backoff delay (ms)3000
NEXT_PUBLIC_API_RETRY_JITTEREnable jittertrue
VariableDescriptionDefault
NEXT_PUBLIC_API_CIRCUIT_FAILURESFailures to open circuit5
NEXT_PUBLIC_API_CIRCUIT_COOLDOWN_MSCooldown duration (ms)10000
VariableDescriptionRequired
LICENSE_MONITOR_API_KEYLicense Monitor API keyYes
LICENSE_MONITOR_BASE_URLLicense Monitor base URLYes
LICENSE_MONITOR_TIMEOUTAPI timeout (ms)No (30000)
VariableDescriptionRequired
AUTH_OKTA_IDOkta OAuth client IDYes
AUTH_OKTA_SECRETOkta OAuth client secretYes
AUTH_OKTA_ISSUEROkta issuer URLYes
VariableDescriptionRequired
AUTH_SECRETJWT signing secretYes
AUTH_TRUST_HOSTTrust HOST headerNo (false)
NEXTAUTH_URLPublic base URLRecommended
VariableDescriptionDefault
DASHBOARD_USE_MOCKUse mock metricsfalse
.env
LICENSE_MONITOR_LOG_LEVEL=debug
LICENSE_MONITOR_BIND_ADDRESS=127.0.0.1
LICENSE_MONITOR_BIND_PORT=8080
LICENSE_MONITOR_API_ENABLED=true
/etc/license-monitor/environment
LICENSE_MONITOR_CONFIG=/etc/license-monitor/config.toml
LICENSE_MONITOR_LOG_LEVEL=warn
LICENSE_MONITOR_BIND_ADDRESS=127.0.0.1
LICENSE_MONITOR_BIND_PORT=8080
LICENSE_MONITOR_API_KEY=${LICENSE_MONITOR_API_KEY}
ALLOW_PUBLIC_BIND=false
docker-compose.yml
services:
license-monitor:
environment:
- LICENSE_MONITOR_LOG_LEVEL=warn
- LICENSE_MONITOR_BIND_ADDRESS=0.0.0.0
- LICENSE_MONITOR_BIND_PORT=8080
- ALLOW_PUBLIC_BIND=true
- LICENSE_MONITOR_API_KEY=${LICENSE_MONITOR_API_KEY}
license-server-detail:
environment:
- NEXT_PUBLIC_API_BASE_URL=http://license-monitor:8080
- LICENSE_MONITOR_API_KEY=${LICENSE_MONITOR_API_KEY}
- LICENSE_MONITOR_BASE_URL=http://license-monitor:8080
- AUTH_OKTA_ID=${AUTH_OKTA_ID}
- AUTH_OKTA_SECRET=${AUTH_OKTA_SECRET}
- AUTH_OKTA_ISSUER=${AUTH_OKTA_ISSUER}
- AUTH_SECRET=${AUTH_SECRET}
- NEXTAUTH_URL=${NEXTAUTH_URL}
  1. Command-line arguments (highest)
  2. Environment variables
  3. Configuration file
  4. Default values (lowest)
  1. Environment variables (highest)
  2. .env.local (development)
  3. .env.production (production build)
  4. .env (all environments)
  5. Default values (lowest)
  1. Never commit secrets to version control
  2. Use secrets managers in production (Vault, AWS Secrets Manager)
  3. Separate environments - use different keys per environment
  4. Rotate secrets regularly
  5. Audit access to environment variables