руфдер

This commit is contained in:
kislovdm
2026-03-10 15:52:32 +03:00
parent 808eebb7c7
commit d7443883cd
6 changed files with 95 additions and 8 deletions
@@ -0,0 +1,30 @@
using System.Threading;
using PepperBot.Application.Interfaces;
namespace PepperBot.Infrastructure.Health;
public class PepperHealthMonitor : IHealthMonitor
{
private DateTimeOffset? _lastSuccessfulRequestAt;
public DateTimeOffset? LastSuccessfulRequestAt => _lastSuccessfulRequestAt;
public void ReportSuccess(DateTimeOffset timestamp)
{
// Просто запоминаем последнее успешное время; избыточную синхронизацию не вводим
// так как запись идёт по одному воркеру.
_lastSuccessfulRequestAt = timestamp;
}
public bool IsHealthy(TimeSpan successTtl)
{
var last = _lastSuccessfulRequestAt;
if (last is null)
{
return false;
}
return DateTimeOffset.UtcNow - last.Value < successTtl;
}
}