Jolokia is a JMX-HTTP bridge giving an alternative to JSR-160 connectors. It is an agent based approach with support for many platforms. In addition to basic JMX operations it enhances JMX remoting with unique features like bulk requests and fine grained security policies.
This is by far the smallest release ever: A single char has been added on top of 1.1.4 fixing a silly bug when using Glassfish with the AMX system. So, no need to update if you are not using Glassfish.
Next week is Devoxx time and as last year (and the years before) you have the change to meet me in Antwerp. Ping me or look for the guy with the Jolokia hoodie ;-)
Some bug fixes and two new features has been included for the autumn release:
A new configuration parameter "authenticatorClass" can be used for the JVM agent to specify an alternate authentication handler in addition to the default one (which simply checks for user and password).
With the configuration parameter "logHandlerClass" an alternative log handler can be specified. This can be used for the WAR and JVM agent in order to tweak Jolokia's logging behaviour. For the OSGi agent you already could use a LogService for customizing logging.
That's it and I hope you enjoy this release. I know, I'm late with 2.0, but as things happens, I have too much to do in 'real life' (i.e. feeding my family ;-). But I still hope to get it out this year, and yes, the 2.0 branch is growing (slowly).
BTW, the slides to my talk for the small but very fine JayDay 2013 are online, too. These are "implemented" in JavaScript including live demos, where the JavaScript can be directly inserted in the browser (tested with Chrome & Firefox). For the sample code, simply push the blue buttons at the bottom of a demo slide.
No big news in Jolokia land, but some bug fixes come with 1.1.3. Especially some issues with the JavaScript client's basic authentication and cross origin requests has been fixed. Otherwise I'm busy with 2.0 (and tons of other stuff ...). You can have a sneak preview of Jolokia 2.0 on this branch including basic notification support and quite some refactoring with respect to the service architecture.
So please stay tuned ....
In order to ease waiting for 2.0, Jolokia version 1.1.2 has been released. It contains some minor bug fixes as explained in the changelog. Depending on the bug reports and pull request dropping in there might be even a 1.1.3 release before 2.0 will be finished.
In the meantime, you can also see Jolokia live at JayDay where I will give a talk about Jolokia's JavaScript support. The forthcoming JMX notification support will presented, too. It is also a good chance to have a cold bavarian beer with me ;-)
This last feature release before work on 2.0.0 starts brings some small goodies.
Links to the corresponding GitHub issues and the bugs fixed in this release can be found in the change report.
This is the last feature release in the 1.x series. Work has already started on exciting new features for Jolokia 2.0. E.g. JMX notification support is coming, an initial pull model has been already implemented (on branch notification). There are even more ideas and some refactorings will happening along with some modest changes in the module structure. So, please stay tuned ...
It took some time, but it was worth it. Along with the usual bug fix parade, several new features has been added to Jolokia.
A new module jolokia-spring has been added which makes integration of Jolokia in Spring applications even easier. Simply add the following line (along with the corresponding namespace) to you application context and agent will be fired up during startup:
<jolokia:agent> <jolokia:config autoStart="true" host="0.0.0.0" port="8778" .... /> </jolokia:agent>
More details can be found here in the reference manual.
The new jolokia-jmx module provides an own MBeanServer which never gets exposed via JSR-160 remoting. By registering your MBeans at the Jolokia MBeanServer you can make them exclusively available for Jolokia without worrying about JSR-160 access e.g. via jconsole. However, if you annotate your MBeans with @JsonMBean and register it at the Jolokia MBeanServer your get automatic translation of complex data types to JSON even for JSR-160 connections:
The details can be found here.
Several new processing options enter the scene. These can be given either as global configuration parameters or as query parameters:
That's it for now, all changes are summarized as always in the change report.
Some other, more organizational stuff for now:
And finally a very hot recommendation: Please have a look at hawt.io a super cool HTML5 console which uses Jolokia for backend communication exclusively. Most of the new ideas included in this Jolokia release were inspired by discussions with James Strachan, one of the driving forces behind hawt. Thanks for that ;-)
Although it has been quite calm in Jolokia land for some months, there is quite some momentum around Jolokia. This minor release brings some cosmetic changes, mostly for tuning the ordering within MBeans names and some JavaScript fixes. More on this in the changelog.
Some other tidbits:
Jolokia 1.0.5 has been released. Beside minor improvements and bug fixes, one great new feature has been introduced: As already mentioned Jolokia has now support for Cubism, a fine time series charting library based on d3.js. Cubism provides support for an innovative charting type, the horizon charts:
A very cool live demo where a Jolokia JavaScript client fetches live data from our servers and plot it with Cubism can be found on this demo page. The documentation can be found in the reference manual.
Jolokia uses also a Travis build in addition to our own CI Server. (Did I mentioned already, that we have a quite I high Sonar score ?). Travis is a quite nice supplement to Github, and brings CI testing to a higher level.
That's it for now. The next months of my open-source work will be spent now on Ají, Jolokia's new fancy sister. Sorry for pushing thinks like notifications down the Jonlokia back-log, but it's not forgotten.
Beside some bug fixes two new features are included in this new release:
Jolokia's Javascript library has now a scheduler for periodically querying the agent. Requests can be registered at the agent and all registered requests are sent at once in a single bulk request periodically. This is especially useful when building up dashboard like web pages with multiple charts.
The folowing example registers two requests which are called every second. The reference documentation has all the details.
var jolokia = new Jolokia("http://localhost:8080/jolokia"); // Register request along with callback printing out // the heap memory usage jolokia.register(function(resp) { console.log("Memory: " + resp.value); },{ type:"read", mbean:"java.lang:type=Memory", attribute:"HeapMemoryUsage", path:"used" }); // Start the scheduler for calling the request every second jolokia.start(1000);
The scheduler is used by the new Jolokia-Cubism integration for plotting real time JMX data. Please have a look at the demo page for more information about using Jolokia together with Cubism.
On the agent side detectors now support custom options. The first option available is for the Glassfish detector to prevent booting of the AMX subsystem, which registers the most interesting MBeans. AMX is booted now by default on the first request when running in Glassfish. For more information, please refer to the WAR configuration options in the reference documentation.
Ají moves on, too, although slower than expected. The main focus of the next months will to be bring that Javascript JMX application on and out. Stay tuned ...
This minor release adds cross-origin resource sharing (CORS) support to all Jolokia agents. Cross domain access can be easily restricted with Jolokia's security setup. The Javascript library already support CORS for most browsers out of the box, for IE8 and larger some special setup is still required. Transparent CORS client support for all browsers will be added to the Jolokia Javascript client in one of the next releases.
In addition the following new features were added:
All thdeses changes plus the bug fixes are listed in the change log.
Starting with this release, bug tracking and release planning switches over to Jolokia's JIRA instance, kindly donated by the fine folks from Atlassian.
Also, there has been some (minor) progress with the new kid in the Chili garden, Ají, a Javascript single-page-application with an MBeanBrowser and a Dashboard. I'm still looking for helping hands, there is quite a lot to do here ;-)