Class: TasksScheduler::Checker
- Inherits:
-
Object
- Object
- TasksScheduler::Checker
- Includes:
- Singleton
- Defined in:
- lib/tasks_scheduler/checker.rb
Constant Summary collapse
- CHECK_INTERVAL =
15
- LOG_ON_FILE_ENV_KEY =
'TASKS_SCHEDULER_LOG_ON_FILE'.freeze
Instance Method Summary collapse
Instance Method Details
#log_path ⇒ Object
20 21 22 |
# File 'lib/tasks_scheduler/checker.rb', line 20 def log_path ::Rails.root.join('log', 'tasks_scheduler', 'checker.log') end |
#run ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/tasks_scheduler/checker.rb', line 8 def run check_log running = true Signal.trap('TERM') { running = false } while running Rails.logger.info('Checking all tasks...') ::ScheduledTask.all.each(&:check) Rails.logger.info("All tasks checked. Sleeping for #{CHECK_INTERVAL} second(s)...") sleep(CHECK_INTERVAL) end end |