Skip to content

VictoriaMetrics Agent

  • It's a collection agent
  • Drop-in replacement for the Prometheus scraper and/or Prometheus remote_write forwarder.
  • It's stateless (aside from its disk buffer)
  • Scales horizontally by sharding scrape targets across a set of vmagents (-promscrape.cluster.* flags).

Features

  • Service Discovery
  • It discovers targets (Kubernetes SD, EC2 SD, static configs, etc.) using a config that is essentially Prometheus scrape_configs

  • Scrapping

  • scrapes /metrics, applies relabeling, and forwards samples.

  • Ingestion gateway

  • Can also receive data pushed to it (Prometheus remote_write, Influx, Graphite, OpenTSDB, DataDog, OTLP…) and re-forward it. So it's both a scraper and a proxy/ingest gateway.

  • Buffering

  • Has an on-disk persistent queue (-remoteWrite.tmpDataPath). If the downstream (vminsert) is unreachable, it buffers to disk and retries — this is critical for the cross-account case where the link can blip.

  • Fan-out

  • You can give it multiple -remoteWrite.url flags and it writes to all of them (useful for writing to two regions/clusters), replicating the data.

  • Relabeling & filtering: drop/keep series, rewrite labels, add external labels (e.g. cluster, account, customer), aggregate with stream aggregation (-streamAggr) to reduce cardinality before it ever hits storage.