Stop hand-rolling SLOs for Prometheus
Define your objectives in YAML. Pyrra generates the recording rules, multi-window burn rate alerts, and dashboards. You ship reliability, not PromQL.
SLO monitoring shouldn't be this painful
Prometheus gives you the metrics. But turning them into actionable SLOs still takes too much manual work.
SLOs require deep PromQL expertise
Calculating error budgets and burn rates means writing and maintaining dozens of recording rules by hand. One typo and your SLO data is wrong.
Alert fatigue drowns out real incidents
Without multi-window burn rate alerts, teams either get paged for every blip or miss slow-burning problems until the error budget is gone.
Every team reinvents the wheel
There's no standard way to define SLOs with Prometheus. Each team builds its own dashboards and alerting, none of it portable or consistent.
What Pyrra handles for you
You define the objective. Pyrra generates the recording rules, alerts, and dashboards automatically.
End alert fatigue
Pyrra generates multi-window, multi-burn-rate alerts at 4 severity levels. You get paged for real incidents, not noise.
Dashboards without the YAML maze
Get Grafana dashboards for every SLO out of the box. No hand-crafted JSON, no copy-paste errors.
See error budgets in real time
Know exactly how much budget remains and how fast you're burning it, before an incident eats it all.
Find the SLOs that matter
Filter by name, labels, or error budget status. Click any label to drill down instantly across services.
Spot trends before they bite
Analyze SLO performance over custom time ranges to catch slow degradation before users notice.
Prioritize what to fix first
Sort SLOs by remaining error budget. The worst performers surface to the top, so you focus where it counts.
From YAML to production in three steps
No PromQL required. Define what matters, and Pyrra wires the rest.
Deploy Anywhere
Pyrra adapts to your infrastructure, whether you're running on bare metal, containers, or Kubernetes
Bare Metal
Run Pyrra as a systemd service on your servers for lightweight, direct deployment
Docker
Deploy with Docker for easy containerized setup and portability across environments
Kubernetes Operator
Tightly integrated with Prometheus Operator for native Kubernetes SLO management
Define Your SLOs
Create ServiceLevelObjective resources in Kubernetes or YAML files. Specify your target, window, and error/total metrics.
apiVersion: pyrra.dev/v1alpha1
kind: ServiceLevelObjective
metadata:
name: api-availability
spec:
target: "99.9"
window: 2w
indicator:
ratio:
errors:
metric: http_requests_total{code=~"5.."}
total:
metric: http_requests_totalAutomatic Recording Rules
Pyrra watches for SLO objects and generates Prometheus recording rules for burn rates at multiple time windows.
# Generated automatically:
http_requests:increase2w
http_requests:burnrate3m
http_requests:burnrate15m
http_requests:burnrate1h
http_requests:burnrate12h
http_requests:burnrate2dMonitor & Alert
View all SLOs in the UI, track error budget consumption, and receive multi-window burn rate alerts when things go wrong.
# Multi-window alerts:
- Severity: critical
Window: 1h, 5m
Burn: 14.4x
- Severity: warning
Window: 6h, 30m
Burn: 6xDeploy Pyrra in minutes, not sprints
Open source under Apache 2.0. Works with Prometheus, Thanos, and Mimir. Run it on bare metal, Docker, or Kubernetes.