JMiniX Overview
Published in
2 min readApr 22, 2021
JMiniX is a lightweight tool that exposes MBeans and allows the secure browsing of said MBeans on any application and environment without heavy infrastructure setup.
Setup
- Include the following dependence into the build system of your choice: https://mvnrepository.com/artifact/org.jminix/jminix/1.2.0
- Create a JMiniX servlet in the web.xml of your application: https://gist.github.com/SCBbestof/72549e35c30d622cc037c47c8d0ea732
- Deploy your application and access the <your-application-url>:<application-port>/jmx/ URL. Example: http://localhost:8080/jmx/
Pros and Cons
Pros
- Very lightweight. It only uses 234KB of disk space and there is no need for Jolokia.
- Easy deployment using the java project itself. Maven dependency + servlet integration and that’s it.
- Can work in clustered environments
Cons
- It is RMI-based, so it doesn’t get along with firewalls. A workaround is using HTTP Tunnelling.
- The UI is awful. You can’t even see a list of elements without copying it in a text editor.
Related articles
- JMiniX wiki: https://github.com/lbovet/jminix/wiki
- Cluster usage: https://github.com/lbovet/jminix/wiki/ClusterUsage
- RMI through firewalls via proxies: https://docs.oracle.com/javase/6/docs/platform/rmi/spec/rmi-arch6.html