jmx 0.9 → 1.1
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 +7 -0
- data/README.md +5 -2
- data/lib/jmx/dynamic_mbean.rb +1 -0
- data/lib/jmx/mbean_proxy.rb +2 -2
- data/lib/jmx/mbeans.rb +2 -2
- data/lib/jmx/version.rb +1 -1
- data/lib/jmx.rb +2 -1
- metadata +39 -77
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: b2af2e528900841ec8cc9eac226791f5c60fe17abdfd16b70c237794b4bdb8b6
|
4
|
+
data.tar.gz: 2bd9382ac062e5776defd30b67aecd3dff98581eae29e2383eaa74dc55c2f0b3
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 115e7e0741a9503515c3a81f0b7910ef959f21e4ec3060f9e2e7fe5228715e5807e4cbf711a92e8a14faf4ddb8cb0e819c43f8458d1c9bab11c328c42d3bdcde
|
7
|
+
data.tar.gz: 92cd54d5c54775742c54bf79408e19131515b9369b82b4ab8370dfddbbf9088cb902dc56198c7be8a3b3fdc1c5dca6a25cef0249d74c86675a47a55f4bb492e6
|
data/README.md
CHANGED
@@ -12,7 +12,7 @@ Connect to same JVM as client script and look at Memory MBean
|
|
12
12
|
```ruby
|
13
13
|
require 'jmx'
|
14
14
|
|
15
|
-
client = JMX.
|
15
|
+
client = JMX.connect(:host => 'localhost', :port => 9999)
|
16
16
|
|
17
17
|
memory = client["java.lang:type=Memory"]
|
18
18
|
puts memory.attributes
|
@@ -35,9 +35,12 @@ You can also create your own MBeans and register them as well:
|
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
|
+
my_server = JMX::MBeanServer.new
|
39
|
+
my_server_connector = JMX.simple_server(server: my_server)
|
40
|
+
|
38
41
|
dyna = MyDynamicMBean.new("domain.MySuperBean", "Heh")
|
39
42
|
domain = my_server.default_domain
|
40
|
-
my_server.register_mbean dyna, "#{
|
43
|
+
my_server.register_mbean dyna, "#{domain}:type=MyDynamicMBean"
|
41
44
|
```
|
42
45
|
|
43
46
|
## REQUIREMENTS:
|
data/lib/jmx/dynamic_mbean.rb
CHANGED
@@ -13,6 +13,7 @@ module JMX
|
|
13
13
|
:list => ['java.util.List', lambda {|param| param.to_a}],
|
14
14
|
:long => ['java.lang.Long', lambda {|param| param.to_i}],
|
15
15
|
:float => ['java.lang.Float', lambda {|param| param.to_f}],
|
16
|
+
:double => ['java.lang.Double', lambda {|param| param.to_f}],
|
16
17
|
:map => ['java.util.Map', lambda {|param| param}],
|
17
18
|
:set => ['java.util.Set', lambda {|param| param}],
|
18
19
|
:string => ['java.lang.String', lambda {|param| param.to_s}],
|
data/lib/jmx/mbean_proxy.rb
CHANGED
@@ -29,8 +29,8 @@ module JMX
|
|
29
29
|
def self.generate(server, object_name)
|
30
30
|
parent, class_name = MBeans.parent_for object_name.info(server).class_name
|
31
31
|
|
32
|
-
if parent.const_defined? class_name
|
33
|
-
proxy = parent.const_get(class_name)
|
32
|
+
if parent.const_defined? class_name, false
|
33
|
+
proxy = parent.const_get(class_name, false)
|
34
34
|
else
|
35
35
|
proxy = Class.new MBeanProxy
|
36
36
|
parent.const_set class_name, proxy
|
data/lib/jmx/mbeans.rb
CHANGED
@@ -16,10 +16,10 @@ module JMX
|
|
16
16
|
return [parent, segment] if segment =~ /^[A-Z]/
|
17
17
|
|
18
18
|
segment.capitalize!
|
19
|
-
unless parent.const_defined? segment
|
19
|
+
unless parent.const_defined? segment, false
|
20
20
|
parent.const_set segment, Module.new
|
21
21
|
else
|
22
|
-
parent.const_get segment
|
22
|
+
parent.const_get segment, false
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
data/lib/jmx/version.rb
CHANGED
data/lib/jmx.rb
CHANGED
@@ -36,8 +36,9 @@ module JMX
|
|
36
36
|
def self.simple_server(opts = {})
|
37
37
|
port = opts[:port] || 8686
|
38
38
|
url_path = opts[:url_path] || "/jmxrmi"
|
39
|
+
server = opts[:server] || JMX::MBeanServer.new
|
39
40
|
url = "service:jmx:rmi:///jndi/rmi://localhost:#{port}#{url_path}"
|
40
|
-
$registry = RMIRegistry.new
|
41
|
+
$registry = opts[:registry] || RMIRegistry.new(port)
|
41
42
|
@connector = JMX::MBeanServerConnector.new(url, JMX::MBeanServer.new).start
|
42
43
|
end
|
43
44
|
end
|
metadata
CHANGED
@@ -1,15 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jmx
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
version: '0.9'
|
4
|
+
version: '1.1'
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Thomas E. Enebo
|
9
|
-
autorequire:
|
10
8
|
bindir: bin
|
11
9
|
cert_chain: []
|
12
|
-
date:
|
10
|
+
date: 2024-12-06 00:00:00.000000000 Z
|
13
11
|
dependencies: []
|
14
12
|
description: Access and create MBeans in a friendly Ruby syntax
|
15
13
|
email: tom.enebo@gmail.com
|
@@ -17,90 +15,54 @@ executables: []
|
|
17
15
|
extensions: []
|
18
16
|
extra_rdoc_files: []
|
19
17
|
files:
|
20
|
-
-
|
21
|
-
|
22
|
-
-
|
23
|
-
|
24
|
-
-
|
25
|
-
|
26
|
-
-
|
27
|
-
|
28
|
-
-
|
29
|
-
|
30
|
-
-
|
31
|
-
|
32
|
-
-
|
33
|
-
|
34
|
-
-
|
35
|
-
|
36
|
-
-
|
37
|
-
|
38
|
-
-
|
39
|
-
|
40
|
-
-
|
41
|
-
|
42
|
-
-
|
43
|
-
|
44
|
-
-
|
45
|
-
|
46
|
-
- !binary |-
|
47
|
-
bGliL2pteC9vYmplY3RfbmFtZS5yYg==
|
48
|
-
- !binary |-
|
49
|
-
bGliL2pteC9zZXJ2ZXIucmI=
|
50
|
-
- !binary |-
|
51
|
-
bGliL2pteC91dGlsL3N0cmluZ191dGlscy5yYg==
|
52
|
-
- !binary |-
|
53
|
-
bGliL2pteC92ZXJzaW9uLnJi
|
54
|
-
- !binary |-
|
55
|
-
bGliL3JtaS5yYg==
|
56
|
-
- !binary |-
|
57
|
-
bmJwcm9qZWN0L3ByaXZhdGUvcHJpdmF0ZS54bWw=
|
58
|
-
- !binary |-
|
59
|
-
bmJwcm9qZWN0L3Byb2plY3QucHJvcGVydGllcw==
|
60
|
-
- !binary |-
|
61
|
-
bmJwcm9qZWN0L3Byb2plY3QueG1s
|
62
|
-
- !binary |-
|
63
|
-
c2FtcGxlcy9tZW1vcnkucmI=
|
64
|
-
- !binary |-
|
65
|
-
dGVzdC9qbXhfYXR0cmlidXRlX3Rlc3QucmI=
|
66
|
-
- !binary |-
|
67
|
-
dGVzdC9qbXhfY2xpZW50X3Rlc3QucmI=
|
68
|
-
- !binary |-
|
69
|
-
dGVzdC9qbXhfbWFuZ2xpbmdfdGVzdC5yYg==
|
70
|
-
- !binary |-
|
71
|
-
dGVzdC9qbXhfc2VydmVyX3Rlc3QucmI=
|
18
|
+
- ".gitignore"
|
19
|
+
- History.txt
|
20
|
+
- LICENSE.txt
|
21
|
+
- Manifest.txt
|
22
|
+
- README.md
|
23
|
+
- Rakefile
|
24
|
+
- jmx.gemspec
|
25
|
+
- lib/jmx.rb
|
26
|
+
- lib/jmx/composite_data.rb
|
27
|
+
- lib/jmx/dynamic_mbean.rb
|
28
|
+
- lib/jmx/mbean_proxy.rb
|
29
|
+
- lib/jmx/mbeans.rb
|
30
|
+
- lib/jmx/notifier.rb
|
31
|
+
- lib/jmx/object_name.rb
|
32
|
+
- lib/jmx/server.rb
|
33
|
+
- lib/jmx/util/string_utils.rb
|
34
|
+
- lib/jmx/version.rb
|
35
|
+
- lib/rmi.rb
|
36
|
+
- nbproject/private/private.xml
|
37
|
+
- nbproject/project.properties
|
38
|
+
- nbproject/project.xml
|
39
|
+
- samples/memory.rb
|
40
|
+
- test/jmx_attribute_test.rb
|
41
|
+
- test/jmx_client_test.rb
|
42
|
+
- test/jmx_mangling_test.rb
|
43
|
+
- test/jmx_server_test.rb
|
72
44
|
homepage: http://github.com/enebo/jmx
|
73
45
|
licenses: []
|
74
|
-
|
46
|
+
metadata: {}
|
75
47
|
rdoc_options: []
|
76
48
|
require_paths:
|
77
49
|
- lib
|
78
50
|
required_ruby_version: !ruby/object:Gem::Requirement
|
79
51
|
requirements:
|
80
|
-
- -
|
52
|
+
- - ">="
|
81
53
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
83
|
-
MA==
|
84
|
-
none: false
|
54
|
+
version: '0'
|
85
55
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
86
56
|
requirements:
|
87
|
-
- -
|
57
|
+
- - ">="
|
88
58
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
90
|
-
MA==
|
91
|
-
none: false
|
59
|
+
version: '0'
|
92
60
|
requirements: []
|
93
|
-
|
94
|
-
|
95
|
-
signing_key:
|
96
|
-
specification_version: 3
|
61
|
+
rubygems_version: 3.6.0.dev
|
62
|
+
specification_version: 4
|
97
63
|
summary: Access and create MBeans in a friendly Ruby syntax
|
98
64
|
test_files:
|
99
|
-
-
|
100
|
-
|
101
|
-
-
|
102
|
-
|
103
|
-
- !binary |-
|
104
|
-
dGVzdC9qbXhfbWFuZ2xpbmdfdGVzdC5yYg==
|
105
|
-
- !binary |-
|
106
|
-
dGVzdC9qbXhfc2VydmVyX3Rlc3QucmI=
|
65
|
+
- test/jmx_attribute_test.rb
|
66
|
+
- test/jmx_client_test.rb
|
67
|
+
- test/jmx_mangling_test.rb
|
68
|
+
- test/jmx_server_test.rb
|