infra
Platform

모듈 맵

[ITSM] 포스트모템 — 장애를 비난이 아니라 학습으로

0 / 64 완료

펼치기
0 / 64 완료0%

IT 서비스·프로젝트 관리 · 14 / 64

[ITSM] 포스트모템 — 장애를 비난이 아니라 학습으로

장애 종료 후 작성하는 포스트모템(사후검토)의 목적과 비난 없는(blameless) 문화, 타임라인·영향·근본원인·잘된 점/아쉬운 점·재발방지 액션아이템으로 구성하는 표준 포맷을 실제 템플릿으로 정리합니다

🚨INCIDENT ALERT
HIGH

새벽 2시, 결제가 40분간 멈췄습니다. 당직이 임시 복구로 불은 껐고, 아침에 두 회의가 잡힙니다.

회의 A: 부장이 "누가 배포했어? 왜 점검도 안 하고 올렸어?"로 시작합니다. 배포한 주니어는 고개를 숙이고, 다들 입을 닫습니다. 30분 뒤 결론은 "앞으로 조심하자". 한 달 뒤, 같은 자리에서 같은 장애로 같은 회의가 열립니다.

회의 B: 진행자가 화이트보드에 타임라인부터 그립니다. "23:58 배포, 00:11 첫 알람, 00:24 원인 추정, 00:38 롤백 시작, 00:42 복구." 그리고 묻습니다. "이 주니어가 점검을 건너뛴 게 그 시점에 자연스러웠던 이유가 뭘까요?" 답이 나옵니다 — "배포 가이드에 점검 단계가 명시돼 있지 않았고, 스테이징이 그날 죽어 있었다." 회의는 사람이 아니라 배포 절차와 스테이징을 고치기로 합니다. 액션아이템 4개에 담당자와 기한이 붙습니다.

같은 장애, 다른 회의. A는 사람을 탓했고, B는 시스템을 고쳤습니다. 이 모듈은 B의 회의 — 비난 없는 포스트모템 — 를 어떻게 설계하고 문서로 남기는지를 다룹니다.

이번 챕터에서 배울 것
  • 1포스트모템의 1차 목적이 책임 추궁이 아니라 학습·재발방지임을 설명할 수 있다
  • 2비난 없는(blameless) 문화가 왜 더 안전하고 더 정확한 학습을 만드는지 근거를 들어 말할 수 있다
  • 3어떤 장애에 포스트모템을 작성해야 하는지(트리거)를 기준으로 판단할 수 있다
  • 4요약·타임라인·영향·근본원인·대응평가·잘된점/아쉬운점·액션아이템으로 이어지는 표준 포맷을 직접 작성할 수 있다
  • 5담당·기한·상태가 붙은 액션아이템을 만들고 끝까지 추적하는 방법을 설명할 수 있다
  • 6내부 포스트모템과 대외 장애보고서를 목적·독자에 맞게 분리해 쓸 수 있다

포스트모템은 무엇을 위한 자리인가

💡개념

목적은 '다시 안 나게 하는 것', 범인 찾기가 아니다

포스트모템(postmortem, 사후검토)은 장애가 종료된 뒤 모여 "무슨 일이 있었고, 왜 그랬고, 다음에 같은 일을 어떻게 막을지"를 정리하는 활동입니다. 핵심은 두 단어입니다 — 학습재발방지.

여기서 가장 흔한 실패는 회의가 '범인 찾기'로 변질되는 것입니다. 그러면 두 가지가 동시에 망가집니다. 첫째, 탓을 듣게 될 사람은 사실을 숨기거나 축소합니다. 그러면 진짜 원인이 드러나지 않습니다. 둘째, "조심하자"는 결심만 남고 시스템은 그대로이므로, 같은 조건이 오면 같은 장애가 다시 납니다.

관점범인 찾기 회의학습·재발방지 회의
첫 질문"누가 그랬어?""무슨 일이 있었나(타임라인)?"
원인을 보는 곳사람의 부주의시스템·프로세스의 약점
참석자의 태도방어·침묵·축소솔직한 공유
결과물"앞으로 조심"담당·기한 붙은 액션아이템
다음 달같은 장애 재발그 경로는 막힘

