Degradedステータスヘルスチェックレスポンス

アプリケーションが部分的に機能しているが一部のコンポーネントに問題がある劣化サービス状態のヘルスチェックレスポンスを設計します。HTTP 429にマッピングされます。

Detailed Format

詳細な説明

Degradedステータスレスポンス

DEGRADEDステータスは、サービスが部分的に稼働しているが、一部の依存関係に問題が発生していることを示します。完全な健全と完全なダウンの中間状態です。

レスポンス形式

{
  "status": "DEGRADED",
  "timestamp": "2024-01-15T10:30:00.000Z",
  "httpStatusCode": 429,
  "checks": {
    "database": {
      "status": "UP",
      "duration": "15ms",
      "message": "PostgreSQL responding normally"
    },
    "redis": {
      "status": "DEGRADED",
      "duration": "250ms",
      "message": "Redis latency elevated"
    },
    "email-service": {
      "status": "DOWN",
      "duration": "5000ms",
      "message": "SMTP server connection timeout"
    }
  }
}

DEGRADEDを使用するタイミング

  • 非重要コンポーネントがダウンしている場合(メール、通知、分析)
  • パフォーマンスが許容値以下だが機能している場合
  • フォールバックメカニズムが動作中の場合
  • リソース制約によるレート制限が有効な場合

HTTP 429マッピング

HTTP 429(Too Many Requests)をDEGRADED状態に使用することで以下を示します:

  • サービスは生きている(503ではない)
  • クライアントは負荷を減らすかバックオフ付きでリトライすべき

アラート戦略

ステータス アラートレベル アクション
UP なし 通常運用
DEGRADED 警告 オンコール通知、調査
DOWN 重大 オンコールページ、即時対応

ユースケース

非重要機能(メール通知、分析トラッキング、CDNキャッシュ)が失敗してもアプリケーション全体がダウンしないグレースフルデグラデーションパターンを持つサービス。

試してみる — Health Check Endpoint Designer

フルツールを開く