NAME
JMX::Jmx4Perl::Agent - JSON-HTTP based acess to a remote JMX agent
SYNOPSIS
my $agent = new JMX::Jmx4Perl(mode=>"agent", url => "http://jeeserver/j4p");
my $answer = $agent->get_attribute("java.lang:type=Memory","HeapMemoryUsage");
print Dumper($answer);
$VAR1 = {
'value' => {
'committed' => 18292736,
'used' => 15348352,
'max' => 532742144,
'init' => 0
},
'status' => 200,
'request' => {
'attribute' => 'HeapMemoryUsage',
'name' => 'java.lang:type=Memory'
},
};
DESCRIPTION
This module is not used directly, but via JMX::Jmx4Perl, which acts as a proxy to this module. You can think of JMX::Jmx4Perl as the interface which is backed up by this module. Other implementations (e.g.
METHODS
- $jjagent = JMX::Jmx4Perl::Agent->new(url => $url, ....)
-
Creates a new local agent for a given url
- url => <url to JEE server>
-
The url where the agent is deployed. This is a mandatory parameter. The url must include the context within the server, which is typically based on the name of the war archive. Example:
http://localhost:8080/j4p
for a drop in deployment of the agent in a standard Tomcat's webapp directory. - timeout => <timeout>
-
Timeout in seconds after which a request should be stopped if it not suceeds within this time. This parameter is given through directly to the underlying LWP::UserAgent
- user => <user>, password => <password>
-
Credentials to use for the HTTP request
- proxy => { http => '<http_proxy>', https => '<https_proxy>', ... }
- proxy => <http_proxy>
-
Optional proxy to use
- proxy_user => <user>, proxy_password => <password>
-
Credentials to use for accessing the proxy
- target
-
Add a target which is used for any request served by this object if not already a target is present in the request. This way you can setup the default target configuration if you are using the agent servlet as a proxy, e.g.
... target => { url => "service:jmx:...", user => "...", password => "..." }
- $resp = $agent->request($request)
-
Implementation of the JMX request as specified in JMX::Jmx4Perl. It uses a HTTP::Request sent via an LWP::UserAgent for posting a JSON representation of the request. This method shouldn't be called directly but via JMX::Jmx4Perl->request().
- $url = $agent->request_url($request)
-
Generate the URL for accessing the java agent based on a given request.
LICENSE
This file is part of jmx4perl.
Jmx4perl is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version.
jmx4perl is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with jmx4perl. If not, see <http://www.gnu.org/licenses/>.
A commercial license is available as well. Please contact roland@cpan.org for further details.
AUTHOR
roland@cpan.org