TL;DR

誰かが間違いをした、あるいは起きてはならないことが偶発的に起きたときに、「誰」が「どのように」復旧させるかまで設計すること。

仕組み

復旧させる「誰」は、ライブラリから見たアプリケーションのコードかもしれないし、PagerDuty を持った運用チームのメンバーかもしれない。復旧作業をする人も、エラー処理のシステムの一部である。

呼び出し元にエラーを返すのが基本だが、すぐに終了させる、判断を委ねる、ログを出力するのが適切な場合もある。どの場合でも、復旧作業に必要な情報は何かを考え、それをエラーに持たせることがエラー処理の設計である。

そして、その復旧作業で必要な情報は何かを考え、エラーに情報として持たせることが、エラー処理の設計です。

出典