JMX / RMI Agent

Simple agent that can be used to configure JMX access to the JVM.

License

License

GroupId

GroupId

ch.ledcom.agent.jmx
ArtifactId

ArtifactId

jmx-rmi-agent
Last Version

Last Version

1.1
Release Date

Release Date

Type

Type

jar
Description

Description

JMX / RMI Agent
Simple agent that can be used to configure JMX access to the JVM.
Project Organization

Project Organization

LedCom
Source Code Management

Source Code Management

https://github.com/gehel/jmx-rmi-agent

Download jmx-rmi-agent

How to add to project

<!-- https://jarcasting.com/artifacts/ch.ledcom.agent.jmx/jmx-rmi-agent/ -->
<dependency>
    <groupId>ch.ledcom.agent.jmx</groupId>
    <artifactId>jmx-rmi-agent</artifactId>
    <version>1.1</version>
</dependency>
// https://jarcasting.com/artifacts/ch.ledcom.agent.jmx/jmx-rmi-agent/
implementation 'ch.ledcom.agent.jmx:jmx-rmi-agent:1.1'
// https://jarcasting.com/artifacts/ch.ledcom.agent.jmx/jmx-rmi-agent/
implementation ("ch.ledcom.agent.jmx:jmx-rmi-agent:1.1")
'ch.ledcom.agent.jmx:jmx-rmi-agent:jar:1.1'
<dependency org="ch.ledcom.agent.jmx" name="jmx-rmi-agent" rev="1.1">
  <artifact name="jmx-rmi-agent" type="jar" />
</dependency>
@Grapes(
@Grab(group='ch.ledcom.agent.jmx', module='jmx-rmi-agent', version='1.1')
)
libraryDependencies += "ch.ledcom.agent.jmx" % "jmx-rmi-agent" % "1.1"
[ch.ledcom.agent.jmx/jmx-rmi-agent "1.1"]

Dependencies

compile (2)

Group / Artifact Type Version
com.google.code.findbugs : jsr305 jar 3.0.0
org.slf4j : slf4j-api jar 1.7.7

test (3)

Group / Artifact Type Version
junit : junit jar 4.12-beta-2
com.google.guava : guava jar 18.0
org.assertj : assertj-core jar 1.6.1

Project Modules

There are no modules declared in this project.

jmx-rmi-agent

Join the chat at https://gitter.im/gehel/jmx-rmi-agent

jmx-rmi-agent is a simple Java Agent used to configure JMX registry. It is based on multiple blog articles and documentation readily found on the web. This agent barely deserve to be a project on its own, but I found myself in need of this simple project more than once, and maybe somebody else will need it as well.

There are quite a few projects implementing an agent that will fix the RMI port issue, but I could not find one that would also configure a few other things, like authentication.

Goal

JMX is awfully useful to monitor your production servers. But usually production servers are protected by firewalls (at least we hope they are). JMX uses RMI as its communication layer and RMI is by default using dynamic TCP ports. When firewalls are part of the equation static ports are much easier to work with.

This project helps you configure JMX through a single TCP port. It also help you configure a few other things, like authentication.

If you need more functionalities, please open a ticket on our issue tracker.

Configuration

To load the agent, use the standard syntax, add the following to your command line:

-javaagent:</path/to/jmx-rmi-agent.jar>

The following additional parameters are supported:

-Dch.ledcom.agent.jmx.port=<JMX port> the port on which JMX will be available (default = 3000)
-Dch.ledcom.agent.jmx.forceLocalhost=<true|false> is JMX available only from localhost
-Dch.ledcom.agent.jmx.authenticate=<true|false> is authentication required
-Dch.ledcom.agent.jmx.password.file=</path/to/password/file>
-Dch.ledcom.agent.jmx.access.file=</path/to/access/file>

Password and access file are the standard files as described in the official documentation.

Maven repositories

You can download this project from Maven repositories :

RPM and DEB are also available, directly in the snapshots or release repository.

Versions

Version
1.1
1.0
0.1
0.0.1