|[virgo-dev] Classloading & Inner frameworks supportability commands|
We are currently working on some supportability features for OSGi and in particular Equinox. This includes:
· Classloading - by a given class name list all bundles that:
o contain it
o export it
o can load it
· Inner frameworks
o lists all inner frameworks in a tree view
o lists details:
§ Start time
§ Origin bundle
§ System bundle's class
§ Startup call stack
o executes certain commands in the inner framework (list, start/stop, install/uninstall/update)
The classloading commands (bundle) can be found here:
The inner framework files can be found inside the zip located here:
To install the inner framework bundles & agent:
1. Place the three main components in one folder (Java agent(FDAgent), Collector library(FDLib), instrumentation library(javassist))
2. Add the package of the framework collector library (com.sap.osgi.frameworkdetection.lib) to the bootdelegation property (org.osgi.framework.bootdelegation). Before starting the server add -javaagent:<path-to-the-agent>FDAgent_1.1.jar to the command line after the java keyword.
3. Install the Framework Detection Command bundle in the Equinox environment you just launched, start that bundle and use the commands it provides.
We would like to contribute the code to Virgo since we think the commands will make the diagnostics of problems (often needed in server environment) much easier.
What do you about this idea?