Please or Register to create posts and topics.

Jeyzer 2.2 release available !

Jeyzer 2.2 is now available !!

Check it out on Docker or download the Jeyzer installers.

Release notes :

Jeyzer Analyzer

  • Java module support
    Prerequisite : the JZR recording must include the process-modules.txt file.
    Features :

    • New JZR report sheet : Modules
      The sheet displays each Java module with its name, version, open, automatic, requires, exposes, uses, provides and class loader.
      The sheet can include a graph of the modules : modules get dependency linked and each one shows its number of outgoing dependencies.
      Module graph display is css based and defined in the ${JEYZER_ANALYZER_CONFIG_DIR}/graph/static/style_modules.css
    • Deobfuscation configurations can refer to module versions with the ## prefix and suffix. Example : ##org.jeyzer.demo##
    • JIRA configurations and templates can refer to module versions with the ## prefix and suffix tokens. Example : ##org.jeyzer.demo##
    • Shared profile dynamic loading has been extended to rely also on the Java module name and version : if Maven is used, those will correspond to the artefact id and version of the Maven project.
      Loading is performed in the process module declaration order, always after the static ones and process jar path resolutions.
      As Java modules do not carry external information (like a Jeyzer profile repository id), all profile repositories get therefore scanned.
    • Java module support in the deobfuscation : migration to retrace-alt 1.1.2
  • JZR report - Task sequence : long stack display rule added. Cell text size gets increased if the stack size is larger than a threshold.
    Scope reduction to ATBI only is possible. This is a good alternative to the atbi_of_interest display rule (which is color based).
    Provided in the new Task sequence focus JZR sheet, loaded by the Portal master profile.
  • Mac zip file support
  • Bug fix : Jeyzer Analyzer on Windows failed to process Jstack thread dumps with time stamps containing column char in archive files.
  • Bug fix : Jeyzer Analyzer failed to process tar.gz recordings containing directories.
  • Bug fix : Task memory diff could be zero when task cumulative memory was higher than total consumed memory

Jeyzer Analyzer Web server

  • Issue description default value is now configurable through the JEYZER_WEB_DEFAULT_ISSUE_DESCRIPTION environment variable.
    If not provided, it is set to some default text.
  • Bug fix : Jeyzer Web Analyzer used the application_type to set the JEYZER_TARGET_PROFILE variable instead of the profile directory name.

Jeyzer Monitor

  • New advanced monitoring rules introduced by the Java module support :
    • Process module name absence. If no Java module name is matching the given pattern, generate event.
    • Process module name. If a Java module name is matching the given pattern, generate event.
    • Process module version absence. If one or more Java modules do not have any version, generate event.
    • Process module version. If the rule sticker(s) is/are matched, generate event. This rule must get associated to at least one process module version sticker. It has no check body and relies only on the stickers.
      Rule is similar to the sticker match rule.
    • Process module version snapshot. If one or more Java modules are snapshot modules (or any module having any alphabetic character as part of their version), generate event.
  • Stickers can now also be matched against a Java module version
    Below example would match any logback-classic Java module with a 3.0.x version :
    <sticker name="logback-3.0.x" type="process module version" module_name="ch.qos.logback.core" pattern="^3\.0\.*"/>

Jeyzer Publisher

  • Jeyzer Publisher library is now released as a Java module named "org.jeyzer.publish". It stays compatible with JDK 7 and 8.

Jeyzer Annotations (v2.1)

  • Jeyzer Annotations library is now released as a Java module named "org.jeyzer.annotations". It stays compatible with JDK 7 and 8.
    Only used at compilation time, it has to be imported as a static module.

Jeyzer Recorder

  • Modules recording support. Java modules are printed in the process-modules.txt which ends up in the JZR recording.
    Optional and active only on Java9+.

Jeyzer Ecosystem

  • Azul Zulu JVM 8 and 11 support

Jeyzer Demos

  • Jeyzer demos are now released as a Java modules to demonstrate the module features in the JZR report and monitoring rules.
    Demos stay compatible with JDK 7 and 8.
  • The Jeyzer Labors now include 5 extra test scenarios related to the new module monitoring rules.
  • Bug fix : sh scripts failed to load the Jeyzer agent.
  • Bug fix : demo log file was created in an invalid directory.



Jeyzer Ecosystem 2.2 : install the new version and make it point to your profile repository.
You may update your JZR report configuration to add the modules sheet.
You may update your master profile to add any process module rule.

Jeyzer Recorder 2.2 : replace the previous installation directory with the new one.
You may update your Jeyzer recording profile to add the Java module collection.

Jeyzer Publisher 2.2 : update your Maven project files.

Jeyzer Annotations 2.1 : update your Maven project files.



Previous Jeyzer configurations remain compatible with this new version.

JZR recordings generated with previous Jeyzer versions remain compatible with this new version.

pierrej has reacted to this post.