module Schedulero::Utils
Public Instance Methods
humanize_seconds(secs)
click to toggle source
# File lib/utils.rb, line 3 def humanize_seconds secs return '-' unless secs secs = secs.to_i [[60, :sec], [60, :min], [24, :h], [356, :days], [1000, :years]].map{ |count, name| if secs > 0 secs, n = secs.divmod(count) "#{n.to_i} #{name}" end }.compact.reverse.slice(0,2).join(' ') end
quick_overview(lines: 100)
click to toggle source
# File lib/utils.rb, line 16 def quick_overview lines: 100 data = ['Tasks:'] for name, task in tasks at = task[:at] ? "at #{task[:at]}" : "every #{humanize_seconds(task[:interval])}" data.push '- %s, %s' % [name, at] end data.push ['','###', ''] data.push `tail -#{lines} #{@log_file}`.split($/).reverse if @log_file data.join($/) end