rboss 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +9 -0
- data/Gemfile +4 -0
- data/Rakefile +1 -0
- data/bin/jboss-profile +90 -0
- data/bin/twiddle +230 -0
- data/examples/jboss_profile/jbb_profile_1.yaml +32 -0
- data/examples/jboss_profile/jbb_profile_2.yaml +32 -0
- data/examples/jboss_profile/jboss_profile.yaml +7 -0
- data/examples/monitor/simple_monitor.rb +61 -0
- data/lib/rboss.rb +25 -0
- data/lib/rboss/component_processor.rb +177 -0
- data/lib/rboss/components/component.rb +52 -0
- data/lib/rboss/components/datasource.rb +198 -0
- data/lib/rboss/components/deploy_folder.rb +104 -0
- data/lib/rboss/components/hypersonic_replacer.rb +58 -0
- data/lib/rboss/components/jbossweb.rb +117 -0
- data/lib/rboss/components/jmx.rb +88 -0
- data/lib/rboss/components/mod_cluster.rb +81 -0
- data/lib/rboss/components/org/6.0/deploy_folder.rb +33 -0
- data/lib/rboss/components/org/jmx.rb +59 -0
- data/lib/rboss/components/profile_folder.rb +44 -0
- data/lib/rboss/components/resource.rb +53 -0
- data/lib/rboss/components/run_conf.rb +90 -0
- data/lib/rboss/components/run_conf.yaml +22 -0
- data/lib/rboss/components/service_script.rb +55 -0
- data/lib/rboss/components/slimming.rb +124 -0
- data/lib/rboss/components/soa-p/hypersonic_replacer.rb +79 -0
- data/lib/rboss/components/soa-p/jmx.rb +47 -0
- data/lib/rboss/components/xadatasource.rb +67 -0
- data/lib/rboss/file_processor.rb +107 -0
- data/lib/rboss/jboss_path.rb +53 -0
- data/lib/rboss/jboss_profile.rb +344 -0
- data/lib/rboss/resources/jboss_init_redhat.sh.erb +140 -0
- data/lib/rboss/resources/mod_cluster.sar/META-INF/mod_cluster-jboss-beans.xml +282 -0
- data/lib/rboss/resources/mod_cluster.sar/mod_cluster-1.1.2.Final.jar +0 -0
- data/lib/rboss/resources/run.conf.erb +62 -0
- data/lib/rboss/twiddle.rb +25 -0
- data/lib/rboss/twiddle/base_monitor.rb +57 -0
- data/lib/rboss/twiddle/mbean.rb +82 -0
- data/lib/rboss/twiddle/monitor.rb +144 -0
- data/lib/rboss/twiddle/scanner.rb +92 -0
- data/lib/rboss/twiddle/twiddle.rb +71 -0
- data/lib/rboss/utils.rb +33 -0
- data/lib/rboss/version.rb +25 -0
- data/rboss.gemspec +20 -0
- data/test/datasource_test.rb +211 -0
- data/test/deploy_folder_test.rb +126 -0
- data/test/mbean_test.rb +53 -0
- data/test/test_helper.rb +124 -0
- data/test/test_suite.rb +35 -0
- metadata +109 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require 'bundler/gem_tasks'
|
data/bin/jboss-profile
ADDED
@@ -0,0 +1,90 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# The MIT License
|
4
|
+
#
|
5
|
+
# Copyright (c) 2011 Marcelo Guimarães <ataxexe@gmail.com>
|
6
|
+
#
|
7
|
+
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
8
|
+
# of this software and associated documentation files (the "Software"), to deal
|
9
|
+
# in the Software without restriction, including without limitation the rights
|
10
|
+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
11
|
+
# copies of the Software, and to permit persons to whom the Software is
|
12
|
+
# furnished to do so, subject to the following conditions:
|
13
|
+
#
|
14
|
+
# The above copyright notice and this permission notice shall be included in
|
15
|
+
# all copies or substantial portions of the Software.
|
16
|
+
#
|
17
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
18
|
+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
19
|
+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
20
|
+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
21
|
+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
22
|
+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
23
|
+
# THE SOFTWARE.
|
24
|
+
|
25
|
+
require 'rboss'
|
26
|
+
require 'optparse'
|
27
|
+
require 'yaml'
|
28
|
+
require 'logger'
|
29
|
+
|
30
|
+
params = {}
|
31
|
+
params[:jboss_home] = Dir.pwd unless ENV["JBOSS_HOME"]
|
32
|
+
config = nil
|
33
|
+
create = true
|
34
|
+
|
35
|
+
opts = OptionParser::new
|
36
|
+
opts.on('-j', '--jboss-home PATH', 'Defines the JBOSS_HOME variable') do |home|
|
37
|
+
params[:jboss_home] = home
|
38
|
+
end
|
39
|
+
opts.on('-t', '--type TYPE', 'Defines the JBoss Type (org, eap, soa_p, epp)') do |type|
|
40
|
+
params[:type] = type.to_sym
|
41
|
+
end
|
42
|
+
opts.on('-v', '--version VERSION', 'Defines the JBoss version (5, 6, 5.1, ...)') do |version|
|
43
|
+
params[:version] = version
|
44
|
+
end
|
45
|
+
opts.on('-b', '--base-profile PROFILE', 'Defines the base profile') do |profile|
|
46
|
+
params[:base_profile] = profile
|
47
|
+
end
|
48
|
+
opts.on('-p', '--profile PROFILE', 'Defines the custom profile') do |profile|
|
49
|
+
params[:profile] = profile
|
50
|
+
end
|
51
|
+
opts.on('-u', '--update', 'Just update the profile folder') do
|
52
|
+
create = false
|
53
|
+
end
|
54
|
+
opts.on('-c', '--config-file FILE',
|
55
|
+
'Defines the configuration file for the instance
|
56
|
+
(see the examples for more details)') do |yaml|
|
57
|
+
config_file = File.expand_path(yaml)
|
58
|
+
config = YAML::load File.open(config_file)
|
59
|
+
config.each do |c|
|
60
|
+
if c.is_a? Hash and c[:params]
|
61
|
+
c.delete(:params).each do |key, value|
|
62
|
+
params[key] = value
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
opts.on('-d', '--debug', '--verbose', 'Displays shell commands') do
|
68
|
+
include FileUtils::Verbose
|
69
|
+
params[:log_level] = Logger::DEBUG
|
70
|
+
end
|
71
|
+
opts.on("-h", "--help", "Shows this help message") { puts opts; exit }
|
72
|
+
opts.parse!(ARGV) rescue abort 'Invalid Option! Use --help or -h for usage help.'
|
73
|
+
|
74
|
+
profile = JBoss::Profile::new params
|
75
|
+
|
76
|
+
if config
|
77
|
+
config.each do |var|
|
78
|
+
if var.is_a? Hash
|
79
|
+
var.each do |key, value|
|
80
|
+
key = key.to_sym if key.is_a? String
|
81
|
+
profile.add key, value
|
82
|
+
end
|
83
|
+
else
|
84
|
+
profile.add var.to_sym
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
profile.create if create
|
90
|
+
profile.update unless create
|
data/bin/twiddle
ADDED
@@ -0,0 +1,230 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# The MIT License
|
4
|
+
#
|
5
|
+
# Copyright (c) 2011 Marcelo Guimarães <ataxexe@gmail.com>
|
6
|
+
#
|
7
|
+
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
8
|
+
# of this software and associated documentation files (the "Software"), to deal
|
9
|
+
# in the Software without restriction, including without limitation the rights
|
10
|
+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
11
|
+
# copies of the Software, and to permit persons to whom the Software is
|
12
|
+
# furnished to do so, subject to the following conditions:
|
13
|
+
#
|
14
|
+
# The above copyright notice and this permission notice shall be included in
|
15
|
+
# all copies or substantial portions of the Software.
|
16
|
+
#
|
17
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
18
|
+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
19
|
+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
20
|
+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
21
|
+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
22
|
+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
23
|
+
# THE SOFTWARE.
|
24
|
+
|
25
|
+
require 'rboss'
|
26
|
+
require 'optparse'
|
27
|
+
require 'yaml'
|
28
|
+
|
29
|
+
params = {}
|
30
|
+
resources = {}
|
31
|
+
list_only = false
|
32
|
+
params[:jboss_home] = Dir.pwd unless ENV["JBOSS_HOME"]
|
33
|
+
exec_file = nil
|
34
|
+
eval_expression = nil
|
35
|
+
|
36
|
+
opts = OptionParser::new
|
37
|
+
opts.on('-j', '--jboss-home PATH', 'Defines the JBOSS_HOME variable') do |home|
|
38
|
+
params[:jboss_home] = home
|
39
|
+
end
|
40
|
+
opts.on('-s', '--jboss-server URL', 'Defines the JBoss server') do |server|
|
41
|
+
params[:jboss_server] = server
|
42
|
+
end
|
43
|
+
opts.on('--jboss-host HOST', 'Defines the JBoss host') do |host|
|
44
|
+
params[:jboss_host] = host
|
45
|
+
end
|
46
|
+
opts.on('--jboss-port PORT', 'Defines the JBoss jnp port') do |port|
|
47
|
+
params[:jboss_port] = port
|
48
|
+
end
|
49
|
+
opts.on('-e', '--exec-file PATH',
|
50
|
+
'Defines the ruby file to exec using the vars twiddle and monitor') do |path|
|
51
|
+
exec_file = File.expand_path path
|
52
|
+
end
|
53
|
+
opts.on('--eval EXPRESSION',
|
54
|
+
'Evaluates the given expression using the vars twiddle and monitor') do |expression|
|
55
|
+
eval_expression = expression
|
56
|
+
end
|
57
|
+
opts.on('--show-all', 'Shows all resources available') do
|
58
|
+
[
|
59
|
+
:server_info,
|
60
|
+
:deployments,
|
61
|
+
:datasources,
|
62
|
+
:webapps,
|
63
|
+
:connectors,
|
64
|
+
:queues,
|
65
|
+
:ejbs
|
66
|
+
].each do |option|
|
67
|
+
resources[option] = :all
|
68
|
+
end
|
69
|
+
end
|
70
|
+
opts.on('--server-info', 'Shows server information') do
|
71
|
+
resources[:server_info] = true
|
72
|
+
end
|
73
|
+
opts.on('--deployments', 'Shows deployments on server') do
|
74
|
+
resources[:deployments] = true
|
75
|
+
end
|
76
|
+
opts.on('--connectors [name_a, name_b, name_c, ...]', Array,
|
77
|
+
'Defines the connectors to show or scan if not specified') do |connectors|
|
78
|
+
resources[:connectors] = connectors || :all
|
79
|
+
end
|
80
|
+
opts.on('--datasources [name_a, name_b, name_c, ...]', Array,
|
81
|
+
'Defines the datasources to show or scan if not specified') do |datasources|
|
82
|
+
resources[:datasources] = datasources || :all
|
83
|
+
end
|
84
|
+
opts.on('--ejbs [name_a, name_b, name_c, ...]', Array,
|
85
|
+
'Defines the EJBs to show or scan if not specified') do |ejbs|
|
86
|
+
resources[:ejbs] = ejbs || :all
|
87
|
+
end
|
88
|
+
opts.on('--queues [name_a, name_b, name_c, ...]', Array,
|
89
|
+
'Defines the JMS queues to show or scan if not specified') do |queues|
|
90
|
+
resources[:queues] = queues || :all
|
91
|
+
end
|
92
|
+
opts.on('--webapps [name_a, name_b, name_c, ...]', Array,
|
93
|
+
'Defines the webapps to show or scan if not specified') do |webapps|
|
94
|
+
resources[:webapps] = webapps || :all
|
95
|
+
end
|
96
|
+
opts.on('--system-properties [name_a, name_b, name_c, ...]', Array,
|
97
|
+
'Defines the System properties to show or scan if not specified') do |properties|
|
98
|
+
resources[:system_properties] = properties || :all
|
99
|
+
end
|
100
|
+
opts.on('--list', 'Only lists the required info (datasources, queues, ...)') do
|
101
|
+
list_only = true
|
102
|
+
end
|
103
|
+
opts.on('-u', '--jmx-user USER', 'Defines the JMX User') do |user|
|
104
|
+
params[:jmx_user] = user
|
105
|
+
end
|
106
|
+
opts.on('-p', '--jmx-password PASSWORD', 'Defines the JMX Password') do |password|
|
107
|
+
params[:jmx_password] = password
|
108
|
+
end
|
109
|
+
opts.on("-h", "--help", "Shows this help message") do
|
110
|
+
puts opts; exit
|
111
|
+
end
|
112
|
+
opts.parse!(ARGV) rescue abort 'Invalid Option! Use --help or -h for usage help.'
|
113
|
+
|
114
|
+
twiddle = JBoss::Twiddle::Invoker::new params
|
115
|
+
monitor = twiddle.monitor
|
116
|
+
|
117
|
+
if resources.empty? and not (exec_file or eval_expression)
|
118
|
+
puts opts
|
119
|
+
exit
|
120
|
+
end
|
121
|
+
|
122
|
+
eval File.read(exec_file), binding, exec_file if exec_file
|
123
|
+
|
124
|
+
puts (eval eval_expression, binding) if eval_expression
|
125
|
+
|
126
|
+
if resources[:server_info]
|
127
|
+
puts "Server Info:"
|
128
|
+
monitor.properties[:server].each do |property|
|
129
|
+
puts " - #{monitor.server[property]}"
|
130
|
+
end
|
131
|
+
monitor.properties[:server_info].each do |property|
|
132
|
+
puts " - #{monitor.server_info[property]}"
|
133
|
+
end
|
134
|
+
end
|
135
|
+
if resources[:system_properties]
|
136
|
+
puts "System Properties:"
|
137
|
+
properties = resources[:system_properties]
|
138
|
+
if properties == :all
|
139
|
+
properties = monitor.system_properties.showAll
|
140
|
+
puts properties
|
141
|
+
else
|
142
|
+
properties.each do |property|
|
143
|
+
puts " - #{property}=#{monitor.system_properties.get(property)}"
|
144
|
+
end
|
145
|
+
end
|
146
|
+
end
|
147
|
+
if resources[:deployments]
|
148
|
+
puts "Deployments:"
|
149
|
+
monitor.deployments.each do |deployment|
|
150
|
+
puts " - #{deployment}"
|
151
|
+
end
|
152
|
+
end
|
153
|
+
if resources[:connectors]
|
154
|
+
puts "Connectors:"
|
155
|
+
connectors = resources[:connectors]
|
156
|
+
connectors = monitor.connectors if connectors == :all
|
157
|
+
connectors.each do |connector|
|
158
|
+
monitor.with connector do
|
159
|
+
puts " - #{connector}"
|
160
|
+
unless list_only
|
161
|
+
monitor.properties[:connector].each do |property|
|
162
|
+
puts " - #{monitor.connector[property]}"
|
163
|
+
end
|
164
|
+
monitor.properties[:request].each do |property|
|
165
|
+
puts " - #{monitor.request[property]}"
|
166
|
+
end
|
167
|
+
end
|
168
|
+
end
|
169
|
+
end
|
170
|
+
end
|
171
|
+
if resources[:datasources]
|
172
|
+
puts "Datasources:"
|
173
|
+
datasources = resources[:datasources]
|
174
|
+
datasources = monitor.datasources if datasources == :all
|
175
|
+
datasources.each do |datasource|
|
176
|
+
monitor.with datasource do
|
177
|
+
puts " - #{datasource}"
|
178
|
+
unless list_only
|
179
|
+
monitor.properties[:datasource].each do |property|
|
180
|
+
puts " - #{monitor.datasource[property]}"
|
181
|
+
end
|
182
|
+
end
|
183
|
+
end
|
184
|
+
end
|
185
|
+
end
|
186
|
+
if resources[:webapps]
|
187
|
+
puts "Webapps:"
|
188
|
+
webapps = resources[:webapps]
|
189
|
+
webapps = monitor.webapps if webapps == :all
|
190
|
+
webapps.each do |webapp|
|
191
|
+
monitor.with webapp do
|
192
|
+
puts " - #{webapp}"
|
193
|
+
unless list_only
|
194
|
+
monitor.properties[:webapp].each do |property|
|
195
|
+
puts " - #{monitor.webapp[property]}"
|
196
|
+
end
|
197
|
+
end
|
198
|
+
end
|
199
|
+
end
|
200
|
+
end
|
201
|
+
if resources[:ejbs]
|
202
|
+
puts "EJBs:"
|
203
|
+
ejbs = resources[:ejbs]
|
204
|
+
ejbs = monitor.ejbs if ejbs == :all
|
205
|
+
ejbs.each do |ejb|
|
206
|
+
monitor.with ejb do
|
207
|
+
puts " - #{ejb}"
|
208
|
+
unless list_only
|
209
|
+
monitor.properties[:ejb].each do |property|
|
210
|
+
puts " - #{monitor.ejb[property]}"
|
211
|
+
end
|
212
|
+
end
|
213
|
+
end
|
214
|
+
end
|
215
|
+
end
|
216
|
+
if resources[:queues]
|
217
|
+
puts "Queues:"
|
218
|
+
queues = resources[:queues]
|
219
|
+
queues = monitor.queues if queues == :all
|
220
|
+
queues.each do |queue|
|
221
|
+
monitor.with queue do
|
222
|
+
puts " - #{queue}"
|
223
|
+
unless list_only
|
224
|
+
monitor.properties[:queue].each do |property|
|
225
|
+
puts " - #{monitor.queue[property]}"
|
226
|
+
end
|
227
|
+
end
|
228
|
+
end
|
229
|
+
end
|
230
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
- :params:
|
2
|
+
:type: org
|
3
|
+
:version: 5.1
|
4
|
+
:base_profile: all
|
5
|
+
:profile: jbb1
|
6
|
+
- mod_cluster
|
7
|
+
- jms:
|
8
|
+
:peer_id: 1
|
9
|
+
- deploy_folder: deploy/datasources
|
10
|
+
- deploy_folder: deploy/apps
|
11
|
+
- resource:
|
12
|
+
lib: ~/jdbc/postgresql/postgresql.jar
|
13
|
+
- jmx:
|
14
|
+
:password: jbb
|
15
|
+
- default_ds:
|
16
|
+
:type: postgres
|
17
|
+
:attributes:
|
18
|
+
:user_name: postgres
|
19
|
+
:password: postgres
|
20
|
+
:connection_url: jdbc:postgresql://localhost:5432/jboss_org_db
|
21
|
+
:min_pool_size: 5
|
22
|
+
:max_pool_size: 15
|
23
|
+
- jboss_web:
|
24
|
+
:connectors:
|
25
|
+
ajp:
|
26
|
+
:max_threads: 600
|
27
|
+
- run_conf:
|
28
|
+
:heap_size: 1024m
|
29
|
+
:perm_size: 512m
|
30
|
+
:stack_size: 128k
|
31
|
+
- slimming:
|
32
|
+
- web_console
|
@@ -0,0 +1,32 @@
|
|
1
|
+
- :params:
|
2
|
+
:type: org
|
3
|
+
:version: 5.1
|
4
|
+
:base_profile: all
|
5
|
+
:profile: jbb1
|
6
|
+
- mod_cluster
|
7
|
+
- jms:
|
8
|
+
:peer_id: 2
|
9
|
+
- deploy_folder: deploy/datasources
|
10
|
+
- deploy_folder: deploy/apps
|
11
|
+
- resource:
|
12
|
+
lib: ~/jdbc/postgresql/postgresql.jar
|
13
|
+
- jmx:
|
14
|
+
:password: jbb
|
15
|
+
- default_ds:
|
16
|
+
:type: postgres
|
17
|
+
:attributes:
|
18
|
+
:user_name: postgres
|
19
|
+
:password: postgres
|
20
|
+
:connection_url: jdbc:postgresql://localhost:5432/jboss_org_db
|
21
|
+
:min_pool_size: 5
|
22
|
+
:max_pool_size: 15
|
23
|
+
- jboss_web:
|
24
|
+
:connectors:
|
25
|
+
ajp:
|
26
|
+
:max_threads: 600
|
27
|
+
- run_conf:
|
28
|
+
:heap_size: 1024m
|
29
|
+
:perm_size: 512m
|
30
|
+
:stack_size: 128k
|
31
|
+
- slimming:
|
32
|
+
- web_console
|
@@ -0,0 +1,61 @@
|
|
1
|
+
# The MIT License
|
2
|
+
#
|
3
|
+
# Copyright (c) 2011 Marcelo Guimarães <ataxexe@gmail.com>
|
4
|
+
#
|
5
|
+
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
# of this software and associated documentation files (the "Software"), to deal
|
7
|
+
# in the Software without restriction, including without limitation the rights
|
8
|
+
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
# copies of the Software, and to permit persons to whom the Software is
|
10
|
+
# furnished to do so, subject to the following conditions:
|
11
|
+
#
|
12
|
+
# The above copyright notice and this permission notice shall be included in
|
13
|
+
# all copies or substantial portions of the Software.
|
14
|
+
#
|
15
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
# THE SOFTWARE.
|
22
|
+
|
23
|
+
puts "Server Info:"
|
24
|
+
monitor.properties[:server_info].each do |property|
|
25
|
+
puts " |--> #{monitor.server_info[property]}"
|
26
|
+
end
|
27
|
+
|
28
|
+
puts "Connectors:"
|
29
|
+
monitor.with :connectors do |connector|
|
30
|
+
puts " |--> #{connector}"
|
31
|
+
monitor.properties[:connector].each do |property|
|
32
|
+
puts " |--> #{monitor.connector[property]}"
|
33
|
+
end
|
34
|
+
monitor.properties[:request].each do |property|
|
35
|
+
puts " |--> #{monitor.request[property]}"
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
puts "Datasources:"
|
40
|
+
monitor.with :datasources do |datasource|
|
41
|
+
puts " |--> #{datasource}"
|
42
|
+
monitor.properties[:datasource].each do |property|
|
43
|
+
puts " |--> #{monitor.datasource[property]}"
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
puts "Webapps:"
|
48
|
+
monitor.with :webapps do |webapp|
|
49
|
+
puts " |--> #{webapp}"
|
50
|
+
monitor.properties[:webapp].each do |property|
|
51
|
+
puts " |--> #{monitor.webapp[property]}"
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
puts "Queues:"
|
56
|
+
monitor.with :queues do |queue|
|
57
|
+
puts " |--> #{queue}"
|
58
|
+
monitor.properties[:queue].each do |property|
|
59
|
+
puts " |--> #{monitor.queue[property]}"
|
60
|
+
end
|
61
|
+
end
|