Skip to content

Run a local Prometheus, AlertManager, Push Gateway, and Grafana locally using Docker compose

Notifications You must be signed in to change notification settings

evnsio/prom-stack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Prom-Stack

This repo contains a quick start for running a development instance of Prometheus.

What's Included?

  • Prometheus Server
  • Push Gateway
  • Alertmanager
  • Grafana
               +--------------+
               |              |
               |   Grafana    |
               |              |
               +--------------+
                      |
                      | datasource
                      |
               +------v-------+           +--------------+
         +-----+              |           |              |
  scrape |     |  Prometheus  +-----------> AlertManager |
         +----->    Server    |   push    |              |
               |              |   alerts  |              |
               +--------------+           +--------------+
                      |
                      | scrape
                      |
               +------v-------+
               |              |
               | Pushgateway  |
               |              |
               +--------------+

How do I use it?

  1. Clone the repo.
  2. Navigate to the directory and run make up
  3. Go to http://localhost:9090 for Prometheus.
  4. Go to http://localhost:9091 for the Push Gateway.
  5. Go to http://localhost:9093 for Alertmanager.
  6. Go to http://localhost:3000 for Grafana.

Guides

Add a Scrape Target

To add a new scrape target, edit the scrape_configs section of /prometheus/prometheus.yml and run make reload-prom

See here for more details on scrape configs.

Add an alert

To add a new alert, create or edit a *.rules file in the prometheus/alerts directory and run make reload-prom

Use the Push Gateway

The Pushgateway can be used as an intermediary to push metrics, where the Prometheus pull model doesn't fit. Examples of this include short lived processes or batch jobs.

To push a metric in Prom-Stack, you can do something like this:

echo "mymetric 99" | curl --data-binary @- http://localhost:9091/metrics/job/my-push-job

You can confirm this has worked by navigating to the Push Gateway UI or the Prometheus expression browser.

About

Run a local Prometheus, AlertManager, Push Gateway, and Grafana locally using Docker compose

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published