ObservaStack

PaymentsQueueBacklog

# PaymentsQueueBacklog

Larkspur Grocers is fictional. This note explains the alert. It is not an incident report. It does not record a page, a customer impact, or an MTTR.

## Signal

- Severity: `warning`
- Team: `payments`
- Pending duration (`for`): 5m

```promql
service:payments_queue_oldest_age_seconds:max > 300
and
max by (service) (deriv(payments_queue_depth[10m])) > 0
```

## What the condition means

The oldest payments message is older than 300 seconds and payments_queue_depth is rising.

## What an on-call would check

1. Read the expression above and the recording rules it uses.
2. Compare it with the promtool unit tests in `tests/rules/`. Every alert except Watchdog has a firing case and a non-firing case.
3. The annotation `runbook_url` is `https://runbooks.larkspur.example/PaymentsQueueBacklog`. That host is a placeholder. This file is the copy in the repo.
4. This stack does not page anyone. Receivers use `*_file` credential paths and `example.invalid`.

返回告警目录