PSI Probe featuresPSI Probe supplements the basic functionality of Tomcat Manager with a number of very useful features, including:
- real-time monitoring of request traffic on the Connectors, from any Remote IP, or per application;
- viewing of Data Source pool usage, and query execution;
- monitoring of Logs, with the ability to dynamically change log levels at runtime;
- viewing the Thread execution stack, with the option of killing threads;
- dashboards to monitor the JVM, showing memory usage, swap file usage and garbage collection control;
- and detailed System properties data.
Installing PSI ProbeYou have to build PSI Probe from the source code because it is not available as a Debian package. It is a Java application, so it is a simple matter of cloning the project from GitHub and running Maven:
# git clone https://github.com/psi-probe/psi-probeCheck that you are using Maven 3, and upgrade if necessary, because the build will fail if you use Maven 2. Don't forget to purge maven2 if you have to upgrade.
# mvn -version Apache Maven 3.0.5 Maven home: /usr/share/maven Java version: 1.7.0_79, vendor: Oracle Corporation Java home: /usr/lib/jvm/java-7-openjdk-amd64/jre Default locale: en_ZA, platform encoding: UTF-8 OS name: "linux", version: "3.16.0-4-amd64", arch: "amd64", family: "unix"If all is well, change to the PSI Probe directory and build the WAR file:
# cd psi-probe # mvn packageThe build will take some time the first time that you run it, because of all the JARs that must be downloaded from Maven Central to your local repository.
When it is done, use the Tomcat manager to deploy the war. Browse to http://my-server-IP:8080/manager, login with the same manager-gui role that you created in Part 1, scroll down to the section titled "Deploy" and use the option "Select WAR file to upload" to deploy the WAR file which you will find at psi-probe/web/target/probe.war.
Once it is deployed, browse to http://my-server-IP:8080/probe, login with the same manager-gui role, and dig around your Tomcat 8 installation. Much better looking, isn't it?
In Part 3, the last of this series, I will explain how OpenNMS can be used with SNMP to monitor Tomcat 8 and generate exceptions if any thresholds are exceeded.