46 lines
1.6 KiB
YAML
46 lines
1.6 KiB
YAML
groups:
|
|
- name: nereus-api
|
|
rules:
|
|
- alert: NereusAPIHighErrorRate
|
|
expr: |
|
|
sum(rate(nereus_http_requests_total{path=~"/api/v1/.*",status=~"5.."}[2m]))
|
|
/
|
|
clamp_min(sum(rate(nereus_http_requests_total{path=~"/api/v1/.*"}[2m])), 0.001)
|
|
> 0.05
|
|
for: 1m
|
|
labels:
|
|
severity: critical
|
|
annotations:
|
|
summary: Nereus API error rate exceeds 5 percent
|
|
description: The API has returned more than 5 percent HTTP 5xx responses for one minute.
|
|
|
|
- alert: NereusAPIHighLatency
|
|
expr: |
|
|
histogram_quantile(
|
|
0.95,
|
|
sum by (le) (rate(nereus_http_request_duration_seconds_bucket{path=~"/api/v1/.*"}[5m]))
|
|
) > 1
|
|
for: 2m
|
|
labels:
|
|
severity: warning
|
|
annotations:
|
|
summary: Nereus API p95 latency exceeds one second
|
|
description: The API p95 request duration has exceeded one second for two minutes.
|
|
|
|
- alert: NereusAPIReadinessFailing
|
|
expr: sum(rate(nereus_http_requests_total{path="/readyz",status="503"}[2m])) > 0
|
|
for: 1m
|
|
labels:
|
|
severity: critical
|
|
annotations:
|
|
summary: Nereus API cannot reach its database
|
|
description: Readiness requests have returned HTTP 503 for one minute.
|
|
|
|
- alert: NereusAPIDown
|
|
expr: up{job="nereus-api"} == 0
|
|
for: 1m
|
|
labels:
|
|
severity: critical
|
|
annotations:
|
|
summary: Prometheus cannot scrape the Nereus API
|
|
description: The Nereus API metrics endpoint has been unreachable for one minute.
|