Guest User

Untitled

a guest
Feb 21st, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. #!/usr/bin/env ruby
  2.  
  3. require 'rubygems'
  4. require 'daemons'
  5. require 'rufus/scheduler'
  6.  
  7. scheduler = File.join(File.dirname(__FILE__), 'scheduler.rb')
  8. options = {
  9. :app_name => 'scheduler',
  10. :ARGV => ARGV,
  11. :dir_mode => :normal,
  12. :dir => 'log',
  13. :log_output => true,
  14. :multiple => true,
  15. :backtrace => true,
  16. :monitor => true
  17. }
  18.  
  19. Daemons.run(scheduler, options)
  20.  
  21. require File.dirname(__FILE__) + '/../config/environment'
  22. RAILS_DEFAULT_LOGGER.auto_flushing = 1
  23.  
  24. Thread.abort_on_exception = true
  25.  
  26. class Scheduler
  27. def start
  28. scheduler = Rufus::Scheduler.start_new
  29. class << scheduler
  30. def log_exception (e)
  31. ActiveRecord::Base.logger.warn(
  32. "#{Time.now} !! something went wrong : #{e}")
  33. end
  34. end
  35. scheduler.every '10s' do
  36. logger.info "#{Time.now} doin stuff now!"
  37. end
  38. scheduler.join
  39. end
  40. def logger
  41. ActiveRecord::Base.logger
  42. end
  43. end
  44.  
  45. puts 'Scheduler starting.'
  46. Scheduler.new.start
Add Comment
Please, Sign In to add comment