Pushgateway is a component of Prometheus monitoring system that allows users to push metrics from short-lived service jobs to a Prometheus server. It acts as an intermediary for ephemeral jobs that cannot be scraped directly by the Prometheus server. With Pushgateway, users can push custom metrics from batch jobs, cron jobs, and other non-service-based systems into the Prometheus database.
The Pushgateway provides an HTTP API that enables users to submit samples for any arbitrary metric without having to expose any endpoint for scraping. The data sent through the Pushgateway is stored in memory and made available for scraping via HTTP requests or queries from PromQL (Prometheus Query Language).
Pushgateway is particularly useful in situations where it’s not practical or feasible to run a dedicated Prometheus server for each short-lived job or task. Examples include one-off batch processes, scheduled tasks, and ad-hoc scripts.
Overall, Pushgateway simplifies the collection of metrics from non-service-based systems and helps ensure completeness of monitoring data across an organization’s infrastructure.