World Map
Java Service Wrapper is the easiest way to make your product more reliable.
  • Free Trial
  • Buy Now

Problem

How can I monitor my Java Application?

Arrow

Solution!

The Java Service Wrapper can monitor your Java Application health, automatically recover, and notify you of any problems.

The Java Service Wrapper includes several features to monitor, recover, and notify you when problems arise. These features work in tandem to help you ensure the maximum uptime for your application, while at the same time keeping you informed about problems and where possible, their causes.

Details

Deadlock detection

Thread Deadlocks are a possibility in any multi-threaded Java application. They can be very difficult to fix and near impossible to reproduce in most real-world applications. This is because of the fact that the more threads in use, the more likely it is for a dead lock to take place. A developer can have a very difficult time tracking down not only where the dead lock took place, but combination of events lead up to it.

To learn more about this feature, please check our technical section.

Automatic JVM freeze detection

In normal operation, the Wrapper pings the JVM once every 5 seconds to make sure that its process has not frozen up. The ping timeout is the amount of time to allow for a response from the JVM before the Wrapper assumes that it is hung and restarts it.

How does the Java Service Wrapper detect a JVM freeze? Please take a look at our ping timeout property page. Because every Java Application is different, these parameters can be configured or disabled.

To learn more about this feature, please check our technical section.

Automatic JVM crash detection

The Wrapper constantly monitors the JVM process and is able to instantly detect if the JVM process crashes, and then restart it to minimize downtime.

To learn more about this feature, please check our technical section.

User-defined actions

Filters are a very powerful feature which makes it possible to add new behavior to existing applications without any coding. It works by monitoring the console output of a JVM for sequences of text. When they are found, any number of actions can then be taken.

System commands, included external scripts, can be executed in response to any event. These can be useful for doing system cleanup, sending out notifications, or taking actions which can only be handled natively.

To learn more about this feature, please check our technical section.

On-demand JVM restarts

The Java Service Wrapper provides a way for a Java Application to request that its own JVM (Java Virtual Machine) be restarted. This can be useful in a number of cases. Applications may wish to restart after having had their configuration files modified. Or the application may simply need to be restarted to avoid problems with a memory or resource leak of some kind.

To learn more about this feature, please check our technical section.

E-Mail notifications

Emails can be sent out with a customized message, along with a fragment of the Wrapper's log file. This makes it possible for a system administrator to decide whether or not it is necessary to take further action.

To learn more about this feature, please check our technical section.

Technical Overview

Automatic JVM crash detection

The Wrapper constantly monitors the JVM process and is able to detect almost instantly when a crash takes place. By default, the Wrapper will wait for 5 seconds before automatically relaunching your application. The length of this delay can be tuned to meet your needs, but is recommended to make sure the OS has time to free up any memory or other resources that were associated with the crashed JVM. Please see the wrapper.restart.delay property for more information.

User-defined actions

To add a filter, you need to specify a trigger and an action, you can specify as many as you want. To know more about our filter system and a list of possible actions please see our filter property page.

You can also run commands when certain events happens. To know more about this features please see our Event Commands Documentation Page.

On-demand JVM restarts

JVM restarts can be triggered from within the JVM by making a call to WrapperManager.restart(). For more information, please check our Java API documentation.

There are also more passive ways to trigger restarts, for more information check our Introduction Page.

E-Mail notifications

The Wrapper is able to send out alert emails to in response to certain events. For examples and more information please check our Event Mails Documentation Page.