Reo.Core.HealthCheck
6.0.346
See the version list below for details.
dotnet add package Reo.Core.HealthCheck --version 6.0.346
NuGet\Install-Package Reo.Core.HealthCheck -Version 6.0.346
<PackageReference Include="Reo.Core.HealthCheck" Version="6.0.346" />
<PackageVersion Include="Reo.Core.HealthCheck" Version="6.0.346" />
<PackageReference Include="Reo.Core.HealthCheck" />
paket add Reo.Core.HealthCheck --version 6.0.346
#r "nuget: Reo.Core.HealthCheck, 6.0.346"
#:package Reo.Core.HealthCheck@6.0.346
#addin nuget:?package=Reo.Core.HealthCheck&version=6.0.346
#tool nuget:?package=Reo.Core.HealthCheck&version=6.0.346
Reo.Core.HealthCheck
Описание пакета
Пакет Reo.Core.HealthCheck предоставляет инструменты для реализации и интеграции проверок работоспособности (health checks) в приложениях на основе ASP.NET Core. Он позволяет:
- Создавать кастомные проверки состояния сервисов.
- Агрегировать результаты множества проверок для оценки общего состояния кластера.
- Интегрировать с интерфейсом проверок состояния (Health Checks UI).
- Проверять наличие зарегистрированных проверок в контейнере зависимостей.
Решаемая проблема: Упрощение реализации сложных сценариев мониторинга состояния сервисов в распределённых системах.
Основные компоненты
AbstractClusterHealthCheck- Абстрактный класс для реализации проверок, агрегирующих результаты множества
IHealthCheck. - Определяет логику оценки состояния кластера на основе количества здоровых узлов.
- Абстрактный класс для реализации проверок, агрегирующих результаты множества
EndpointRouteBuilderExtensions- Методы расширения для добавления эндпоинта
/hcс поддержкой интерфейса проверок состояния (Health Checks UI).
- Методы расширения для добавления эндпоинта
ServiceCollectionExtensions- Утилиты для проверки наличия зарегистрированных проверок в
IServiceCollection.
- Утилиты для проверки наличия зарегистрированных проверок в
Требования
- .NET версия: 8.0
- Зависимости:
AspNetCore.HealthChecks.UI.ClientSystem.Text.JsonMicrosoft.EntityFrameworkCore
Установка
# Через NuGet Package Manager
Install-Package Reo.Core.HealthCheck
# Через .NET CLI
dotnet add package Reo.Core.HealthCheck
Настройка
Регистрация проверок в ASP.NET Core
Добавьте проверку в контейнер зависимостей:
services.AddHealthChecks() .AddCheck("custom-check", new CustomHealthCheck());Используйте
AbstractClusterHealthCheckдля агрегации:public class CustomClusterHealthCheck : AbstractClusterHealthCheck { public CustomClusterHealthCheck(IEnumerable<IHealthCheck> healthChecks) : base(healthChecks) { } }Настройте эндпоинт проверок:
app.UseEndpoints(endpoints => { endpoints.MapDefaultHealthCheck(); });
Использование
Пример 1: Создание кастомной проверки
public class DatabaseHealthCheck : IHealthCheck
{
public async Task<HealthCheckResult> CheckHealthAsync(HealthCheckContext context, CancellationToken cancellationToken = default)
{
// Логика проверки подключения к БД
return HealthCheckResult.Healthy();
}
}
Пример 2: Агрегация результатов
var healthChecks = new List<IHealthCheck>
{
new DatabaseHealthCheck(),
new CustomHealthCheck()
};
var clusterCheck = new CustomClusterHealthCheck(healthChecks);
Пример 3: Проверка наличия зарегистрированной проверки
if (services.IsExistHealthCheck("custom-check"))
{
Console.WriteLine("Проверка 'custom-check' уже зарегистрирована.");
}
Лицензия
Пакет распространяется под лицензией MIT. См. файл LICENSE для деталей.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- AspNetCore.HealthChecks.UI.Client (>= 8.0.1)
- JetBrains.Annotations (>= 2024.3.0)
- Microsoft.EntityFrameworkCore (>= 9.0.5)
- Microsoft.Extensions.Caching.Abstractions (>= 9.0.5)
- Microsoft.Extensions.Caching.Memory (>= 9.0.5)
- Microsoft.Extensions.Configuration (>= 9.0.5)
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.5)
- Microsoft.Extensions.Configuration.Binder (>= 9.0.5)
- Microsoft.Extensions.DependencyInjection (>= 9.0.5)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.5)
- Microsoft.Extensions.Hosting.Abstractions (>= 9.0.5)
- Microsoft.Extensions.Http.Polly (>= 9.0.5)
- Microsoft.Extensions.Logging (>= 9.0.5)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.5)
- Microsoft.Extensions.Options (>= 9.0.5)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 9.0.5)
- Polly (>= 8.5.0)
- Reo.Core.Extensions (>= 6.0.346)
- System.IO.Pipelines (>= 9.0.5)
- System.Text.Encodings.Web (>= 9.0.5)
- System.Text.Json (>= 9.0.5)
NuGet packages (9)
Showing the top 5 NuGet packages that depend on Reo.Core.HealthCheck:
| Package | Downloads |
|---|---|
|
Reo.Core.NoSql
Package Description |
|
|
Reo.Core.Queue.RabbitMq
Package Description |
|
|
Reo.Core.Database
Package Description |
|
|
Reo.Core.DistributedCache
Package Description |
|
|
Reo.Core.Queue.MassTransit.Abstractions
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.210 | 0 | 6/18/2026 |
| 10.0.209 | 77 | 6/17/2026 |
| 10.0.208 | 80 | 6/17/2026 |
| 10.0.207 | 84 | 6/17/2026 |
| 10.0.206 | 79 | 6/17/2026 |
| 10.0.205 | 126 | 6/16/2026 |
| 10.0.204 | 122 | 6/16/2026 |
| 10.0.203 | 124 | 6/16/2026 |
| 10.0.202 | 130 | 6/16/2026 |
| 10.0.201 | 147 | 6/16/2026 |
| 10.0.200 | 143 | 6/16/2026 |
| 10.0.199 | 133 | 6/16/2026 |
| 10.0.198 | 138 | 6/16/2026 |
| 10.0.197 | 177 | 6/16/2026 |
| 10.0.196 | 152 | 6/16/2026 |
| 10.0.195 | 197 | 6/15/2026 |
| 10.0.194 | 193 | 6/15/2026 |
| 10.0.193 | 193 | 6/15/2026 |
| 10.0.192 | 221 | 6/11/2026 |
| 6.0.346 | 434 | 5/29/2025 |