48 行
1.6 KiB
YAML
48 行
1.6 KiB
YAML
groups:
|
|
- name: hyb-oa-slo
|
|
rules:
|
|
- alert: HybOAApiAvailabilityLow
|
|
expr: |
|
|
(
|
|
sum(rate(http_server_requests_total{route=~"/api/.*",status!~"5.."}[5m]))
|
|
/
|
|
clamp_min(sum(rate(http_server_requests_total{route=~"/api/.*"}[5m])), 0.001)
|
|
) < 0.999
|
|
for: 10m
|
|
labels:
|
|
severity: warning
|
|
slo: availability
|
|
annotations:
|
|
summary: "hyb-oa API availability below SLO"
|
|
description: "API availability fell below 99.9% for 10m. Check recent releases and feature-flag changes."
|
|
|
|
- alert: HybOADashboardP99High
|
|
expr: |
|
|
histogram_quantile(
|
|
0.99,
|
|
sum by (le, route) (
|
|
rate(http_server_request_duration_seconds_bucket{route=~"/api/dashboard/.*"}[5m])
|
|
)
|
|
) > 0.5
|
|
for: 15m
|
|
labels:
|
|
severity: warning
|
|
slo: latency
|
|
annotations:
|
|
summary: "hyb-oa dashboard P99 latency above SLO"
|
|
description: "Dashboard API P99 exceeded 500ms for 15m. Investigate DB load and aggregation queries."
|
|
|
|
- alert: HybOAApi5xxSpike
|
|
expr: |
|
|
sum(rate(http_server_requests_total{route=~"/api/.*",status=~"5.."}[5m]))
|
|
/
|
|
clamp_min(sum(rate(http_server_requests_total{route=~"/api/.*"}[5m])), 0.001)
|
|
> 0.01
|
|
for: 5m
|
|
labels:
|
|
severity: critical
|
|
slo: availability
|
|
annotations:
|
|
summary: "hyb-oa API 5xx ratio spike"
|
|
description: "API 5xx ratio is above 1% for 5m. Consider force_off for high-risk feature flags."
|