Jeyzer Monitor Console monitors one Java application to :
- Generate graph and HTML pages of the visual representation of threads and contention types.
- Display the internal dynamics of the monitored process through a viewer.
Viewer is prototype application at this stage (optional).
Unlike the Jeyzer Monitor, it refreshes the visual outputs at the same pace than the Jeyzer recording and therefore relies on the Jeyzer recording period.
The JZR report generation is always disabled.
Command
To start the Jeyzer Monitor Console execute the command jeyzer-monitor-console.bat
or jeyzer-monitor-console.sh
, located under the analyzer\bin
directory of your Jeyzer installation.
By default, it is configured to monitor the Jeyzer demo features application.
Prerequisites
These environment variables must be set to target the right profile :
JEYZER_TARGET_PROFILE
: the target master profileJEYZER_TARGET_NAME
: the application node name.
Identifies the process instanceJEYZER_RECORD_DIRECTORY
: the Jeyzer recording directory to monitorJEYZER_RECORD_PERIOD
: the recording period
Installation
Jeyzer Installer : Select the Jeyzer Monitor component.
The Jeyzer Installer will guide you in the high level setup.
Check the quick_start.html
at the Jeyzer installation root : it contains useful paths.
Configuration
Jeyzer Monitor Console configuration relies on :
The following environment variables control the Jeyzer Monitor Console :
Variable | Description | Default value |
JEYZER_ANALYZER_GRAPH_VIEWER_ENABLED | Starts the viewer | True |
JEYZER_DYNAMIC_GRAPH_MODE | Indicates if the actions must be merged or not Choose the action_merged if the monitored process executes a large number of similar actions : thread counter is then displayed. Possible values : action_single, action_merged | action_merged |
Set it externally or within the jeyzer-monitor-console.sh/bat
Graph generation configuration
The graph generation is controlled through standard configuration files available in the analyzer/config/graph/player
directory of your Jeyzer installation.
This configuration location can be customized in the <JEYZER_TARGET_PROFILE>_monitor_console.xml
available in the master profile directory.
If you do not have this file in your master profile (as it is optional), you can reuse the template_monitor_console.xml
available in the profiles/external/master/template
directory.
See the function graph player and the contention graph player sections for more details.
Display
Each thread or thread aggregation is shown as a filament with a thread name at one end and the thread state at the other end.
Functions and operations are displayed in the middle, respectively in blue and green circles : circle size is growing with time to represent activity concentration.
Thread name is displayed with a pink square.
Square becomes red in case of high CPU usage.
Thread state (running, locked, deadlock) is displayed respectively in green, orange and red.
Previous activity of the threads can be displayed as phantomized : nodes are then greyed out and will stay for a configurable amount of time.
No activity detection message is displayed if no active threads are found.
Missing recording snapshot file message is displayed if a recording snapshot hiatus is found.
Logging
Jeyzer Monitor Console relies on the logback framework.
The monitor-console-logback.xml
drives the console and file logging.
It is located in the analyzer/config/log
directory of your Jeyzer installation.
Logging is set to INFO by default, which is not invasive.
Logging settings can be changed at runtime (no need to restart).
Log file is generated under the monitored directory recording which is by default :work/recordings/<application recording>/log
Outputs
Output locations are fully configurable.
Below are the standard paths.
We distinguish two categories of outputs:
- Monitoring : the working directory for the generated graph and HTML pages
By default :work/recordings/<application recording>/monitor_console
- Analysis : the working directory for the analysis resources.
By default :work/recordings/<application recording>/analysis