In the multiple monitoring deployment setup, the Jeyzer Monitor monitors several Java applications in parallel.
Important : if you deploy the Jeyzer Monitor in production, we do recommend to install it on a different server than the production one, typically a monitoring server, this to limit at the minimum the performance impact.
This server must have access to the different Jeyzer recording directories.
Configuration
The multiple monitoring relies on one global configuration file : the multi_monitor.xml
.
This file defines the monitoring parameters for each target application, including the master profile to load, in distinct configuration blocks.
It is usually placed at the profile root directory.
Most of the parameters rely on common environment variables.
Feel free to customize it if you have distinct profile or recording directories and/or specific needs per application.
Monitored applications
As the provided multi_monitor.xml
is profile agnostic, you must edit the multi-monitor.bat/sh
(located in the analyzer/bin
directory of your Jeyzer installation) to declare the profiles to load through the variables JEYZER_TARGET_PROFILE_1
, JEYZER_TARGET_PROFILE_2
…
Global settings
The multi-monitor.bat/sh
contains also some global parameters that influence the monitoring.
Core directories
The following paths are set in standard though environment variables.
When your monitoring setup will be ready, we recommend you to define those environment variables in your DevOps platform.
Variable | Description | Default value |
JEYZER_TARGET_PROFILES_DIR | The directory which contains the multi_monitor.xml | Jeyzer Home/profiles/demo/master |
JEYZER_RECORDINGS_ROOT_DIR | The root directory for all the Jeyzer recordings | Jeyzer Home/work/recordings |
Maximum number of monitoring activities
To limit the impact of the Jeyzer Monitor, the maximum number of parallel monitoring activities is configured through the multi_monitor parallel_max
parameter in the multi_monitor.xml
. Default value is two.
<multi_monitor parallel_max="2">
Adapt this value based on the hardware capacities of the monitoring platform.
Consider also the monitor scanning period to establish a coherent scheduling : each monitoring activity will be triggered every 10 minutes by default.
A monitoring phase should typically take a few seconds. In case of JZR report generation (meaning upon critical event), this could go up to 10-30 seconds depending on the report content.
Deployment steps
- Install the Jeyzer Monitor with the Jeyzer Installer.
Select the Jeyzer Monitor component when requested.
- Deploy the master profiles of the applications to monitor within the
profiles/external/master
directory of your Jeyzer installation.
- Configure the
multi_monitor.xml
Edit themulti_monitor.xml
file available in theprofiles/external/master
of your Jeyzer installation.
See the configuration section above.
By default, two target applications can be monitored. If you need more, duplicate the<monitor>
block and adapt the profile number :JEYZER_TARGET_PROFILE_3, JEYZER_TARGET_PROFILE_4
…
Adjust theJEYZER_MONITOR_SCAN_PERIOD
andJEYZER_RECORD_PERIOD
.
- Edit the start script
jeyzer-multi-monitor.bat
located in theanalyzer/bin
directory of your Jeyzer installation.
Set theJEYZER_TARGET_PROFILE_1
,JEYZER_TARGET_PROFILE_2
… with the master profile names.
Those must be the directory names of the master profiles you deployed previously.
- Test the monitoring.
Execute theanalysis/bin/multi-monitor.bat/sh
Check the monitoring outputs : by default the Jeyzer Monitor log, the analysis outputs are generated under the recording directory of the monitored application :work/recordings/<master profile name>
The monitoring web outputs are by default generated under the Tomcat deployed by the Jeyzer installer :web/apache-tomcat-9.0.41/jeyzer-webapps/jeyzer-monitor
- Once ready, call the monitoring start script from your running platform (APM, cron tab, QA script..).
If the monitored applications are not yet available, the Jeyzer Monitor will simply wait for it.