WebSphere Application Server & Liberty

 View Only

What's New in IBM Mono2Micro 22.0.09

By Len Theivendra posted Mon September 26, 2022 11:04 AM


The September release of IBM® Mono2Micro introduces a new and easier way to get started with the tools using your Java application. You no longer need to have application source available in order to use Mono2Micro to get partitioning recommendations. A new binary analyzer allows you to do the code analysis step of your data collection with only the application's binary archive file, before proceeding to the instrumentation of that app while running use cases and then running the AI engine. Do note however Mono2Micro still allows for starting with application source code analysis if you so choose to.

To run binary analysis on your application archive, issue the 'mono2micro analyze -a' command: 

/m2m$ mono2micro analyze -h
Analyze the monolith application source code or binary code
Usage: mono2micro analyze [-hlz] [-a=<path>] [-d=<string>] [-e=<string>] [-i=<out|err>] [-j="<string>"] [-n=<string>] [-o=<dir>] [-s=<path>]
-a, --archive-filename=<path> 
	Specify the application archive file name for binary analysis. By default during binary analysis,
	the packages specified below will be excluded. Options described below can be used to either
	add packages exclusions to this list or provide a specific inclusion or exclusion list.
-d, --add-to-exclude-packages=<string>   
	Specify a comma-separated list of packages to be added to the default list of packages to be
	excluded. The default list of excluded packages is: ch.qos, com.cognos,
	com.fasterxml, com.ibatis, com.ibm, com.informix, com.lowagie, com.mchange, 
	com.meterware, com.microsoft, com.mysql, com.sun, com.sybase, freemarker, groovy, 
	jakarta, java, javax,net, oracle, org, sqlj, sun, twitter4j, _ibmjsp, weblogic, kodo, 
	com.solarmetric, com.bea
-e, --exclude-packages=<string>
	Specify a comma-separated list of packages to be excluded for binary analysis. All classes
	except for those in these packages will be analyzed
-h, --help
	Display help information
-i, --instrumentation-target=<out|err>   
	Specify the instrumentation target to be used: standard error "err" (default) or standard 
	output "out"
-j, --java-opts="<string>"
	Specify custom JVM options to be used by the analyzer. The options string needs to be placed within
	double quotes, for example: "-Xmx512m"
-l, --analyze-all
	Analyze all packages and classes during binary analysis
-n, --include-packages=<string>
	Specify a comma-separated list of packages to be included for binary analysis. Only classes in
	these packages will be analyzed
-o, --output-analysis-dir=<dir>	
	Specify the output directory for the analysis files
-s, --srcdir=<path>
	Specify the application source code directory
-z, --verbose
	Enable verbose mode

As the above command line usage help shows, there are various options to specify what parts of your application Mono2Micro will analyzed by providing a list of Java package prefixes that can be included or excluded. Mono2Micro can analyze various types of Java and Java/Jakarta EE application archive types such as .ear, .war, .jar, .rar files including .zip and .rar files which can contain multiple archive files within. Options are also available to instruct Mono2Micro to *only* consider classes in specified Java packages with the inclusion option, or to analyze everything *except* for specified packages, etc. By default Mono2Micro will analyze and consider all Java classes found in the provided archive and inner archives except for any classes found in the default set of excluded Java packages (shown in the usage help above). You can also choose to force Mono2Micro to analyze and consider all Java classes in your application archive, or further exclude specified packages in addition to the default exclusion list.

Be sure to read https://community.ibm.com/community/user/wasdevops/blogs/leonard-theivendra1/2022/06/27/whats-new-in-ibm-mono2micro-22006 and https://community.ibm.com/community/user/wasdevops/blogs/leonard-theivendra1/2022/03/29/whats-new-in-ibm-mono2micro-22-0-03 as well to check out the new features introduced in the previous June and March releases of Mono2Micro. To take advantage of all these new capabilities and more head over to https://ibm.biz/Mono2Micro to download and try Mono2Micro yourself.