finnow/finnow-api/source/scheduled_jobs.d

22 lines
537 B
D

module scheduled_jobs;
import scheduled;
import std.datetime;
import slf4d;
import analytics;
void startScheduledJobs() {
JobSchedule analyticsSchedule = new FixedIntervalSchedule(
hours(1),
Clock.currTime(UTC()) + seconds(5)
);
JobScheduler jobScheduler = new TaskPoolScheduler();
jobScheduler.addJob(() {
info("Computing account balance time series analytics for all users...");
doForAllUserProfiles(&computeCategorySpendTimeSeries);
info("Done computing analytics!");
}, analyticsSchedule);
jobScheduler.start();
}