discourse/app/jobs/scheduled/dashboard_stats.rb

21 lines
630 B
Ruby
Raw Normal View History

module Jobs
2013-08-08 01:25:05 +08:00
class DashboardStats < Jobs::Scheduled
2015-07-07 12:52:19 +08:00
include Jobs::Stats
every 30.minutes
def execute(args)
problems_started_at = AdminDashboardData.problems_started_at
if problems_started_at && problems_started_at < 2.days.ago
# If there have been problems reported on the dashboard for a while,
# send a message to admins no more often than once per week.
GroupMessage.create(Group[:admins].name, :dashboard_problems, {limit_once_per: 7.days.to_i})
end
stats = AdminDashboardData.fetch_stats
2015-07-07 12:52:19 +08:00
set_cache(AdminDashboardData, stats)
stats
end
end
end