kafka-consumer-group-stuck-restart

Restart a consumer group that has stopped advancing its offsets, after confirming the lag is real and not a monitoring artefact.

Procedure

  1. start start. Goes next to s1
  2. check Capture current lag. Goes on_fail to s9; next to s2
  3. decision Determine lag spread. Goes if all to s3; if single to s4; if default to s9
  4. action Restart the consumer group, RW (reversible-write). Goes next to s5
  5. check Inspect the lagging partition. Goes on_fail to s9; next to s5
  6. escalate Escalate to the platform team. Terminal
  7. wait Wait for offsets to advance. Goes retry to s5; next to __end_success
  8. end success. Terminal

Open the graph on its own page — larger, printable, and an address you can send.

Walk it without running it — you answer what your environment would answer, and the path, the capabilities, the approvals and the distance back to an undo come out of the document. Nothing executes; there is no Run button here and there will not be one.

Trust

T2 · attested 2026-10-11 · runbooks.directory

Nobody has attested this record. That is the ordinary case: T2 is what the catalog can check on its own, and T3 needs somebody to run the procedure and sign for it.

  • Link liveness has not been checked: it needs a network and the catalog builds without one. Run pnpm gates --online where there is one.

Steps

  1. s1 check — Capture current lag
  2. s2 decision — Determine lag spread
  3. s3 action — Restart the consumer group (reversible-write)
  4. s4 check — Inspect the lagging partition
  5. s5 wait — Wait for offsets to advance
  6. s9 escalate — Escalate to the platform team

Capabilities

This is a privilege request. Check it against your own allowlist before running.

  • cli:kafka-consumer-groups — used by s1, s3, s4

Provenance

Source
https://runbooks.directory/r/std/kafka-consumer-group-stuck-restart/source.md
Fetched
2026-09-02
Source last checked
not since it was captured on 2026-09-02 — recorded as current
Licence
CC-BY-4.0
How it got here
Written by this catalog's maintainers and reviewed in full.
Highest risk in this procedure
reversible-write

Take it with you

Run it under supervision

Runs here, on your machine, under supervision: every step is proposed before it happens, an approval gate stops for you, and a failed expectation goes where the procedure says rather than on to the next step. Nothing is sent anywhere. To supervise an agent that is doing the work instead, runbooks hook sits in its tool-call path.

npx @runbooks/cli run std/kafka-consumer-group-stuck-restart@1.0.0 --as "$(whoami)" \
  --input group=<consumer group id>