Documentation Index
Fetch the complete documentation index at: https://docs.foglamp.dev/llms.txt
Use this file to discover all available pages before exploring further.
All services are configured through environment variables, validated at startup.
Anything with a default is optional; everything else is required.
Core
| Variable | Required | Default | Description |
|---|
DATABASE_URL | yes | — | Postgres connection string. |
BETTER_AUTH_SECRET | yes | — | Session-signing secret, min 32 chars. |
BETTER_AUTH_URL | yes | — | Public URL of apps/server (e.g. http://localhost:3000). |
CORS_ORIGIN | yes | — | Dashboard origin allowed to call the API (e.g. http://localhost:3001). |
CORS_EXTRA_ORIGINS | no | — | Additional allowed origins, comma/space separated. |
PORT | no | 3000 | Port for apps/server. Usually injected by the host. |
NODE_ENV | no | development | development, production, or test. |
ClickHouse
| Variable | Default | Description |
|---|
CLICKHOUSE_URL | http://localhost:8123 | ClickHouse HTTP endpoint. |
CLICKHOUSE_USER | default | Username. |
CLICKHOUSE_PASSWORD | “ | Password. |
CLICKHOUSE_DATABASE | foglamp | Database name. |
Ingest (apps/ingest)
| Variable | Default | Description |
|---|
INGEST_PORT | 4000 | Port for the ingest API. |
INGEST_FLUSH_INTERVAL_MS | 1000 | How often the write buffer flushes to ClickHouse. |
INGEST_FLUSH_MAX_ROWS | 1000 | Flush early once this many rows are buffered. |
INGEST_RATE_LIMIT_RPS | 100 | Per-key rate limit (per instance, approximate). |
API_KEY_CACHE_TTL_MS | 60000 | In-memory API-key cache TTL. |
FOGLAMP_SPANS_RETENTION_DAYS | 30 | Span TTL, applied via ALTER … MODIFY TTL on boot. |
Cost & pricing
| Variable | Default | Description |
|---|
OPENROUTER_MODELS_URL | https://openrouter.ai/api/v1/models | Source for model pricing. |
FOGLAMP_PRICING_FILE | — | Local pricing JSON for air-gapped hosts. |
Alerts (apps/server)
| Variable | Default | Description |
|---|
ALERT_EVAL_INTERVAL_MS | 60000 | How often the evaluator sweeps enabled rules. |
ALERT_RENOTIFY_MS | 3600000 | Re-notify cooldown while a rule stays firing. |
Email (optional)
Enables magic-link login and alert notifications. Without these, password login
still works.
| Variable | Description |
|---|
RESEND_API_KEY | Resend API key. |
RESEND_FROM_EMAIL | From address for outbound email. |
Google OAuth (optional)
Enabled only when both are present.
| Variable | Description |
|---|
GOOGLE_CLIENT_ID | OAuth client ID. |
GOOGLE_CLIENT_SECRET | OAuth client secret. |
Seed bootstrap
Used once by the seed script. No static defaults — a random password is
generated and printed if unset.
| Variable | Description |
|---|
ADMIN_EMAIL | Initial admin email. |
ADMIN_PASSWORD | Initial admin password. |
Web dashboard (apps/web)
| Variable | Description |
|---|
NEXT_PUBLIC_SERVER_URL | Public URL of apps/server the browser calls. |
NEXT_PUBLIC_APP_URL | Public URL of the dashboard itself. |
INTERNAL_SERVER_URL | Optional in-cluster server URL for SSR requests. |