Sha256: d150da4ddc4a3239e06bdc40e2ba003d46028b8b8c4804e9974b183c6eebd71d
Contents?: true
Size: 731 Bytes
Versions: 14
Compression:
Stored size: 731 Bytes
Contents
class ScheduleByIntervalJob include Sidekiq::Worker sidekiq_options queue: 'my_nagios_monitoring' def perform(options, one_by_one = false) # Run each Check separately (new ssh connection for each check even common host) if one_by_one MyNagios::Check.where(interval: options['interval']).each do |check| MonitoringJob.perform_async(check) end return end # Optimized variant, group checks, run all necessary checks with one ssh connection MyNagios::Check.where(interval: options['interval']).group_by{|check| { host: check.host, user: check.user, pem_key: check.pem_key } }.each do |config, checks| MonitoringJob.perform_async(checks.map(&:id), config) end end end
Version data entries
14 entries across 14 versions & 1 rubygems