┌────┐ ┌───────────┐ ┌──────────┐ ┌────────────┐ ┌───────────────┐ │curl│ │Pushgateway│ │Prometheus│ │Alertmanager│ │ExternalService│ └─┬──┘ └─────┬─────┘ └────┬─────┘ └─────┬──────┘ └───────┬───────┘ │ POST metrics │ │ │ │ │ ( for non alert ) │ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─> │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ scrape metrics │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─> │ │ │ │ │ │ │ │ POST metrics │ │ │ │ │ ( for alert ) │ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─> │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ scrape metrics │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─> │ │ │ │ │ │ │ │ │ │ send alert info │ │ │ │ │ ( firing ) │ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ > │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ send alert info │ │ │ │ │ ( firing ) │ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ >│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│ │ │ │ │ │ │ POST metrics │ │ │ │ │ ( for resolve alert )│ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─> │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ scrape metrics │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─> │ │ │ │ │ │ │ │ │ │ send alert info │ │ │ │ │ ( resolved ) │ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ > │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ ╔════════╧══════════╗ │ │ │ │ ║if send_resolved ░║ │ │ │ │ ║ config is true ║ │ │ │ │ ╚════════╤══════════╝ │ │ │ │ │ send alert info │ │ │ │ │ ( resolved ) │ │ │ │ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ >│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ <─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│ ┌─┴──┐ ┌─────┴─────┐ ┌────┴─────┐ ┌─────┴──────┐ ┌───────┴───────┐ │curl│ │Pushgateway│ │Prometheus│ │Alertmanager│ │ExternalService│ └────┘ └───────────┘ └──────────┘ └────────────┘ └───────────────┘