Solo.Beacon 1.0.0-pre-doc4847-02
Solo.Beacon
Solo.Beacon — это переиспользуемый ASP.NET Core пакет для сервисов ft-soft. Он предоставляет:
- endpoint
/solo-beacon/discovery, который публикует реальные путиhealthиstatsдля сервиса - endpoint
/health, который отвечает200 OKна любой HTTP-метод - endpoint
/statsдля состояния текущего сервиса - возможность включать или отключать логирование запросов к
/solo-beacon/discovery,/healthи/statsодним общим флагом - опциональный фоновый опрос зависимых сервисов по схеме
ServiceUrl + /solo-beacon/discoveryс обработкой результатов через delegate
Использование
using Solo.Beacon;
var builder = WebApplication.CreateBuilder(args);
builder.Services
.AddBeacon()
.AddBeaconHealthMonitoring(
static async (serviceProvider, responses, cancellationToken) =>
{
var cache = serviceProvider.GetRequiredService<IMonitoringCache>();
await cache.StoreAsync(responses, cancellationToken);
});
var app = builder.Build();
app.MapBeacon()
.MapHealth()
.MapStats();
Если нужен собственный payload /stats, можно передать handler в MapStats(...). По умолчанию endpoint вернет только timestamp генерации ответа текущего сервиса.
Конфигурация
{
"Beacon": {
"LoggingEnabled": false,
"HealthUrl": "/health",
"StatsUrl": "/stats",
"Monitoring": {
"Enabled": true,
"ProbeInterval": "00:00:30",
"RequestTimeout": "00:00:05",
"Services": [
"https://solo-butler.ru",
"https://solo.ru/solo",
"https://solo.ru/org"
]
}
}
}
Примечания
/statsвсегда закрыт авторизацией и использует стандартное поведение ASP.NET Core, настроенное в хост-приложении.- Чтобы в
HttpContext.Userбыли данные пользователя, хост-приложение должно само настроить аутентификацию обычным для себя способом. /solo-beacon/discoveryвсегда захардкожен и не настраивается через конфиг.- Пути endpoint-ов и общий флаг логгирования можно полностью задать через
SoloBeaconв конфиге, без обязательных lambda-настроек вProgram.cs.
No packages depend on Solo.Beacon.
.NET 8.0
- No dependencies.
| Version | Downloads | Last updated |
|---|---|---|
| 1.0.0 | 2 | 05/28/2026 |
| 1.0.0-pre-doc4847-07 | 2 | 05/19/2026 |
| 1.0.0-pre-doc4847-06 | 2 | 05/19/2026 |
| 1.0.0-pre-doc4847-05 | 2 | 05/19/2026 |
| 1.0.0-pre-doc4847-04 | 2 | 05/19/2026 |
| 1.0.0-pre-doc4847-03 | 2 | 05/18/2026 |
| 1.0.0-pre-doc4847-02 | 2 | 05/18/2026 |
| 1.0.0-pre-doc4847-01 | 2 | 05/18/2026 |