Tuesday, 7 June 2016

OSGi webconsole evolution

Status (Version 0.3.0)

Last week of May I started a new project, an OSGi webconsole bundle (check out this post for more details). It is still a proof of concept, but it is already getting useful (for me). The main idea is that I want to have something completely independent from the concrete OSGi framework or any other bundle or service already deployed in the system. So you add no more than one bundle into any framework to get an OSGi "introspector".


For documentation purposes, here's a current screenshot:

The Goal


Having a single bundle to provide all the introspection functionality is only the first step. What I really want to achieve are the following features:

 - Snapshots


As soon as the webconsole bundle is started, the first snapshot of the current framework state is taken, i.e. all bundle, service and log information will be persisted, referenced by a name like "initial". Later, for example after installing a new bundle, you can manually create a new snapshot of the framework, and compare it to the former one. Like this, it is much more easy to understand what happens in the framework once a specific event is triggered. 


 - Diagnostics

Comparing "working" snapshots to "broken" ones, it is easier to understand what is different and what needs to be fixed. The OSGi webconsole should be able to help the user figuring out what is different and provide hints of what to fix.


 - Visualization

OSGi is powerful, but not trivial (no surprise here...). Visualizing bundles and services together with their relations, potentially changing over time, provides insights and is fun. Creating this visualizations though is not trivial either ;)

Demo Link

This link should be working most of the time...

Stay tuned...

If you think this is going to be interesting for you, please let me know. This will add to my motivation ;)