Prometheus Remote Write#
If you already run Prometheus, the simplest way to get its metrics into this stack is to have it remote-write to the gateway. Nothing needs to change about how that Prometheus discovers or scrapes its targets.
The gateway runs a prometheus.receive_http listener on port 9090, serving the standard remote-write path:
http://alloy-gateway.<namespace>.svc:9090/api/v1/metrics/writeConfiguring the sender#
In prometheus.yml:
remote_write:
- url: http://alloy-gateway.monitoring.svc:9090/api/v1/metrics/writeAny remote-write client works — a Prometheus server, Prometheus Agent, Grafana Alloy, or an OpenTelemetry Collector with the prometheusremotewrite exporter.
What happens after it arrives#
Received series are converted to OTLP by an internal bridge and join everything the gateway collects itself, so they get the same processing: enrichment, the importance tiers that decide which destinations each series reaches, and the egress filter.
That means remote-written metrics are subject to the same denylist and tiering as scraped ones. If a series you push is not appearing at a destination, check those before the transport.
Securing it#
The listener does not authenticate callers.
Access control is NetworkPolicy, and TLS on this port is governed by pipeline.metrics.gateway.server.tls — a different value from the OTLP and Loki listeners. See the ingress overview.
See also#
- Overview — the four collection paths, and the ports they use.
- Storing — where the metrics go once they are in.
- OpenTelemetry Endpoint — the OTLP equivalent of this page.