Skip to content

Resilience Dashboard — Circuit Breaker, Degradation & System Health #301

@ElioNeto

Description

@ElioNeto

Resilience Dashboard

Create an Angular page that displays the system resilience status: circuit breakers, degradation modes, panic recovery, memory limits, and disk monitoring.

Backend Endpoints Needed

GET /admin/resilience/circuit-breakers   — List circuit breaker states
GET /admin/resilience/degradation        — Current degradation mode
GET /admin/resilience/panic-history      — Recent panic/recovery events
GET /admin/resilience/memory             — Memory limiter status
GET /admin/resilience/disk               — Disk monitor status

UI Requirements

Circuit Breaker Panel

  • Cards: Each circuit breaker state (Closed/Open/Half-Open)
  • Thresholds: Display configured thresholds (failure count, timeout)
  • Reset Button: Manual reset for open circuits
  • History: Timeline of state transitions

Degradation Mode

  • Badge: Current mode (Normal/Degraded/ReadOnly/Emergency)
  • Reason: Display what triggered the degradation
  • Actions: Buttons to acknowledge or attempt recovery

Memory & Disk

  • Memory Gauge: Current usage vs limit
  • Disk Gauge: Free space vs threshold
  • Warning Thresholds: Visual indicators when approaching limits
  • Trend: Recent history chart (last 60 data points)

Panic Recovery

  • Table: Recent panics with timestamps, error messages, recovery status
  • Details: Expandable row with full error context

Component Structure

app/
  pages/
    resilience/
      resilience.component.ts
      resilience.component.html
      resilience.component.scss

Acceptance Criteria

  • Circuit breaker states displayed and color-coded
  • Degradation mode shows current level
  • Memory gauge updates correctly
  • Disk gauge updates correctly
  • Panic history table loads
  • Auto-refresh every 10 seconds
  • Responsive layout

Parent Epic

#290

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions