# Environment Strategy

## Environments

| Environment | Purpose | Configuration Source |
|-------------|---------|---------------------|
| Development | Local development via docker-compose | appsettings.Development.json + docker-compose env |
| Production | Deployed container | Environment variables |

## Configuration Hierarchy

1. `appsettings.json` — base defaults
2. `appsettings.{Environment}.json` — environment overrides
3. Environment variables — final override (production secrets)

## Key Differences

| Concern | Development | Production |
|---------|-------------|------------|
| Database host | localhost / postgres (container) | Environment variable |
| Google Maps key | appsettings.Development.json | `MapConfig__ApiKey` env var |
| Logging | Console + File | File only |
| Swagger UI | Enabled | Enabled (no auth gate currently) |
| Ports | 18980 (mapped from 8080) | 8080 |

## Observability

- **Logging**: Serilog writing to `./logs/` directory (file sink)
- **Log format**: Structured (Serilog default)
- **Metrics**: None currently implemented
- **Health checks**: PostgreSQL readiness via `pg_isready`
- **Tracing**: None currently implemented
