Limiter
using Perigee;
using Perigee.Extensions;
PerigeeApplication.ApplicationNoInit("Limiter", (c) =>
{
c.AddRecurring("Limiter", (ct, l) => {
using var APILimit = new RateLimiter("RateLimiter.json", 2, TimeSpan.FromMinutes(1), ct);
if (APILimit.CanExecute())
{
//Perform action
l.LogInformation("Calling API {n}/{x} executions", APILimit.GetCount(), APILimit.GetLimit());
}
else
{
l.LogInformation("Out of executions...");
}
});
});
/*
[16:35:07 INF] Calling API 1/2 executions
[16:35:13 INF] Calling API 2/2 executions
[16:35:18 INF] Out of executions...
*/Last updated