포스트모템의 가치는 문서를 만드는 데 있지 않습니다. 그 문서에서 나온 액션아이템이 실제로 닫히고, 같은 종류의 불이 다시 나지 않는 데 있습니다.

같은 장애를 다룬 두 회의를 비교해, 범인 찾기 회의는 "누가 그랬어"로 시작해 침묵과 재발로 끝나고 비난 없는 학습 회의는 타임라인으로 시작해 담당·기한 붙은 액션아이템과 재발 차단으로 이어지는 차이를 보여주는 다이어그램

그림: 범인 찾기 회의 vs 비난 없는 학습 회의 — 사람을 탓하면 사실이 숨고, 시스템을 고치면 그 경로가 막힌다.

💡개념

비난 없는(blameless) — 사람은 합리적으로 행동했다고 전제한다

비난 없는 포스트모템의 핵심 전제는 이렇습니다: 사람은 그 시점에 주어진 정보·도구·압박 안에서 합리적으로 행동했다. 그래서 묻는 질문이 "왜 실수했어?"가 아니라 "왜 그 행동이 그 시점에 자연스러웠을까?" 로 바뀝니다.

예를 들어 "점검을 건너뛰고 배포했다"는 사실이 있을 때:

  • 비난형: "왜 점검을 안 했어? 다음부터 꼭 해." → 사람의 의지에 기댄 해결 → 압박받으면 또 건너뜀.
  • 비난 없는형: "그 시점에 점검을 건너뛰는 게 왜 자연스러웠지?" → "배포 가이드에 점검 단계가 없고, 스테이징이 죽어 있어 검증할 곳이 없었다" → 가이드에 점검 단계 추가 + 스테이징 헬스체크 자동화 → 의지가 아니라 구조가 막아줌.

이것은 책임 회피가 아닙니다. 사실을 솔직하게 꺼내야만 진짜 원인을 찾을 수 있고, 진짜 원인은 거의 항상 한 사람의 부주의가 아니라 여러 약한 가드레일의 합입니다. 비난을 거두면 사람들은 자기가 한 일을 숨김없이 말하고, 그 정직함이 더 정확한 학습으로 이어집니다. 단, 비난 없음이 곧 '책임 없음'은 아닙니다 — 액션아이템에는 분명한 담당자가 붙습니다. '사람을 탓하지 않는다'와 '아무도 책임지지 않는다'는 다릅니다.

언제 포스트모템을 작성하는가 — 트리거

💡개념

모든 장애가 아니라, 배울 게 있는 장애에

장애마다 포스트모템을 쓰면 형식만 남고 지칩니다. 그래서 조직은 트리거 기준을 정해 둡니다. 대표적인 트리거는 다음과 같습니다.

트리거설명
메이저 인시던트전사·핵심 서비스 중단, 최상위 우선순위(P1)결제 전체 40분 중단
SLA 위반약속한 가용성·복구시간 목표를 넘김복구목표 30분인데 90분 소요
고객 영향 큰 장애다수 고객·매출·신뢰에 직접 영향주문 데이터 일부 유실
반복 장애같은 종류가 다시 발생같은 배치 실패 3회째
위기일발(near miss)큰 사고로 갈 뻔했으나 운 좋게 피함잘못된 삭제를 직전에 중단

특히 위기일발을 포스트모템 대상으로 삼는 조직은 성숙도가 높습니다. 실제 사고가 나기 전, 가장 싸게 배울 수 있는 기회이기 때문입니다.

이 장애에 포스트모템이 필요한가
전사·핵심 서비스가 멈춘 메이저(P1) 인시던트였다작성 (필수)타임라인·영향·근본원인 전체 포맷으로
약속한 SLA(가용성/복구시간)를 위반했다작성 (필수)어디서 목표를 넘겼는지 대응평가 포함
같은 유형 장애가 반복되고 있다작성 (재발 차단 목적)이전 액션아이템이 왜 안 닫혔는지부터
큰 사고로 갈 뻔했으나 운으로 피했다(near miss)작성 권장가장 싼 학습 기회 — 가드레일 점검
1명 영향·즉시 복구된 경미한 단발 장애보통 생략티켓 기록만, 단 패턴 모니터링은 유지

