diff --git a/main_dashboard.yaml b/main_dashboard.yaml index 09f9227..35d97a9 100644 --- a/main_dashboard.yaml +++ b/main_dashboard.yaml @@ -7323,6 +7323,58 @@ views: cards: - type: heading heading: By The Numbers + - type: heading + icon: healthicons:health + heading: Health Checks + heading_style: subtitle + - type: custom:gauge-card-pro + segments: + - pos: 0 + color: red + - pos: 50 + color: '#FFA500' + - pos: 75 + color: rgb(255, 255, 0) + - pos: 100 + color: var(--green-color) + needle: true + gradient: true + titles: + primary: + value: Health Score + gradient_resolution: auto + entity: sensor.system_ha_global_health_score + min: 0 + max: 100 + round: small + - type: markdown + content: > + {% set e = 'sensor.system_ha_global_health_score' %} {% set hw = + state_attr(e, 'hardware_score') | int(0) %} {% set app = + state_attr(e, 'application_score') | int(0) %} {% set rec = + state_attr(e, 'recommendations') | default('', true) %} {% set + updates = state_attr(e, 'pending_updates') | default([], true) | + list %} {% set zombies = state_attr(e, 'zombie_count') | int(0) %} + {% set psi = state_attr(e, 'psi_available') | default(false, true) + %} + + | Hardware | Application | | **{{ hw }}**/100 | **{{ app }}**/100 + | + + {% if updates | length > 0 %} 📦 {{ updates | length }} update(s) + pending — [Open Updates](/config/updates) {% endif %} + + {% if zombies > 0 %} 🧟 {{ zombies }} zombie(s) — [Check + Entities](/config/entities) {% endif %} + + {% if rec not in [none, 'unknown', 'unavailable'] and '✅' not in + rec %} {% else %} --- ✅ System healthy. No recommendations. {% + endif %} + + **Metric source**: {% if psi %}🟢 PSI active (CPU + RAM + I/O + + Disk) — hardware score uses 4 components{% else %}⚙️ Classic + sensors (CPU + RAM + Disk) — hardware score uses 3 components{% + endif %} - type: heading icon: mdi:counter heading: Entity Counters