Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add health check status to the dashboard #889

Open
DamianEdwards opened this issue Nov 16, 2023 · 8 comments
Open

Add health check status to the dashboard #889

DamianEdwards opened this issue Nov 16, 2023 · 8 comments
Labels
area-app-model Issues pertaining to the APIs in Aspire.Hosting, e.g. DistributedApplication area-dashboard
Milestone

Comments

@DamianEdwards
Copy link
Member

DamianEdwards commented Nov 16, 2023

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)
@thompson-tomo
Copy link

@DamianEdwards I am thinking the same thing that it would be useful to have a location where a user can go to view the status of all their health checks as described in point 1.

For point 2 what i would like to see is: dotnet/aspnetcore#53670 implemented so that the health check can be tracked over time using metrics. This approach would enable the re-utilization of the existing Metrics UI built for visualizing metrics (hence address point 3) and it benefit the whole eco-system as these health checks can then be utilized by any tool which implements OTEL metrics.

@alrz
Copy link
Member

alrz commented May 29, 2024

Could this possibly be enabled in the standalone dashboard?

@davidfowl
Copy link
Member

@alrz Not likely since the standalone dashboard needs a resource server implementation. There isn't one today.

@adamint
Copy link
Member

adamint commented Oct 9, 2024

@drewnoakes can this be closed?

@DamianEdwards
Copy link
Member Author

This is a different scenario, showing status of the health checks in the apps themselves, not the health checks that the app host is running on them.

@davidfowl davidfowl removed the feature label Oct 16, 2024
@adamint
Copy link
Member

adamint commented Oct 22, 2024

@DamianEdwards right, we do show that in the dashboard UI right now. We can close this

@DamianEdwards
Copy link
Member Author

@adamint the dashboard only knows about details of the health checks registered in the app host. If one manually adds an HTTP health check for a project then that will show up as just healthy or not, right? This still doesn't cover the scenario of displaying the full status of all health checks registered in a service project itself that contribute to the status returned from the HTTP health check. Or am I missing something?

@adamint
Copy link
Member

adamint commented Oct 24, 2024

Ah, I see now. Yes, you’re right

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-app-model Issues pertaining to the APIs in Aspire.Hosting, e.g. DistributedApplication area-dashboard
Projects
None yet
Development

No branches or pull requests

6 participants