rboss 0.9.1 → 0.9.3
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 +4 -4
- data/.idea/encodings.xml +5 -0
- data/.idea/misc.xml +5 -0
- data/.idea/modules.xml +9 -0
- data/.idea/rboss.iml +65 -0
- data/.idea/scopes/scope_settings.xml +5 -0
- data/.idea/vcs.xml +7 -0
- data/Gemfile +2 -2
- data/README.md +34 -397
- data/bin/rboss-cli +77 -28
- data/lib/rboss.rb +10 -12
- data/lib/rboss/cli/invoker.rb +31 -18
- data/lib/rboss/cli/mappings.rb +11 -10
- data/lib/rboss/cli/mappings/resources/connector.yaml +2 -2
- data/lib/rboss/cli/mappings/resources/datasource.yaml +5 -5
- data/lib/rboss/cli/mappings/resources/deployment-scanner.yaml +3 -3
- data/lib/rboss/cli/mappings/resources/interface.yaml +2 -2
- data/lib/rboss/cli/mappings/resources/jdbc-driver.yaml +12 -0
- data/lib/rboss/cli/mappings/resources/jms-queue.yaml +44 -0
- data/lib/rboss/cli/mappings/resources/runtime.yaml +34 -0
- data/lib/rboss/cli/mappings/resources/server.yaml +8 -8
- data/lib/rboss/cli/resource.rb +60 -37
- data/lib/rboss/cli/result_parser.rb +29 -5
- data/lib/rboss/plaftorm.rb +2 -25
- data/lib/rboss/utils.rb +2 -8
- data/lib/rboss/version.rb +1 -1
- data/lib/rboss/view/colorizers.rb +4 -2
- data/lib/rboss/view/formatters.rb +37 -0
- data/lib/rboss/view/table_builder.rb +2 -2
- data/rboss-cli-bash-completion +82 -0
- data/rboss.gemspec +12 -12
- data/rboss.iml +6 -7
- data/rboss.ipr +2 -11
- metadata +23 -53
- data/bin/rboss-profile +0 -125
- data/bin/rboss-twiddle +0 -204
- data/lib/rboss/bin/command_actions.rb +0 -125
- data/lib/rboss/cli/mappings/resources/jdbc_driver.yaml +0 -12
- data/lib/rboss/component_processor.rb +0 -179
- data/lib/rboss/components/component.rb +0 -58
- data/lib/rboss/components/datasource.rb +0 -179
- data/lib/rboss/components/deploy_folder.rb +0 -104
- data/lib/rboss/components/hypersonic_replacer.rb +0 -58
- data/lib/rboss/components/jbossweb.rb +0 -119
- data/lib/rboss/components/jmx.rb +0 -88
- data/lib/rboss/components/mod_cluster.rb +0 -81
- data/lib/rboss/components/org/6.0/deploy_folder.rb +0 -33
- data/lib/rboss/components/org/jmx.rb +0 -59
- data/lib/rboss/components/profile_folder.rb +0 -44
- data/lib/rboss/components/resource.rb +0 -52
- data/lib/rboss/components/restore_slimming.rb +0 -46
- data/lib/rboss/components/run_conf.rb +0 -90
- data/lib/rboss/components/run_conf.yaml +0 -22
- data/lib/rboss/components/service_script.rb +0 -55
- data/lib/rboss/components/slimming.rb +0 -107
- data/lib/rboss/components/slimming.yaml +0 -110
- data/lib/rboss/components/soa-p/hypersonic_replacer.rb +0 -79
- data/lib/rboss/components/soa-p/jmx.rb +0 -47
- data/lib/rboss/components/xadatasource.rb +0 -67
- data/lib/rboss/file_processor.rb +0 -111
- data/lib/rboss/jboss_path.rb +0 -74
- data/lib/rboss/jboss_profile.rb +0 -350
- data/lib/rboss/resources/jboss_init_redhat.sh.erb +0 -140
- data/lib/rboss/resources/mod_cluster.sar/META-INF/mod_cluster-jboss-beans.xml +0 -282
- data/lib/rboss/resources/mod_cluster.sar/mod_cluster-1.1.2.Final.jar +0 -0
- data/lib/rboss/resources/run.conf.bat.erb +0 -60
- data/lib/rboss/resources/run.conf.erb +0 -62
- data/lib/rboss/twiddle.rb +0 -25
- data/lib/rboss/twiddle/base_monitor.rb +0 -88
- data/lib/rboss/twiddle/mbean.rb +0 -148
- data/lib/rboss/twiddle/monitor.rb +0 -222
- data/lib/rboss/twiddle/twiddle.rb +0 -87
@@ -1,62 +0,0 @@
|
|
1
|
-
## -*- shell-script -*- ######################################################
|
2
|
-
## ##
|
3
|
-
## JBoss Bootstrap Script Configuration ##
|
4
|
-
## ##
|
5
|
-
##############################################################################
|
6
|
-
|
7
|
-
### $Id: run.conf 91533 2009-07-22 01:20:05Z gbadner $
|
8
|
-
|
9
|
-
#
|
10
|
-
# This shell script is sourced by run.sh to initialize the environment
|
11
|
-
# variables that run.sh uses. It is recommended to use this file to
|
12
|
-
# configure these variables, rather than modifying run.sh itself.
|
13
|
-
#
|
14
|
-
|
15
|
-
#
|
16
|
-
# Specify the maximum file descriptor limit, use "max" or "maximum" to use
|
17
|
-
# the default, as queried by the system.
|
18
|
-
#
|
19
|
-
# Defaults to "maximum"
|
20
|
-
#
|
21
|
-
#MAX_FD="maximum"
|
22
|
-
|
23
|
-
#
|
24
|
-
# Specify the JBoss Profiler configuration file to load.
|
25
|
-
#
|
26
|
-
# Default is to not load a JBoss Profiler configuration file.
|
27
|
-
#
|
28
|
-
#PROFILER=""
|
29
|
-
|
30
|
-
#
|
31
|
-
# Specify the location of the Java home directory. If set then $JAVA will
|
32
|
-
# be defined to $JAVA_HOME/bin/java, else $JAVA will be "java".
|
33
|
-
#
|
34
|
-
#JAVA_HOME="/usr/java/jdk1.6.0"
|
35
|
-
|
36
|
-
#
|
37
|
-
# Specify the exact Java VM executable to use.
|
38
|
-
#
|
39
|
-
#JAVA=""
|
40
|
-
|
41
|
-
#
|
42
|
-
# Specify options to pass to the Java VM.
|
43
|
-
#
|
44
|
-
if [ "x$JAVA_OPTS" = "x" ]; then
|
45
|
-
JAVA_OPTS="-Xms<%= @config[:heap_size] %> -Xmx<%= @config[:heap_size] %>"
|
46
|
-
JAVA_OPTS="$JAVA_OPTS -XX:PermSize=<%= @config[:perm_size] %> -XX:MaxPermSize=<%= @config[:perm_size] %>"
|
47
|
-
JAVA_OPTS="$JAVA_OPTS -Xss<%= @config[:stack_size] %>"
|
48
|
-
JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dsun.lang.ClassLoader.allowArraySyntax=true"
|
49
|
-
fi
|
50
|
-
|
51
|
-
## Specify the Security Manager options
|
52
|
-
#JAVA_OPTS="$JAVA_OPTS -Djava.security.manager -Djava.security.policy=$POLICY"
|
53
|
-
|
54
|
-
# Sample JPDA settings for remote socket debugging
|
55
|
-
<%= "#" unless @config[:debug] == :socket %>JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"
|
56
|
-
|
57
|
-
# Sample JPDA settings for shared memory debugging
|
58
|
-
<%= "#" unless @config[:debug] == :shared_memory %>JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_shmem,address=jboss,server=y,suspend=n"
|
59
|
-
|
60
|
-
<% unless @jvm_args.empty? %>
|
61
|
-
JAVA_OPTS="$JAVA_OPTS <%= @jvm_args.join ' ' %>"
|
62
|
-
<% end %>
|
data/lib/rboss/twiddle.rb
DELETED
@@ -1,25 +0,0 @@
|
|
1
|
-
# The MIT License
|
2
|
-
#
|
3
|
-
# Copyright (c) 2011-2012 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
|
-
require_relative 'twiddle/base_monitor'
|
24
|
-
require_relative 'twiddle/mbean'
|
25
|
-
require_relative 'twiddle/monitor'
|
@@ -1,88 +0,0 @@
|
|
1
|
-
# The MIT License
|
2
|
-
#
|
3
|
-
# Copyright (c) 2011-2012 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
|
-
require_relative 'monitor'
|
24
|
-
require_relative 'twiddle'
|
25
|
-
|
26
|
-
module RBoss
|
27
|
-
module Twiddle
|
28
|
-
|
29
|
-
class BaseMonitor
|
30
|
-
include RBoss::Twiddle::Monitor
|
31
|
-
|
32
|
-
def initialize twiddle
|
33
|
-
@twiddle = twiddle
|
34
|
-
defaults.each do |mbean_id, config|
|
35
|
-
monitor mbean_id, config
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
end
|
40
|
-
|
41
|
-
class Invoker
|
42
|
-
|
43
|
-
def monitor
|
44
|
-
@monitor ||= BaseMonitor::new self
|
45
|
-
@monitor
|
46
|
-
end
|
47
|
-
|
48
|
-
def mbean id
|
49
|
-
monitor.mbean id
|
50
|
-
end
|
51
|
-
|
52
|
-
def get params
|
53
|
-
mbean = extract params
|
54
|
-
mbean[params[:property]]
|
55
|
-
end
|
56
|
-
|
57
|
-
def set params
|
58
|
-
mbean = extract params
|
59
|
-
mbean[params[:property]] = params[:value]
|
60
|
-
end
|
61
|
-
|
62
|
-
def invoke params
|
63
|
-
mbean = extract params
|
64
|
-
mbean.invoke params[:method], *params[:args]
|
65
|
-
end
|
66
|
-
|
67
|
-
def query params
|
68
|
-
mbean = extract params
|
69
|
-
execute :query, mbean.name, *params[:args]
|
70
|
-
end
|
71
|
-
|
72
|
-
def info params
|
73
|
-
mbean = extract params
|
74
|
-
execute :info, mbean.name, *params[:args]
|
75
|
-
end
|
76
|
-
|
77
|
-
private
|
78
|
-
|
79
|
-
def extract params
|
80
|
-
mbean = monitor.mbean params[:mbean]
|
81
|
-
mbean.with params[:name]
|
82
|
-
end
|
83
|
-
|
84
|
-
end
|
85
|
-
|
86
|
-
end
|
87
|
-
|
88
|
-
end
|
data/lib/rboss/twiddle/mbean.rb
DELETED
@@ -1,148 +0,0 @@
|
|
1
|
-
# The MIT License
|
2
|
-
#
|
3
|
-
# Copyright (c) 2011-2012 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
|
-
require_relative 'twiddle'
|
24
|
-
|
25
|
-
module RBoss
|
26
|
-
class MBean
|
27
|
-
|
28
|
-
attr_reader :pattern
|
29
|
-
attr_accessor :resource, :twiddle, :description
|
30
|
-
|
31
|
-
@@__detail__resourced__ = proc do |resources, &block|
|
32
|
-
resouces = parse_resource resources
|
33
|
-
details = {}
|
34
|
-
resouces.each do |resource|
|
35
|
-
with resource do
|
36
|
-
details[resource] = {}
|
37
|
-
@properties.each do |property|
|
38
|
-
details[resource][property] = self[property].value
|
39
|
-
end
|
40
|
-
end
|
41
|
-
end
|
42
|
-
details.each &block if block
|
43
|
-
details
|
44
|
-
end
|
45
|
-
|
46
|
-
@@__detail__ = proc do |&block|
|
47
|
-
details = {}
|
48
|
-
@properties.each do |property|
|
49
|
-
details[property] = self[property].value
|
50
|
-
end
|
51
|
-
details.each &block if block
|
52
|
-
details
|
53
|
-
end
|
54
|
-
|
55
|
-
def initialize params
|
56
|
-
@pattern = params[:pattern]
|
57
|
-
@twiddle = params[:twiddle]
|
58
|
-
@properties = params[:properties]
|
59
|
-
@description = params[:description]
|
60
|
-
if params[:scan]
|
61
|
-
(
|
62
|
-
class << self
|
63
|
-
self
|
64
|
-
end).send :define_method, :scan, ¶ms[:scan]
|
65
|
-
(
|
66
|
-
class << self
|
67
|
-
self
|
68
|
-
end).send :define_method, :each do |&block|
|
69
|
-
scan.each &block
|
70
|
-
end
|
71
|
-
end
|
72
|
-
if params[:properties]
|
73
|
-
(
|
74
|
-
class << self
|
75
|
-
self
|
76
|
-
end).send :define_method,
|
77
|
-
:detail,
|
78
|
-
&(params[:scan] ?
|
79
|
-
@@__detail__resourced__ : @@__detail__)
|
80
|
-
end
|
81
|
-
end
|
82
|
-
|
83
|
-
def with resource
|
84
|
-
@resource = resource
|
85
|
-
if block_given?
|
86
|
-
yield
|
87
|
-
@resource = nil
|
88
|
-
end
|
89
|
-
self
|
90
|
-
end
|
91
|
-
|
92
|
-
def name
|
93
|
-
if pattern['#{resource}'] and not @resource
|
94
|
-
domain, name = pattern.split ':'
|
95
|
-
name.gsub! /[^,]+\{resource\}/, ''
|
96
|
-
name << "," if name.empty?
|
97
|
-
name << "*"
|
98
|
-
return "#{domain}:#{name}"
|
99
|
-
end
|
100
|
-
resource = @resource
|
101
|
-
eval("\"#{pattern}\"")
|
102
|
-
end
|
103
|
-
|
104
|
-
def [] property
|
105
|
-
resource = @resource
|
106
|
-
query = eval("\"#{pattern}\"")
|
107
|
-
result = @twiddle.execute(:get, query, property)
|
108
|
-
|
109
|
-
def result.value
|
110
|
-
self.split( /=/, 2)[1]
|
111
|
-
end
|
112
|
-
|
113
|
-
result
|
114
|
-
end
|
115
|
-
|
116
|
-
def []= property, value
|
117
|
-
resource = @resource
|
118
|
-
query = eval("\"#{pattern}\"")
|
119
|
-
@twiddle.execute :set, query, property, value
|
120
|
-
end
|
121
|
-
|
122
|
-
def invoke method, *args, &block
|
123
|
-
resource = @resource
|
124
|
-
query = eval("\"#{pattern} #{method}\"")
|
125
|
-
return_value = @twiddle.execute :invoke, query, args
|
126
|
-
if block_given?
|
127
|
-
block.call return_value
|
128
|
-
end
|
129
|
-
return_value
|
130
|
-
end
|
131
|
-
|
132
|
-
def query query, &block
|
133
|
-
result = @twiddle.execute(:query, query)
|
134
|
-
return [] unless result
|
135
|
-
result = result.split /\s+/
|
136
|
-
block ? result.collect(&block) : result
|
137
|
-
end
|
138
|
-
|
139
|
-
def parse_resource resources
|
140
|
-
return scan if resources == :all
|
141
|
-
return [resources] unless resources.respond_to? :each
|
142
|
-
resources
|
143
|
-
end
|
144
|
-
|
145
|
-
end
|
146
|
-
|
147
|
-
end
|
148
|
-
|
@@ -1,222 +0,0 @@
|
|
1
|
-
# The MIT License
|
2
|
-
#
|
3
|
-
# Copyright (c) 2011-2012 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
|
-
require_relative 'mbean'
|
24
|
-
|
25
|
-
module RBoss
|
26
|
-
module Twiddle
|
27
|
-
|
28
|
-
module Monitor
|
29
|
-
|
30
|
-
def defaults
|
31
|
-
@@defaults ||= {
|
32
|
-
:webapp => {
|
33
|
-
:title => 'Deployed webapps',
|
34
|
-
:pattern => 'jboss.web:type=Manager,host=localhost,path=/#{resource}',
|
35
|
-
:properties => %W(activeSessions maxActive distributable maxActiveSessions
|
36
|
-
expiredSessions rejectedSessions),
|
37
|
-
:header => ["Active\nSessions", "Max\nSessions", "Distributable",
|
38
|
-
"Max Active\nSession", "Expired\nSessions", "Rejected\nSessions"],
|
39
|
-
:format => {
|
40
|
-
:distributable => :boolean
|
41
|
-
},
|
42
|
-
:scan => proc do
|
43
|
-
query "jboss.web:type=Manager,*" do |path|
|
44
|
-
path.gsub!("jboss.web:type=Manager,path=/", "")
|
45
|
-
path.gsub!(/,host=.+/, '')
|
46
|
-
path
|
47
|
-
end
|
48
|
-
end
|
49
|
-
},
|
50
|
-
:web_deployment => {
|
51
|
-
:title => 'Deployed webapp control',
|
52
|
-
:pattern => 'jboss.web.deployment:war=/#{resource}'
|
53
|
-
},
|
54
|
-
:connector => {
|
55
|
-
:title => 'JBossWeb connector',
|
56
|
-
:pattern => 'jboss.web:type=ThreadPool,name=#{resource}',
|
57
|
-
:properties => %W(maxThreads currentThreadCount currentThreadsBusy),
|
58
|
-
:header => ['Max Threads', 'Current Threads', 'Busy Threads'],
|
59
|
-
:health => {
|
60
|
-
:current_threads => {
|
61
|
-
:percentage => {
|
62
|
-
:max => :max_threads,
|
63
|
-
:using => :current_threads
|
64
|
-
}
|
65
|
-
}
|
66
|
-
},
|
67
|
-
:scan => proc do
|
68
|
-
query "jboss.web:type=ThreadPool,*" do |path|
|
69
|
-
path.gsub "jboss.web:type=ThreadPool,name=", ""
|
70
|
-
end
|
71
|
-
end
|
72
|
-
},
|
73
|
-
:cached_connection_manager => {
|
74
|
-
:title => 'JBoss JCA cached connections',
|
75
|
-
:pattern => 'jboss.jca:service=CachedConnectionManager',
|
76
|
-
:properties => %W(InUseConnections),
|
77
|
-
:header => ['In Use Connections'],
|
78
|
-
},
|
79
|
-
:main_deployer => {
|
80
|
-
:title => 'Main Deployer',
|
81
|
-
:pattern => 'jboss.system:service=MainDeployer'
|
82
|
-
},
|
83
|
-
:engine => {
|
84
|
-
:title => 'JBossWeb engine',
|
85
|
-
:pattern => 'jboss.web:type=Engine',
|
86
|
-
:properties => %W(jvmRoute name defaultHost),
|
87
|
-
:header => ['JVM Route', 'Name', 'Default Host'],
|
88
|
-
},
|
89
|
-
:log4j => {
|
90
|
-
:title => 'JBoss Log4J Service',
|
91
|
-
:pattern => 'jboss.system:service=Logging,type=Log4jService',
|
92
|
-
:properties => %W(DefaultJBossServerLogThreshold),
|
93
|
-
:header => ['Default Server Log Threshold'],
|
94
|
-
},
|
95
|
-
:logger => {
|
96
|
-
:description => 'Logger Service',
|
97
|
-
:pattern => 'jboss.system:service=Logging,type=Logger'
|
98
|
-
},
|
99
|
-
:server => {
|
100
|
-
:title => 'JBoss Server specifications',
|
101
|
-
:pattern => 'jboss.system:type=Server',
|
102
|
-
:properties => %W(StartDate VersionName VersionNumber Version),
|
103
|
-
:layout => :vertical,
|
104
|
-
:header => ['Start Date', 'Version Name', 'Version Number', 'Version'],
|
105
|
-
},
|
106
|
-
:server_info => {
|
107
|
-
:title => 'JBoss Server runtime info',
|
108
|
-
:pattern => 'jboss.system:type=ServerInfo',
|
109
|
-
:properties => %W(ActiveThreadCount MaxMemory FreeMemory AvailableProcessors
|
110
|
-
JavaVendor JavaVersion OSName OSArch),
|
111
|
-
:header => ["Active Threads", "Max Memory", "Free Memory",
|
112
|
-
"Processors", "Java Vendor", "Java Version", "OS Name", "OS Arch"],
|
113
|
-
:layout => :vertical,
|
114
|
-
:format => {
|
115
|
-
:max_memory => :byte,
|
116
|
-
:free_memory => :byte
|
117
|
-
},
|
118
|
-
:health => {
|
119
|
-
:free_memory => {
|
120
|
-
:percentage => {
|
121
|
-
:max => :max_memory,
|
122
|
-
:free => :free_memory
|
123
|
-
}
|
124
|
-
}
|
125
|
-
}
|
126
|
-
},
|
127
|
-
:server_config => {
|
128
|
-
:title => 'JBoss Server configuration',
|
129
|
-
:pattern => 'jboss.system:type=ServerConfig',
|
130
|
-
:properties => %W(ServerName HomeDir ServerLogDir ServerHomeURL),
|
131
|
-
:layout => :vertical,
|
132
|
-
:header => ['Server Name', 'Home Dir', 'Log Dir', 'Home URL'],
|
133
|
-
},
|
134
|
-
:system_properties => {
|
135
|
-
:title => 'System properties',
|
136
|
-
:pattern => 'jboss:name=SystemProperties,type=Service'
|
137
|
-
},
|
138
|
-
:request => {
|
139
|
-
:title => 'JBossWeb connector requests',
|
140
|
-
:pattern => 'jboss.web:type=GlobalRequestProcessor,name=#{resource}',
|
141
|
-
:properties => %W(requestCount errorCount maxTime),
|
142
|
-
:header => ['Requests', 'Errors', 'Max Time'],
|
143
|
-
:health => {
|
144
|
-
:errors => {
|
145
|
-
:percentage => {
|
146
|
-
:max => :requests,
|
147
|
-
:using => :errors
|
148
|
-
}
|
149
|
-
}
|
150
|
-
},
|
151
|
-
:scan => proc do
|
152
|
-
query "jboss.web:type=ThreadPool,*" do |path|
|
153
|
-
path.gsub "jboss.web:type=ThreadPool,name=", ""
|
154
|
-
end
|
155
|
-
end
|
156
|
-
},
|
157
|
-
:datasource => {
|
158
|
-
:title => 'Datasource',
|
159
|
-
:pattern => 'jboss.jca:service=ManagedConnectionPool,name=#{resource}',
|
160
|
-
:properties => %W(MinSize MaxSize AvailableConnectionCount
|
161
|
-
InUseConnectionCount ConnectionCount),
|
162
|
-
:header => ["Min\nSize", "Max\nSize", "Avaliable\nConnections",
|
163
|
-
"In Use\nConnections", "Connection\nCount"],
|
164
|
-
:health => {
|
165
|
-
:in_use_connections => {
|
166
|
-
:percentage => {
|
167
|
-
:max => :max_size,
|
168
|
-
:using => :in_use_connections
|
169
|
-
}
|
170
|
-
}
|
171
|
-
},
|
172
|
-
:scan => proc do
|
173
|
-
query "jboss.jca:service=ManagedConnectionPool,*" do |path|
|
174
|
-
path.gsub "jboss.jca:service=ManagedConnectionPool,name=", ""
|
175
|
-
end
|
176
|
-
end
|
177
|
-
},
|
178
|
-
:queue => {
|
179
|
-
:title => 'JMS Queue',
|
180
|
-
:pattern => 'jboss.messaging.destination:service=Queue,name=#{resource}',
|
181
|
-
:properties => %W(JNDIName MessageCount DeliveringCount
|
182
|
-
ScheduledMessageCount MaxSize FullSize Clustered ConsumerCount),
|
183
|
-
:header => ['JNDI Name', 'Messages', 'Deliveries', 'Scheduleded', 'Max Size',
|
184
|
-
'Full Size', 'Clustered', 'Consumed'],
|
185
|
-
:scan => proc do
|
186
|
-
query "jboss.messaging.destination:service=Queue,*" do |path|
|
187
|
-
path.gsub "jboss.messaging.destination:service=Queue,name=", ""
|
188
|
-
end
|
189
|
-
end
|
190
|
-
},
|
191
|
-
:jndi => {
|
192
|
-
:title => 'JNDI View',
|
193
|
-
:pattern => 'jboss:service=JNDIView'
|
194
|
-
}
|
195
|
-
}
|
196
|
-
end
|
197
|
-
|
198
|
-
module_function :defaults
|
199
|
-
|
200
|
-
def mbeans
|
201
|
-
@mbeans ||= {}
|
202
|
-
end
|
203
|
-
|
204
|
-
def monitor(mbean_id, params)
|
205
|
-
mbeans[mbean_id] = RBoss::MBean::new params.merge(:twiddle => @twiddle)
|
206
|
-
end
|
207
|
-
|
208
|
-
def mbean(mbean_id)
|
209
|
-
mbean = mbeans[mbean_id]
|
210
|
-
return RBoss::MBean::new :pattern => mbean_id.to_s, :twiddle => @twiddle unless mbean
|
211
|
-
if @current_resource
|
212
|
-
mbean.with @current_resource
|
213
|
-
end
|
214
|
-
mbean
|
215
|
-
end
|
216
|
-
|
217
|
-
end
|
218
|
-
|
219
|
-
end
|
220
|
-
|
221
|
-
end
|
222
|
-
|