opener-daemons 0.7.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/lib/opener/daemons/controller.rb +4 -4
- data/lib/opener/daemons/opt_parser.rb +39 -15
- data/lib/opener/daemons/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ODdlMTlmMWVmODEwYjhhYmUwNDk0ZjdhMjFlMWIwZTg3ZjU3ZTZmNQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NzQ3MTczMjY3ZDE1ZjM5ZmExYjQ0ZTRlN2FjMGZhYTA3NDI0MDQzYQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ODViNjAwNTA0NWZjMDI5MzA4MzljZmU2ZTgwODYzYjdjYzQ2OTdjMWE2ZTM2
|
10
|
+
MDJmYmE1MDNkY2I2MmY5Y2Y1M2JmZDc1ODNjMTZmZTJmOGM4ZjNkZTQ2MTc2
|
11
|
+
YTdkNTU0NDBmNjlmMmNjYzRlY2NjYjk5ZDU2NzgzMTIxMWI1YWM=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NDBhMzkxZTUxODI2ZjczYjc4MmNkMmQ3ODc4MDZhOGIxNzE3MjBjOWI4NDBk
|
14
|
+
YWU1MmMwZjM1MDBmYTE3YWZiMjA3YWJlMGViZjhiODYzMzIyZGFlY2ZhOTE5
|
15
|
+
OWIxYjQzNzMyZDI3OTk2MGQwODEwYTEwZWMxOTc3MzE4NTQwODI=
|
@@ -44,15 +44,15 @@ module Opener
|
|
44
44
|
def options
|
45
45
|
return @options if @options
|
46
46
|
args = ARGV.dup
|
47
|
-
@options = Opener::Daemons::OptParser.
|
47
|
+
@options = Opener::Daemons::OptParser.pre_parse!(args)
|
48
48
|
end
|
49
49
|
|
50
50
|
|
51
51
|
def pid_path
|
52
52
|
return @pid_path unless @pid_path.nil?
|
53
|
-
@pid_path = if
|
53
|
+
@pid_path = if options[:pid]
|
54
54
|
File.expand_path(@options[:pid])
|
55
|
-
elsif
|
55
|
+
elsif options[:pidpath]
|
56
56
|
File.expand_path(File.join(@options[:pidpath], "#{name}.pid"))
|
57
57
|
else
|
58
58
|
"/var/run/#{File.basename($0, ".rb")}.pid"
|
@@ -79,7 +79,7 @@ module Opener
|
|
79
79
|
pid = pid.to_s.gsub(/[^0-9]/,'')
|
80
80
|
end
|
81
81
|
rescue => e
|
82
|
-
STDOUT.puts "Info: Unable to open #{pid_path} for reading:\n\t" +
|
82
|
+
STDOUT.puts "Info: Unable to open #{pid_path} for reading while checking for existing PID:\n\t" +
|
83
83
|
"(#{e.class}) #{e.message}"
|
84
84
|
end
|
85
85
|
|
@@ -18,6 +18,16 @@ module Opener
|
|
18
18
|
process(:parse!, args)
|
19
19
|
end
|
20
20
|
|
21
|
+
def pre_parse!(args)
|
22
|
+
delete_double_dash = false
|
23
|
+
process(:parse!, args, delete_double_dash)
|
24
|
+
end
|
25
|
+
|
26
|
+
def pre_parse(args)
|
27
|
+
delete_double_dash = false
|
28
|
+
process(:parse, args, delete_double_dash)
|
29
|
+
end
|
30
|
+
|
21
31
|
def self.parse(args)
|
22
32
|
new.parse(args)
|
23
33
|
end
|
@@ -26,9 +36,18 @@ module Opener
|
|
26
36
|
new.parse!(args)
|
27
37
|
end
|
28
38
|
|
39
|
+
def self.pre_parse!(args)
|
40
|
+
new.pre_parse!(args)
|
41
|
+
end
|
42
|
+
|
43
|
+
def self.pre_parse(args)
|
44
|
+
new.pre_parse(args)
|
45
|
+
end
|
46
|
+
|
29
47
|
private
|
30
48
|
|
31
|
-
def process(call, args)
|
49
|
+
def process(call, args, delete_double_dash=true)
|
50
|
+
args.delete("--") if delete_double_dash
|
32
51
|
option_parser.send(call, args)
|
33
52
|
return options
|
34
53
|
end
|
@@ -37,7 +56,12 @@ module Opener
|
|
37
56
|
script_name = File.basename($0, ".rb")
|
38
57
|
|
39
58
|
OptionParser.new do |opts|
|
40
|
-
|
59
|
+
if block_given?
|
60
|
+
opts.banner = "Usage: #{script_name} <start|stop|restart> [daemon_options] -- [component_options]"
|
61
|
+
else
|
62
|
+
opts.banner = "Usage: #{script_name} <start|stop|restart> [options]"
|
63
|
+
end
|
64
|
+
|
41
65
|
opts.separator ""
|
42
66
|
opts.separator "When calling #{script_name} without <start|stop|restart> the daemon will start as a foreground process"
|
43
67
|
opts.separator ""
|
@@ -51,43 +75,43 @@ module Opener
|
|
51
75
|
|
52
76
|
opts.separator "Daemon options:"
|
53
77
|
|
54
|
-
opts.on("-i", "--input
|
78
|
+
opts.on("-i", "--input QUEUE_NAME", "Input queue name") do |v|
|
55
79
|
options[:input_queue] = v
|
56
80
|
end
|
57
81
|
|
58
|
-
opts.on("-o", "--output
|
82
|
+
opts.on("-o", "--output QUEUE_NAME", "Output queue name") do |v|
|
59
83
|
options[:output_queue] = v
|
60
84
|
end
|
61
85
|
|
62
|
-
opts.on("--batch-size
|
86
|
+
opts.on("--batch-size COUNT", Integer, "Request x messages at once where x is between 1 and 10") do |v|
|
63
87
|
options[:batch_size] = v
|
64
88
|
end
|
65
89
|
|
66
|
-
opts.on("--buffer-size
|
90
|
+
opts.on("--buffer-size COUNT", Integer, "Size of input and output buffer. Defaults to 4 * batch-size") do |v|
|
67
91
|
options[:buffer_size] = v
|
68
92
|
end
|
69
93
|
|
70
|
-
opts.on("--sleep-interval
|
94
|
+
opts.on("--sleep-interval SECONDS", Integer, "The interval to sleep when the queue is empty (seconds)") do |v|
|
71
95
|
options[:sleep_interval] = v
|
72
96
|
end
|
73
97
|
|
74
|
-
opts.on("-
|
75
|
-
options[:
|
98
|
+
opts.on("-r", "--readers COUNT", Integer, "number of reader threads") do |v|
|
99
|
+
options[:readers] = v
|
76
100
|
end
|
77
101
|
|
78
|
-
opts.on("-
|
79
|
-
options[:
|
102
|
+
opts.on("-w", "--workers COUNT", Integer, "number of worker thread") do |v|
|
103
|
+
options[:workers] = v
|
80
104
|
end
|
81
105
|
|
82
|
-
opts.on("-p", "--writers
|
106
|
+
opts.on("-p", "--writers COUNT", Integer, "number of writer / pusher threads") do |v|
|
83
107
|
options[:writers] = v
|
84
108
|
end
|
85
109
|
|
86
|
-
opts.on("--log FILENAME", "Filename and path of logfile. Defaults to STDOUT") do |v|
|
110
|
+
opts.on("-l", "--logfile FILENAME", "--log FILENAME", "Filename and path of logfile. Defaults to STDOUT") do |v|
|
87
111
|
options[:log] = v
|
88
112
|
end
|
89
113
|
|
90
|
-
opts.on("--pidfile FILENAME", "--pid FILENAME", "Filename and path of pidfile. Defaults to /var/run/#{script_name}.pid") do |v|
|
114
|
+
opts.on("-P", "--pidfile FILENAME", "--pid FILENAME", "Filename and path of pidfile. Defaults to /var/run/#{script_name}.pid") do |v|
|
91
115
|
options[:pid] = v
|
92
116
|
end
|
93
117
|
|
@@ -109,7 +133,7 @@ module Opener
|
|
109
133
|
|
110
134
|
# No argument, shows at tail. This will print an options summary.
|
111
135
|
# Try it and see!
|
112
|
-
opts.on_tail("-h", "--help", "Show this message") do
|
136
|
+
opts.on_tail("-h", "--help", "Show this message. Usage: #{script_name} -h") do
|
113
137
|
puts opts
|
114
138
|
exit
|
115
139
|
end
|