23 lines
595 B
D
23 lines
595 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(&computeAccountBalanceTimeSeries);
|
|
doForAllUserProfiles(&computeCategorySpendTimeSeries);
|
|
info("Done computing analytics!");
|
|
}, analyticsSchedule);
|
|
jobScheduler.start();
|
|
} |