# ============================================================ # Prometheus Configuration — Turf SaaS # ============================================================ global: scrape_interval: 15s evaluation_interval: 15s external_labels: project: turf-saas env: production # Alertmanager — wire up when available alerting: alertmanagers: - static_configs: - targets: [] # Load alert rules rule_files: - "alerts.yml" # ============================================================ # Scrape targets # ============================================================ scrape_configs: # Prometheus self-monitoring - job_name: prometheus static_configs: - targets: [localhost:9090] # Combined API - job_name: combined-api static_configs: - targets: [combined-api:8790] metrics_path: /metrics scrape_interval: 15s # Dashboard API - job_name: dashboard-api static_configs: - targets: [dashboard-api:8791] metrics_path: /metrics scrape_interval: 15s # Portal - job_name: portal static_configs: - targets: [portal:8792] metrics_path: /metrics scrape_interval: 30s # PostgreSQL exporter (if deployed) - job_name: postgres static_configs: - targets: [postgres-exporter:9187] scrape_interval: 30s # Redis exporter (if deployed) - job_name: redis static_configs: - targets: [redis-exporter:9121] scrape_interval: 30s # Node exporter (host metrics) - job_name: node static_configs: - targets: [host.docker.internal:9100] scrape_interval: 30s