Skip to content

Commit

Permalink
Merge bd9a020 into e3772d4
Browse files Browse the repository at this point in the history
  • Loading branch information
StephaneRob committed Aug 17, 2016
2 parents e3772d4 + bd9a020 commit f9d9ab7
Showing 1 changed file with 12 additions and 4 deletions.
16 changes: 12 additions & 4 deletions lib/delayed/command.rb
Expand Up @@ -74,6 +74,9 @@ def initialize(args) # rubocop:disable MethodLength
opt.on('--pool=queue1[,queue2][:worker_count]', 'Specify queues and number of workers for a worker pool') do |pool|
parse_worker_pool(pool)
end
opt.on('-s', '--stage', 'Specify stage on process names') do |s|
@options[:stage] = s
end
opt.on('--exit-on-complete', 'Exit when no more jobs are available to run. This will exit if all jobs are scheduled to run in the future.') do
@options[:exit_on_complete] = true
end
Expand All @@ -94,11 +97,11 @@ def daemonize # rubocop:disable PerceivedComplexity
if worker_count > 1
raise ArgumentError, 'Cannot specify both --number-of-workers and --identifier'
else
run_process("delayed_job.#{@options[:identifier]}", @options)
run_process("#{default_process_name}.#{@options[:identifier]}", @options)
end
else
worker_count.times do |worker_index|
process_name = worker_count == 1 ? 'delayed_job' : "delayed_job.#{worker_index}"
process_name = worker_count == 1 ? default_process_name : "#{default_process_name}.#{worker_index}"
run_process(process_name, @options)
end
end
Expand All @@ -109,7 +112,7 @@ def setup_pools
@worker_pools.each do |queues, worker_count|
options = @options.merge(:queues => queues)
worker_count.times do
process_name = "delayed_job.#{worker_index}"
process_name = "#{default_process_name}.#{worker_index}"
run_process(process_name, options)
worker_index += 1
end
Expand All @@ -128,7 +131,7 @@ def run(worker_name = nil, options = {})
Dir.chdir(root)

Delayed::Worker.after_fork
Delayed::Worker.logger ||= Logger.new(File.join(@options[:log_dir], 'delayed_job.log'))
Delayed::Worker.logger ||= Logger.new(File.join(@options[:log_dir], "#{default_process_name}.log"))

worker = Delayed::Worker.new(options)
worker.name_prefix = "#{worker_name} "
Expand All @@ -142,6 +145,11 @@ def run(worker_name = nil, options = {})

private

def default_process_name
return 'delayed_job' unless @options[:stage]
ENV['RAILS_ENV'] ? "#{ENV['RAILS_ENV']}_delayed_job" : 'delayed_job'
end

def parse_worker_pool(pool)
@worker_pools ||= []

Expand Down

0 comments on commit f9d9ab7

Please sign in to comment.