エラーとは何が起きている状態か
システムを使っていると、
「エラーが出た」という状況に必ず出会います。
しかしエラーは、
単に「失敗した」という意味ではありません。
結論から言うと、
エラーとは「システムが想定していない状態に到達したことを知らせる合図」です。
エラーは異常の通知である
エラーは、
システムが自分で「おかしい」と判断した結果です。
- 入力が想定外だった
- 必要なデータが存在しなかった
- 外部との通信が成立しなかった
こうした状況を、
エラーという形で知らせます。
エラーが出ること自体は悪くない
エラーは、
できれば出ないほうがよいもの、
と思われがちです。
しかし実際には、
エラーが出ない方が危険な場合もあります。
問題が起きているのに、
何も知らせず処理を続けるほうが、
結果的に大きな障害につながります。
エラーと失敗は同じではない
エラーと失敗は、
似ているようで役割が違います。
- 失敗
-
処理が目的を達成できなかった結果
-
エラー
- 想定外の状態に入ったことの通知
失敗しても、
想定内であればエラーにならない場合もあります。
エラーは原因ではなく結果
重要な点として、
エラーは「原因」そのものではありません。
エラーは、
何かが原因で起きた結果として現れる状態です。
原因を特定するには、
ログや前後の状況を見る必要があります。
処理とエラーの関係
処理側では、
- エラーが起きる可能性を考慮する
- エラー時の振る舞いを決めておく
ことが重要です。
エラーが出たあと、
どう安全に止めるか、
どう元の状態に戻すか、
まで含めて設計します。
エラーを「想定」するという考え方
安定したシステムでは、
エラーは「想定されている存在」です。
- 起きても壊れない
- 状況が分かる
- 復旧できる
この状態を作ることが、
運用の安定につながります。
まとめ
エラーとは、
- 想定外の状態を知らせる合図
- 問題の存在を表に出す仕組み
- 障害対応につなげる入口
です。
この理解があると、
次に学ぶ
「監視とは何を見ているのか」
が、より整理された形で理解できるようになります。


コメント