← Workflows

阅读中文版本

On-Call Fairness Review Workflow

Measure page distribution and out-of-hours load across the rotation, look for unfair clustering, and adjust the schedule and alerting to balance the burden.

beginner~60 minoncalloperationswellbeing

Objective

Keep on-call sustainable by detecting and correcting unfair distribution of pages and sleep disturbance.

Environment

  • Paging and schedule data
  • A rotation with multiple participants

Steps

1. Measure pages per person, especially out-of-hours

Measure pages per person, especially out-of-hours pages.

Expected state: The distribution is visible.

2. Identify unfair clustering and its causes

Identify unfair clustering and its causes such as service ownership.

Expected state: Root causes are known.

3. Adjust rotation, follow-the-sun, or alerting

Adjust rotation, follow-the-sun, or alerting to balance the load.

Expected state: The burden is redistributed.

4. Review periodically and act when imbalance

Review periodically and act when imbalance recurs.

Expected state: Fairness is maintained.

Decision points

Adjust schedules or fix the alerts?

  • Fix alerts first
  • Rotate differently

Fix noisy alerts first; a fair rotation of too many pages still burns people out.

Include out-of-hours weight?

  • Yes, weight them
  • Count all pages equally

Weight out-of-hours pages higher; a 3 AM page costs far more than a daytime one.

Expected outcome

A balanced on-call burden with recurring out-of-hours paging reduced and the schedule adjusted fairly.

Verification

Confirm the paging distribution is within an agreed band and that out-of-hours pages dropped after the changes.

Cleanup

Record the review and any schedule changes for the next rotation period.

Overview

Keep on-call sustainable by detecting and correcting unfair distribution of pages and sleep disturbance. Confirm the paging distribution is within an agreed band and that out-of-hours pages dropped after the changes.

Steps

  1. Measure pages per person, especially out-of-hours pages. Expected state: The distribution is visible.
  2. Identify unfair clustering and its causes such as service ownership. Expected state: Root causes are known.
  3. Adjust rotation, follow-the-sun, or alerting to balance the load. Expected state: The burden is redistributed.
  4. Review periodically and act when imbalance recurs. Expected state: Fairness is maintained.
# pages per person over the period
awk '{print $2}' pages.log | sort | uniq -c | sort -nr

Verification

  • A balanced on-call burden with recurring out-of-hours paging reduced and the schedule adjusted fairly.

Decision points

  • Adjust schedules or fix the alerts? Options: Fix alerts first; Rotate differently. Recommended: Fix noisy alerts first; a fair rotation of too many pages still burns people out.
  • Include out-of-hours weight? Options: Yes, weight them; Count all pages equally. Recommended: Weight out-of-hours pages higher; a 3 AM page costs far more than a daytime one.