포스트모템 표준 포맷

💡개념

요약 → 타임라인 → 영향 → 근본원인 → 대응평가 → 잘된점/아쉬운점 → 액션아이템

좋은 포스트모템은 정해진 섹션 순서를 따릅니다. 순서 자체가 '감정(누구 탓)'이 아니라 '사실(무슨 일)'에서 시작하도록 설계돼 있습니다.

섹션무엇을 쓰나주의
요약(Summary)무슨 장애가, 얼마나, 어떻게 끝났는지 3~5줄바쁜 사람이 이것만 읽어도 되게
타임라인(Timeline)발생·탐지·대응·복구의 시각별 사실시각과 사실만, 평가·추측은 분리
영향(Impact)영향 범위·시간·고객/매출 영향추정이면 추정이라 명시
근본원인(Root Cause)왜 일어났는가(직접·기여·근본 원인)사람 이름이 아니라 시스템/프로세스
탐지·대응 평가빨리 알았나, 잘 대응했나"왜 더 빨리 못 알았나"가 핵심
잘된 점(What went well)이번에 작동한 것좋은 점도 자산이므로 반드시 기록
아쉬운 점(What didn't)부족했던 것사람 비난이 아니라 약점 식별
액션아이템재발방지 조치 + 담당 + 기한 + 상태이 섹션이 포스트모템의 결론

여기서 종종 빠뜨리는 게 '잘된 점' 입니다. 장애 회고는 부족했던 것에만 집중하기 쉽지만, 이번에 빨리 알아챈 알람·잘 작동한 롤백 같은 강점도 기록해야 그 강점을 다른 곳에도 복제할 수 있습니다.

직접 해보기 — 포스트모템 한 장 쓰기

1ScenarioBlock의 결제 장애로 포스트모템 작성하기

맨 위 시나리오(새벽 2시 결제 40분 중단)를 가지고, 아래 템플릿의 각 섹션을 직접 채워 보세요. 핵심 규칙 두 가지만 지키면 됩니다 — (1) 타임라인에는 시각과 사실만, (2) 근본원인과 액션아이템에 사람 이름이 아니라 시스템·프로세스만 쓴다.

TEXT
# 포스트모템: 결제 서비스 중단 (2026-06-20)

## 요약
- 무엇: ____ / 언제: ____ / 영향 시간: ____ / 어떻게 종료: ____

## 타임라인 (시각 — 사실)
- 23:58  ____
- 00:11  ____
- 00:24  ____
- 00:38  ____
- 00:42  ____

## 영향
- 영향 서비스: ____ / 영향 범위: ____ / 추정 매출/건수 영향: ____ (추정)

## 근본원인
- 직접 원인: ____
- 기여 원인: ____
- 근본 원인(시스템/프로세스): ____

## 탐지·대응 평가
- 탐지: 첫 알람까지 ____분. 더 빨리 알 수 있었나? ____
- 대응: 복구까지 ____분. 막힌 지점은? ____

## 잘된 점
- ____

## 아쉬운 점
- ____

## 액션아이템
- (아래 표로)

다 채웠다면, 마지막 액션아이템을 항목·담당·기한·상태 표로 옮겨 적어 보세요. 모범 답안 골격은 ObserveBlock에 있습니다.

섹션 순서대로 채운다
🔍실행 후 확인할 것
  • 요약: 23:58 배포 직후 결제 API가 00:11부터 응답 실패, 롤백으로 00:42 정상화. 영향 시간 약 40분.
  • 타임라인은 "23:58 v2 배포 / 00:11 첫 5xx 알람 / 00:24 배포가 원인으로 추정 / 00:38 롤백 시작 / 00:42 복구"처럼 시각+사실만 — "당직이 늦게 봤다" 같은 평가는 타임라인이 아니라 대응평가에
  • 근본원인은 사람("주니어가 점검 누락")이 아니라 시스템("배포 가이드에 점검 단계 부재 + 스테이징 다운으로 검증 불가 + 카나리 없이 전량 배포")으로 적었는가
  • 탐지 평가의 핵심 질문: 첫 알람까지 13분 — 합성 모니터링/에러율 알람으로 더 빨리 알 수 있었는가
  • 잘된 점도 비웠다면 다시 — 예: "롤백 절차가 문서화돼 있어 4분 만에 복구" 같은 강점은 반드시 기록
  • 액션아이템에 담당자와 기한이 모두 붙었는가 — "개선한다"만 있고 담당/기한이 없으면 닫히지 않는다

액션아이템은 끝까지 닫는다

💡개념

담당·기한·상태가 없으면 액션아이템이 아니다

포스트모템에서 가장 자주 죽는 부분이 액션아이템입니다. 회의에서는 "재발방지 하겠습니다"가 쏟아지지만, 담당과 기한이 없으면 그 문장은 다음 장애 때까지 그대로 방치됩니다. 그래서 액션아이템은 항상 다음 네 가지를 갖춘 로 관리합니다.

항목(Action)담당(Owner)기한(Due)상태(Status)
배포 가이드에 사전 점검 체크리스트 단계 추가운영팀 김OO06-27진행중
스테이징 헬스체크 자동화(다운 시 배포 차단)플랫폼팀 이OO07-04대기
결제 API 카나리 배포 도입(전량 배포 금지)결제팀 박OO07-11대기
5xx 급증 합성 모니터링 알람 추가(탐지 단축)SRE 정OO06-25완료

추적의 실전 규칙:

  • 티켓으로 연결: 각 액션아이템은 변경/작업 티켓으로 등록해 평소 백로그와 같은 곳에서 추적합니다. 포스트모템 문서 안에만 있으면 잊힙니다.
  • 상태를 끝까지 갱신: 대기 → 진행중 → 완료. 완료는 "코드 머지"가 아니라 "다음 장애를 실제로 막는 상태"까지.
  • 닫히지 않은 액션아이템 리뷰: 반복 장애의 포스트모템을 열면, 거의 항상 이전 포스트모템의 액션아이템이 안 닫혀 있던 경우입니다. 정기적으로 미완 액션아이템을 점검합니다.

액션아이템에 우선순위를 매겨, 가장 효과 큰 한두 개라도 반드시 끝내는 편이 열 개를 흐지부지 여는 것보다 낫습니다.

좋은 액션아이템의 세 요소(한 사람으로 지정된 담당자, 구체적 날짜의 기한, 무엇으로 완료를 확인하는지 검증 가능한 완료 기준)를 위에 두고, 그 아래 열림·진행·검증·닫힘 네 칸의 상태 보드에 액션아이템 카드가 담당과 기한을 달고 단계별로 이동하는 모습과, 추적하지 않으면 좋은 회의로 끝나고 시스템은 안 바뀌어 같은 장애가 다시 터진다는 경고를 함께 보여주는 다이어그램

좋은 액션아이템은 담당·기한·검증 가능한 완료 기준 세 가지를 갖춘 것이고, 그것을 열림 → 진행 → 검증 → 닫힘 보드 위에서 닫힐 때까지 추적하는 것이 핵심입니다. 여기서 "검증"이 중요합니다 — 완료는 "코드 머지"가 아니라 "그 조치가 실제로 재발을 막는지 확인된" 상태입니다. 정기 점검(예: 주간)으로 보드를 끝까지 닫지 않으면, 아무리 좋은 회의를 해도 시스템은 그대로이고 같은 장애가 몇 달 뒤 똑같이 다시 터집니다.

현장에서 자주 보는 함정

증상: 장애가 날 때마다 깔끔한 포스트모템 문서가 쌓입니다. 그런데 두세 달 뒤 비슷한 장애가 또 나고, 회고를 열어 보면 이전 문서에 이미 똑같은 원인과 똑같은 개선안이 적혀 있습니다.

원인: 포스트모템이 '문서를 만드는 것'에서 끝났기 때문입니다. 액션아이템에 담당·기한이 없었거나, 있어도 티켓으로 연결되지 않아 평소 업무 우선순위에서 밀려 닫히지 않았습니다. 문서는 학습의 '결과'가 아니라 '시작'인데, 결과로 착각한 것입니다.

해결 방향:

  • 모든 액션아이템을 변경/작업 티켓으로 등록하고 평소 백로그와 같은 보드에서 추적.
  • 각 항목에 담당·기한·상태를 의무화 — 없으면 액션아이템으로 인정하지 않음.
  • 스프린트/주간 운영회의에서 미완 액션아이템을 정기 리뷰.
  • 반복 장애 포스트모템의 첫 섹션을 "이전 액션아이템은 왜 닫히지 않았는가"로 시작.

포스트모템의 성숙도는 문서의 양이 아니라 닫힌 액션아이템의 비율로 측정됩니다.

💼
실무 맥락
현업 패턴

한국 현업에서 자주 헷갈리는 지점이 포스트모템과 '장애보고서'의 관계입니다. 둘은 비슷해 보이지만 독자와 목적이 다른 별개의 산출물입니다.

**포스트모템(내부 학습용)**은 운영팀·개발팀 내부가 읽습니다. 솔직한 대응 미흡, 빠뜨린 점검, 부족한 가드레일까지 가감 없이 적어야 학습이 됩니다. 비난 없는 문화가 전제이므로 사람 이름은 빼고, 시스템·프로세스를 깊게 파고듭니다.

**장애보고서(대외/경영진 보고용)**는 고객사·발주사·경영진이 읽습니다. 확정된 사실, 영향 범위, 그리고 재발방지 약속을 절제된 톤으로 요약합니다. 내부 포스트모템의 솔직한 자기비판을 그대로 고객에게 보내면 오해·신뢰 손상·법적 리스크가 생길 수 있어, 사실은 공유하되 문서는 분리합니다.

관리 직무(SM 운영 담당, PM/PMO)에서 당신의 역할은 이 둘을 잇는 것입니다 — 내부 포스트모템에서 나온 재발방지 액션아이템을 협력사 작업 일정과 변경관리 절차에 반영하고, 그 핵심을 대외 장애보고서의 '재발방지 대책'으로 번역해 보고합니다. 협력사가 실제 조치를 하더라도, 액션아이템이 끝까지 닫히는지 추적하고 고객에게 결과를 보고하는 책임은 관리자에게 있습니다. 잘 쓰인 포스트모템 한 장과 끝까지 닫힌 액션아이템은, 같은 고객사에게 같은 사과를 두 번 하지 않게 해 주는 가장 확실한 신뢰 자산입니다.


관련 모듈로 더 깊이:

다음 모듈에서는 이 재발방지 약속이 기대는 토대 — 서비스 수준을 숫자로 약속하는 SLA·OLA·UC(서비스수준협약·운영수준협약·하도급계약)의 구조와, 이들이 어떻게 맞물려 전체 서비스 품질 목표를 떠받치는지를 다룹니다.

지식 확인

퀴즈 — 4문제

Q1

포스트모템(사후검토)의 1차 목적으로 가장 적절한 것은?

Q2

'비난 없는(blameless) 포스트모템'이 실제로 의미하는 바로 가장 정확한 것은?

Q3

포스트모템의 액션아이템을 작성할 때 반드시 포함해야 하는 속성으로 묶인 것은?

Q4

내부 포스트모템과 대외 장애보고서의 관계로 가장 올바른 설명은?

0 / 4 답변

🧪 실습으로 확인하기

Confluence 지식관리 — 운영 지식을 흩어지지 않게

초급

Confluence로 운영 지식베이스(스페이스)를 설계하고, 템플릿·라벨·검색·버전·권한을 활용해 런북·장애 사례·회의록·의사결정 기록이 재사용·검색되는 체계를 만든다.

55📋 3단계💻 직접 환경
실습 시작하기 →

이것도 배워보세요