Skip to content

Add health check status to the dashboard #889

@DamianEdwards

Description

@DamianEdwards

The .NET Aspire ServiceDefaults project defaults to configuring health check endpoints for service projects. Similarly, .NET Aspire components default to registering health checks for the dependencies they integrate with. Currently, the status of these health checks is not visible anywhere by default. We should consider adding UI to the dashboard (add potentially concepts to the AppHost app model) to display the status of resources' health checks.

I can imagine a few click-stops:

  1. Show last known status of health check endpoints, i.e. healthy, degraded, unhealthy, at a glance, perhaps on the relevant resources summary page, e.g. a column with a status indicator icon on the projects page. The interval the health check endpoints are inspected would default to something reasonable (e.g. 10 seconds) and perhaps be configurable either in the dashboard UI and/or in the AppHost app model.
  2. Tracking of health check status changes over time, so that in addition to the last status, a history of status requests and their result could be viewed, e.g. clicking on the last known status indicator in the summary would open a view that shows the history of all status checks.
  3. A detailed view of all the individual health checks that contribute to the overall status reported for a given health checks endpoint (similar to https://github.com/Xabaril/AspNetCore.Diagnostics.HealthChecks#HealthCheckUI, perhaps we consider how we might just integrate that given that we're already depending on the individual health checks from this project from the relevant Aspire component packages)

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-app-modelIssues pertaining to the APIs in Aspire.Hosting, e.g. DistributedApplicationarea-dashboardneeds-retriageStale, old issues that may be closable or actionable

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions