# Fragment for the *external* production Prometheus.
# Do NOT merge into infra/prometheus/prometheus.yml — that file is the local-dev stack
# (scrapes host.docker.internal:5270). Copy or include this under scrape_configs:
# on the production Prometheus host.
#
#   - job_name: vigilcare_api_prod
#     ...
#
# Restrict network access so only Prometheus can reach :5270/metrics —
# the endpoint is AllowAnonymous by design (ASP.NET FallbackPolicy would
# otherwise return 401). See docs/ops/production-observability.md.

- job_name: vigilcare_api_prod
  scrape_interval: 15s
  metrics_path: /metrics
  static_configs:
    - targets: ["vigilcare-host.internal:5270"]
      labels:
        environment: production
        service: clinical-api

- job_name: vigilcare_gateway_prod
  scrape_interval: 30s
  metrics_path: /metrics
  static_configs:
    - targets: ["vigilcare-host.internal:5081"]
      labels:
        environment: production
        service: ward-gateway

# Optional: probe /health/ready via blackbox_exporter (http_2xx module).
# Requires a blackbox_exporter job already defined on the Prometheus host.
# - job_name: vigilcare_api_ready_probe
#   metrics_path: /probe
#   params:
#     module: [http_2xx]
#   static_configs:
#     - targets: ["http://vigilcare-host.internal:5270/health/ready"]
#   relabel_configs:
#     - source_labels: [__address__]
#       target_label: __param_target
#     - source_labels: [__param_target]
#       target_label: instance
#     - target_label: __address__
#       replacement: blackbox-exporter:9115
