Prometheus Concepts
Internal
Overview
Prometheus is a time series database plus tools to collect metrics to be stored in the database. Prometheus is a solution for system monitoring.
Target
Prometheus will monitor targets. A target can be a server, database, virtual machine, etc.
Pull vs. Push
Prometheus will pull metrics, by scraping the targets. The retrieval is done by invoking HTTP into endpoints, which are defined in the configuration.
Sources of Metrics
Instrumented Applications
Prometheus pulls metrics from instrumented applications. An instrumented application exposes Prometheus metrics on a given URL. Such an application will be identified by Prometheus as a target and scrapped at regular periods.
Exporters
An alternative are prebuilt exporters. Examples: node exporter, SQL exporter, HAProxy exporter.
Push Gateway
Push gateways are used in case of applications or short-lived jobs that do not export metrics directly.