Prometheus MonitoringScrape · Filter · Namespace · Custom metrics

Scrape Prometheus endpoints with one agent

The Atatus Infrastructure Agent reads any Prometheus-compatible endpoint, keeps the metrics you choose and stores them as custom metrics. Chart and alert on them next to your traces and logs.

Bundled with the agentInclude and exclude filtersLinux and Windows
01 / Collect

Point at an endpoint. Keep what you need.

Type include and exclude globs and a namespace. Lines on the endpoint drop out as you type.

GET localhost:9090/metricsexposition text
  1. # HELP http_requests_total Total HTTP requests.
  2. # TYPE http_requests_total counter
  3. http_requests_total{code="200",handler="/api/checkout"} 184220
  4. http_requests_total{code="500",handler="/api/checkout"} 312
  5. # TYPE http_request_duration_seconds histogram
  6. http_request_duration_seconds_bucket{le="0.25"} 9812
  7. http_request_duration_seconds_sum 2104.7
  8. http_request_duration_seconds_count 10124
  9. # TYPE process_cpu_seconds_total counter
  10. process_cpu_seconds_total 3412.4
  11. # TYPE process_resident_memory_bytes gauge
  12. process_resident_memory_bytes 1.95e+08
  13. # TYPE go_goroutines gauge
  14. go_goroutines 212
  15. # TYPE go_gc_duration_seconds summary
  16. go_gc_duration_seconds{quantile="0.5"} 0.0014
Custom metrics in Atatus4 of 8 names kept
  • checkout.http_requests_totalstored
  • checkout.http_request_duration_seconds_bucketstored
  • checkout.http_request_duration_seconds_sumstored
  • checkout.http_request_duration_seconds_countstored
  • process_cpu_seconds_totalfiltered
  • process_resident_memory_bytesfiltered
  • go_goroutinesfiltered
  • go_gc_duration_secondsfiltered
- hosts: ["localhost:9090"]  metrics_path: /metrics  enabled: true  namespace: checkout  metrics_filters:    include: ["http_*"]

Sample endpoint · separate several globs with commas

02 / Setup

Pick the endpoints. Check them first.

Your app, RabbitMQ and CockroachDB all expose Prometheus metrics. Add each one as an entry and curl it to see what the agent will read.

/etc/atatus-infra-agent/conf.d/prometheus.d/prometheus.yaml2 targets
- hosts: ["localhost:9090"]  metrics_path: /metrics  enabled: true  namespace: checkout- hosts: ["localhost:15692"]  metrics_path: /metrics  enabled: true  namespace: rabbitmq
$ curl http://localhost:15692/metrics# TYPE rabbitmq_queue_messages_ready gaugerabbitmq_queue_messages_ready 40# TYPE rabbitmq_connections gaugerabbitmq_connections 12
  • Nothing to installBundled with the Atatus Infrastructure Agent
  • Agent 4.0.0 or laterLinux and Windows
  • Custom metricsEvery kept metric, ready to chart and alert on
  • Then restartsudo service atatus-infra-agent restart
03 / Use them

Every scraped metric, typed and tagged.

Scraped metrics sit with every other metric in Metrics. Open one to see its hosts and tags.

Metricscustom metrics
The Atatus metric list with a metric summary showing hosts, tag keys and tag values
FAQ

Questions about Prometheus monitoring

Pricing, deployment, data and the agent. If something is missing, a person will answer it on a demo call.

Talk to an engineer
  • Yes. The Atatus Infrastructure Agent scrapes any endpoint that exposes metrics in the Prometheus format, such as your app's /metrics, the RabbitMQ Prometheus plugin or CockroachDB's /_status/vars. Your exporters and endpoints stay as they are.

  • Nothing new to install: the Prometheus integration is bundled with the Atatus Infrastructure Agent 4.0.0 or later on Linux and Windows. Add hosts, metrics_path and namespace to /etc/atatus-infra-agent/conf.d/prometheus.d/prometheus.yaml, then restart the agent with sudo service atatus-infra-agent restart.

  • As custom metrics. The namespace you set is added as a prefix to every metric name, so metrics from your app, RabbitMQ and CockroachDB stay apart. You can chart them and alert on them like any other metric in Atatus.

  • Yes. Each entry in prometheus.yaml has its own hosts list, metrics_path, namespace and filters, so one agent can scrape your apps and services side by side.

  • Yes. Set metrics_filters with include and exclude name patterns, for example include http_* or exclude go_*. Only matching metrics are stored, which keeps your custom metric volume down.

  • Run curl against the endpoint before you add it, for example curl http://localhost:15692/metrics for RabbitMQ or curl http://localhost:8080/_status/vars for CockroachDB. What that returns in the Prometheus format is what the agent scrapes.

Get started

Keep Prometheus. Drop the upkeep.

Atatus scrapes your Prometheus endpoints so you can chart and alert on them next to everything else.

  • SaaS
  • On-premises
  • Hybrid
  • BYOC
  • No per-user pricing

Compare Atatus with Datadog · Zabbix