Package Description
$ dotnet add package Reo.Core.HealthCheckПакет Reo.Core.HealthCheck предоставляет инструменты для реализации и интеграции проверок работоспособности (health checks) в приложениях на основе ASP.NET Core. Он позволяет:
Решаемая проблема: Упрощение реализации сложных сценариев мониторинга состояния сервисов в распределённых системах.
AbstractClusterHealthCheck
IHealthCheck.EndpointRouteBuilderExtensions
/hc с поддержкой интерфейса проверок состояния (Health Checks UI).ServiceCollectionExtensions
IServiceCollection.AspNetCore.HealthChecks.UI.ClientSystem.Text.JsonMicrosoft.EntityFrameworkCore# Через NuGet Package Manager
Install-Package Reo.Core.HealthCheck
# Через .NET CLI
dotnet add package Reo.Core.HealthCheck
Добавьте проверку в контейнер зависимостей:
services.AddHealthChecks()
.AddCheck("custom-check", new CustomHealthCheck());
Используйте AbstractClusterHealthCheck для агрегации:
public class CustomClusterHealthCheck : AbstractClusterHealthCheck
{
public CustomClusterHealthCheck(IEnumerable<IHealthCheck> healthChecks)
: base(healthChecks) { }
}
Настройте эндпоинт проверок:
app.UseEndpoints(endpoints =>
{
endpoints.MapDefaultHealthCheck();
});
public class DatabaseHealthCheck : IHealthCheck
{
public async Task<HealthCheckResult> CheckHealthAsync(HealthCheckContext context, CancellationToken cancellationToken = default)
{
// Логика проверки подключения к БД
return HealthCheckResult.Healthy();
}
}
var healthChecks = new List<IHealthCheck>
{
new DatabaseHealthCheck(),
new CustomHealthCheck()
};
var clusterCheck = new CustomClusterHealthCheck(healthChecks);
if (services.IsExistHealthCheck("custom-check"))
{
Console.WriteLine("Проверка 'custom-check' уже зарегистрирована.");
}
Данный пакет распространяется под лицензией MIT.