arecibo-jmx

Arecibo JMX instrumentation library

License

License

GroupId

GroupId

com.ning.arecibo
ArtifactId

ArtifactId

arecibo-jmx
Last Version

Last Version

1.0.3
Release Date

Release Date

Type

Type

jar
Description

Description

arecibo-jmx
Arecibo JMX instrumentation library
Project URL

Project URL

http://www.ning.com
Source Code Management

Source Code Management

http://github.com/ning/arecibo-jmx/tree/master

Download arecibo-jmx

How to add to project

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

Dependencies

compile (1)

Group / Artifact Type Version
org.weakref : jmxutils jar 1.9

provided (2)

Group / Artifact Type Version
com.google.inject : guice jar 2.0
com.google.inject.extensions : guice-multibindings jar 2.0

test (1)

Group / Artifact Type Version
org.testng : testng jar 6.0

Project Modules

There are no modules declared in this project.

The arecibo-maven library integrates jmxutils with Arecibo. Basically, it makes mbeans that are annotated with Arecibo-relevant annotations and exported with jmxutils, visible to Arecibo.

In order to use it, you need to do this:

  1. Annotate your mbeans.

    You can use the provided com.ning.arecibo.jmx.Monitored annotation or define your own. If you choose to define your own, then you can optionally define these fields in it and the library will pick them up:

        boolean enabled();
        boolean monitored();
        String description();
        String eventAttributeName();
        String eventName();
        String eventNamePattern();
        MonitoringType[] monitoringType();
    

    enabled and monitored specify both if the annotation is enabled or not (monitored is the deprecated way).

  2. Export your mbeans.

    See jmxutils for how this works.

  3. Install the guice module:

        install(new AreciboMonitoringModule("com.ning.arecibo.jmx:name=AreciboProfile", Monitored.class);
    

    The first argument is the name of the mbean that exports the mbeans for Arecibo (which you'll need to configure in Arecibo).

    Any additional arguments specify the (custom) annotations that the library should look for. If none are specified, it will default to Monitored.

After this, all annotated attributes of the exported mbeans should be listed in the specified mbean in the MonitoringProfile attribute.

com.ning.arecibo

Ning

Versions

Version
1.0.3
1.0.2
1.0.1