python --version
pip install prometheus-client
docker-compose up
Write Prometheus alerting rules, configure Alertmanager routing, and expose custom metrics.
1 # Prometheus alerting rules 2 groups: 3 - name: application 4 interval: 30s 5 rules: 6 - alert: HighErrorRate 7 expr: | 8 sum(rate(http_requests_total{status=~"5.."}[5m])) 9 / sum(rate(http_requests_total[5m])) > 0.05 10 for: 5m 11 labels: 12 severity: critical 13 team: backend 14 annotations: 15 summary: "High HTTP error rate" 16 description: "Error rate is {{ $value | humanizePercentage }} over 5m" 17 18 - alert: PodCrashLooping 19 expr: increase(kube_pod_container_status_restarts_total[15m]) > 3 20 for: 2m 21 labels: 22 severity: warning 23 team: platform 24 annotations: 25 summary: "Pod {{ $labels.pod }} is crash-looping" 26 27 - alert: HighMemoryUsage 28 expr: | 29 container_memory_usage_bytes 30 / container_spec_memory_limit_bytes > 0.9 31 for: 10m 32 labels: 33 severity: warning 34 annotations: 35 summary: "Container {{ $labels.container }} memory > 90%" 36 37 - name: sla 38 rules: 39 - alert: SLABreach 40 expr: | 41 sum(rate(http_requests_total{status=~"2.."}[1h])) 42 / sum(rate(http_requests_total[1h])) < 0.995 43 for: 15m 44 labels: 45 severity: critical 46 team: sre 47 annotations: 48 summary: "SLA breach: availability < 99.5%" 49
Sign in to share your feedback and join the discussion.