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:
- 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.
- 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.
- 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)
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: