namespace HrynCo.Common.HealthChecks.Defaults; using HrynCo.Common.HealthChecks.Interfaces; using Microsoft.Extensions.Diagnostics.HealthChecks; public sealed class DbServiceHealthCheck : IServiceHealthCheck { private readonly IDatabaseConnectionChecker _checker; public DbServiceHealthCheck(IDatabaseConnectionChecker checker) { _checker = checker; } public async Task CheckHealthAsync(CancellationToken cancellationToken) { return await _checker.CanConnectAsync(cancellationToken) ? HealthCheckResult.Healthy("Database reachable") : HealthCheckResult.Unhealthy("Database unreachable"); } }