Push the rest
This commit is contained in:
@@ -1,59 +1,68 @@
|
||||
APP_NAME=otel-bi-backend
|
||||
# ---------------------------------------------------------------------------
|
||||
# OTel BI Backend — local development (without Docker)
|
||||
# Copy to .env and fill in your values.
|
||||
# Run services from the backend/ directory so pydantic-settings finds .env.
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
APP_ENV=dev
|
||||
LOG_LEVEL=INFO
|
||||
API_HOST=0.0.0.0
|
||||
API_PORT=8000
|
||||
|
||||
# ============================================================
|
||||
# Go analytics service (same image, ROLE=analytics)
|
||||
# Set this to wherever the analytics container is reachable.
|
||||
# ============================================================
|
||||
ANALYTICS_SERVICE_URL=http://localhost:8080
|
||||
|
||||
# MSSQL — required when ROLE=analytics
|
||||
# go-mssqldb DSN: sqlserver://user:pass@host:port?database=name&...
|
||||
AW_MSSQL_DSN=sqlserver://sa:YourStrongPassword123!@localhost:1433?database=AdventureWorksDW2022&TrustServerCertificate=true&ApplicationIntent=ReadOnly
|
||||
WWI_MSSQL_DSN=sqlserver://sa:YourStrongPassword123!@localhost:1433?database=WideWorldImportersDW&TrustServerCertificate=true&ApplicationIntent=ReadOnly
|
||||
|
||||
# ============================================================
|
||||
# PostgreSQL — write store for derived data
|
||||
# ============================================================
|
||||
POSTGRES_HOST=localhost
|
||||
POSTGRES_PORT=5432
|
||||
POSTGRES_DATABASE=otel_bi
|
||||
POSTGRES_USERNAME=otel_bi
|
||||
POSTGRES_PASSWORD=otel_bi_dev
|
||||
# prefer for dev, require for production
|
||||
POSTGRES_SSLMODE=prefer
|
||||
|
||||
# Optional: override the generated connection URL directly
|
||||
# POSTGRES_CONNECTION_STRING=postgresql+psycopg://otel_bi:otel_bi_dev@localhost:5432/otel_bi?sslmode=prefer
|
||||
|
||||
# ============================================================
|
||||
# Frontend JWT validation
|
||||
# Validates the Bearer token the browser sends on every request.
|
||||
# ============================================================
|
||||
# Set false to disable auth entirely (dev only)
|
||||
REQUIRE_FRONTEND_AUTH=false
|
||||
|
||||
# When REQUIRE_FRONTEND_AUTH=true, fill in your OIDC provider:
|
||||
# FRONTEND_JWT_ISSUER_URL=https://your-idp.example.com/realms/your-realm
|
||||
# FRONTEND_JWT_AUDIENCE=your-api-audience
|
||||
# FRONTEND_JWT_JWKS_URL=https://your-idp.example.com/realms/your-realm/protocol/openid-connect/certs
|
||||
# FRONTEND_REQUIRED_SCOPES=openid profile
|
||||
|
||||
# ============================================================
|
||||
# Frontend OIDC runtime config (served to the SPA via GET /api/config
|
||||
# — NOT baked into the JS bundle)
|
||||
# ============================================================
|
||||
# FRONTEND_OIDC_CLIENT_ID=otel-bi-frontend
|
||||
# FRONTEND_OIDC_SCOPE=openid profile email
|
||||
|
||||
CORS_ORIGINS=http://localhost:5173
|
||||
|
||||
MSSQL_HOST=localhost
|
||||
MSSQL_PORT=1433
|
||||
MSSQL_USERNAME=readonly_user
|
||||
MSSQL_PASSWORD=readonly_password
|
||||
MSSQL_DRIVER=ODBC Driver 18 for SQL Server
|
||||
MSSQL_TRUST_SERVER_CERTIFICATE=false
|
||||
|
||||
WWI_DATABASE=WorldWideImporters
|
||||
AW_DATABASE=AdventureWorks2022DWH
|
||||
# Optional direct URLs (override generated URLs):
|
||||
# WWI_CONNECTION_STRING=mssql+pyodbc://user:pass@host:1433/WorldWideImporters?driver=ODBC+Driver+18+for+SQL+Server&ApplicationIntent=ReadOnly
|
||||
# AW_CONNECTION_STRING=mssql+pyodbc://user:pass@host:1433/AdventureWorks2022DWH?driver=ODBC+Driver+18+for+SQL+Server&ApplicationIntent=ReadOnly
|
||||
|
||||
POSTGRES_HOST=localhost
|
||||
POSTGRES_PORT=5432
|
||||
POSTGRES_DATABASE=otel_bi_app
|
||||
POSTGRES_USERNAME=otel_bi_app
|
||||
POSTGRES_PASSWORD=otel_bi_app
|
||||
POSTGRES_SSLMODE=require
|
||||
# Optional direct URL:
|
||||
# POSTGRES_CONNECTION_STRING=postgresql+psycopg://otel_bi_app:otel_bi_app@localhost:5432/otel_bi_app?sslmode=prefer
|
||||
POSTGRES_REQUIRED=true
|
||||
|
||||
QUERY_SERVICE_URL=http://localhost:8101
|
||||
ANALYTICS_SERVICE_URL=http://localhost:8102
|
||||
PERSISTENCE_SERVICE_URL=http://localhost:8103
|
||||
REQUEST_TIMEOUT_SECONDS=20
|
||||
REQUIRE_FRONTEND_AUTH=true
|
||||
FRONTEND_JWT_ISSUER_URL=https://<your-idp-domain>/realms/<your-realm>
|
||||
FRONTEND_JWT_AUDIENCE=otel-bi-api
|
||||
FRONTEND_JWT_JWKS_URL=https://<your-idp-domain>/realms/<your-realm>/protocol/openid-connect/certs
|
||||
FRONTEND_JWT_ALGORITHM=RS256
|
||||
FRONTEND_REQUIRED_SCOPES=openid profile email
|
||||
FRONTEND_CLOCK_SKEW_SECONDS=30
|
||||
INTERNAL_SERVICE_AUTH_ENABLED=true
|
||||
INTERNAL_SERVICE_SHARED_SECRET=replace-with-strong-random-secret-min-32-bytes
|
||||
INTERNAL_SERVICE_TOKEN_TTL_SECONDS=120
|
||||
INTERNAL_SERVICE_TOKEN_AUDIENCE=bi-internal
|
||||
INTERNAL_SERVICE_ALLOWED_ISSUERS=api-gateway
|
||||
INTERNAL_TOKEN_CLOCK_SKEW_SECONDS=15
|
||||
# ============================================================
|
||||
# Reports — filesystem path for generated XLSX + PDF files
|
||||
# Mount a K8s CSI / SMB PVC here in production.
|
||||
# ============================================================
|
||||
REPORT_OUTPUT_DIR=/tmp/otel-bi-reports
|
||||
|
||||
# ============================================================
|
||||
# OpenTelemetry
|
||||
# ============================================================
|
||||
OTEL_SERVICE_NAME=otel-bi-backend
|
||||
OTEL_SERVICE_NAMESPACE=final-thesis
|
||||
OTEL_COLLECTOR_ENDPOINT=http://localhost:4318
|
||||
# K8s + Alloy example:
|
||||
# OTEL_COLLECTOR_ENDPOINT=http://alloy.monitoring.svc.cluster.local:4318
|
||||
OTEL_EXPORT_TIMEOUT_MS=10000
|
||||
|
||||
FORECAST_HORIZON_DAYS=30
|
||||
DEFAULT_HISTORY_DAYS=365
|
||||
RANKING_DEFAULT_TOP_N=10
|
||||
|
||||
Reference in New Issue
Block a user