Get the live full picture
Let's be incident aware

Jeyzer Monitor

Jeyzer Monitor detects the incident at runtime.

Incident is appearing silently in production : you need to be aware of it and react accordingly.
Jeyzer Monitor will detect it and warn the IT operators on time.

Jeyzer Monitor analyses periodically the JZR recording to detect issues and generate related events.
Events do contain the issue explanation and the remedy action.
Jeyzer Monitor can also generate a JZR report which is highly recommended in case of critical event.

Events and JZR report can be automatically distributed across different channels :
– Email to the IT operator team, support team, R&D team
– Web site
– Shared location for APM integration
– Alert sound emission
– JIRA ticket update or creation

Jeyzer Monitor can monitor multiple JZR recordings in parallel : “One Jeyzer Monitor to rule them all”.
Jeyzer Monitor is usually installed on a supervision machine which has access to any Jeyzer recording directory.

The Jeyzer Monitor contains an event rule based engine, configured within the master profile.
It also embedds the Jeyzer Analyzer to take advantage of its analysis and JZR report generation capabilities.

The Jeyzer Installer permits to deploy the Jeyzer Monitor in a few clicks.
Jeyzer Monitor is deployed with some standard rules directly usable from the generic master profiles.
From there, it will be easy to derived your own applicative profile and rules.
Remember : we can help you in your monitoring setup and integration in your organization.

By default, Jeyzer Monitor scans the JZR recording(s) every 5 minutes.

Monitoring events carry the incident information.

Events can be created either by the Jeyzer Monitor engine or by the application itself through the Jeyzer Publisher.

  • Jeyzer Monitor events are typically technical events.
    Classic examples are JVM running out of memory, deadlock, database connection pool misery, unnatural long activity..
    See the Monitor Rules section for more details
  • Applicative events are raised by the monitored application through the Jeyzer Publisher API and captured in the JZR recording.
    Those events are important signals like service interruptions, connectivity issues, critical errors.
    Those events carry standardized and categorized information (Think about the perfect incident index). See the Jeyzer Publisher (link) for more details

Events can be made visible in multiple media:

  • JZR report in many different views
  • JIRA for the critical events. JIRA ticket is created or updated in case the event relates to a known issue/ticket.
  • Web page
  • Files through loggers (CSV, journal, HTML format)

Events are time bound, like the related incident. They can therefore disappear after some time.
Events have 3 possible levels : info, warning, critical. Each level is possibly divided in sub-levels.
Events expose a large set of attributes : recommendations, explanations, issue details, trust factor, duration..

Monitoring rules drive the Jeyzer Monitor event generation based on a flexible set of conditions.
A monitoring rule can be tuned to generate 1 or more events, increasing for example the level (initially warning then critical).

The Jeyzer master profile defines the sets of monitoring rules to apply.
Monitoring rules are categorized and usually belong to a Jeyzer shared profile.
For example, the log4j profile contains a monitoring rule which will generate an Excessive logging event when the monitored application is detected as logging too much.
Rule sets can be stored in repositories (public or proprietary), which means that those rule sets will evolve over time with external contributions.

Monitoring rules are derived from rule templates.
Jeyzer exposes 93 rule templates to cover most of the technical incident type cases.
Examples : long running task, applicative thresholds, thread pool misery, disk space outage, database contentions.
The complete list is available in the Jeyzer documentation.

Monitoring rules can be activated upon sub-conditions, called Stickers. Stickers can be :
– Environmental : specific version (Java 8..), operating system, library versions..
– Ambiant : quality insurance (meaning rules that should apply only in QA nightly tests), code quality (for CI tests)
– Contextual : performance, security..
You can create your own stickers easily.

Monitoring rules can carry an issue tracking reference like a JIRA ticket.
In such case, the Jeyzer Monitor will update the ticket if the monitoring rule is matched with the JZR report and event details.
It is recommended to set it up for the critical events.

The JZR report contains additional views to list the instantiated rules (including their hit ratio) and applied stickers.

To see the Jeyzer Monitor rules in action, please look at the Jeyzer Labors demo.

JIRA
Jeyzer Monitor integrates with JIRA cloud through the Atlassian JIRA REST v3 API.
Upon any critical event, Jeyzer Monitor will create a JIRA ticket or update it if the matched monitoring rule is already referencing an existing JIRA ticket.
Information published on JIRA is configurable and can contain the event/context details and the JZR report in attachment.
Each Jeyzer master profile will relate to one JIRA project. Multiple JIRA servers are supported.

APM
Integration features are quite basic for now but it should be sufficient to link your APM on top of the Jeyzer Monitor.

  • Passive mode : the Jeyzer Monitor Oneshot can be for example called from the external.
    The Jeyzer Monitor Oneshot execution returns simply a status (meaning the highest event level, like critical).
    This has been validated with the Nagios APM.
  • Passive mode : the APM, through probably some custom script, could parse the generated event files.
  • Active mode: the Jeyzer Monitor could call any APM API to pass events, which requires to develop a custom logger.

Continuous integration
Any CI radiator can take advantage of the published list of events and status pictures (current thread activity and contentions).
Those are only HTML pages to refer to.

Jeyzer Monitor Console
This is an extension of Jeyzer Monitor which permits to display, in real time, the thread activity of the monitored process.
Jeyzer Monitor Console is provided only for demo purposes at this stage.