エラーハンドリング
本ドキュメントはマイクロサービスのエラーハンドリングポリシーについてまとめています。
新規でプロダクトを作成する際は本ポリシーに従って開発してください。
エラーレスポンス¶
例外発生時は、エラーコード(整数)とエラーメッセージ(文字列)をレスポンスボディに含めてください。
トレーサビリティの向上と統合 UI でアラート表示する際に必要になります。
エラーメッセージはそのままユーザに表示されるので、日本語で記述してください。
1 2 3 4 | |
よく使うステータスコード¶
使うであろうステータスコードを下記にまとめています。
必要があれば、他のものを採用していただいても OK です。ただし、全ステータスコードを 400 に統一するのは避けましょう。
| ステータスコード | 概要 |
|---|---|
| 400 Bad Request | 不正なリクエストボディが指定された場合 |
| 401 Unauthorized | 未認証の場合 |
| 403 Forbidden | 認証済みだが、権限がない場合 |
| 404 Not Found | リソースが存在しない場合 |
| 409 Conflict | リソースが既に存在する場合 |
| 500 Internal Server Error | 予期せぬエラーが発生した場合 |
エラーコード¶
採番規約¶
5 桁目はプロダクトごとに割り当てられます。
| ステータスコード | エラーコード領域 |
|---|---|
| 400 Bad Request | X0000~X0999 |
| 401 Unauthorized | X1000~X1999 |
| 403 Forbidden | X2000~X2999 |
| 404 Not Found | X3000~X3999 |
| 409 Conflict | X4000~X4999 |
| 500 Internal Server Error | X5000~X5999 |
プロダクトごとのエラーコード領域¶
| プロダクト | エラーコード領域 |
|---|---|
| api-gateway | 10000~19999 |
| IAM | 20000~29999 |
| paymaster(会計システム) | 30000~39999 |
| reminder | 40000~49999 |