Overview of Prometheus

What is Time Series database?

A time series database is a software system that is optimized for storing and serving time series through associated pairs of time and value. In some fields, time series may be called profiles, curves, traces or trends.

Prometheus For Time Series Metrix

  1. Optimized for Time Series Data
  2. Built in service discovery
  3. Flexible Query Language
  4. Works in a Pull Model
  5. Uses HTTP and Plain text
  6. Stores Metrics in Memory and local disk

Components of Prometheus:

  1. Prometheus server :which scrapes and stores time series data
  2. Client libraries::for instrumenting application code
  3. Push gateway :for supporting short-lived jobs
  4. Exporters::for services like HAProxy, StatsD, Graphite, etc.
  5. Alert manager: to handle alerts
  6. various support tools

How Prometheus works?

Prometheus scrapes metrics from instrumented jobs, either directly or via an intermediary push gateway for short-lived jobs. It stores all scraped samples locally and runs rules over this data to either aggregate and record new time series from existing data or generate alerts.