Category: jprofiler

Custom telemetries in JProfiler

This screen cast shows how to quickly add new telemetries to JProfiler. MBean telemetries draw their data from numeric attributes of MBeans that are published in the profiled JVM. Script telemetries are built with a script that can call static methods in the profiled code to return a value of type long. Telemetries can have multiple data lines and are persistent for the profiled session.

JProfiler’s MBean browser

JProfiler has an MBean browser that shows you MBean attributes and operations. Many frameworks and libraries publish statistics and expose configuration interfaces via JMX. With JProfiler, no configuration of JMX connectors is required, the browser just works out of the box and is very easy to use.

Method splitting by parameter values

This screen cast shows how to split selected methods in the call tree by their parameter values. Directly in the call tree, you can select methods and set up scripts whose return values are used for grouping. The splitting nodes in the call tree provide insight into the distribution of your parameter values and give you the possibility to analyze the recorded method calls separately for special cases.

Multi-level HTTP request splitting

This screen cast shows how JProfiler can split HTTP requests by the return values of scripts into multiple levels. This functionality allows you to both get a better overview as well as a more fine-grained analysis that can be adapted to your particular problem-related use cases. All the information in the HttpServletRequest object can be used for that purpose. In the screen cast, splitting by different user names is demonstrated.

Tracking JavaScript calls into your Java backend

This screen cast shows how to split your Java call tree for different JavaScript XHR calls. By installing the JProfiler Chrome plugin, a locally running JProfiler GUI will be notified of XHR calls in the browser and show an event description and a stack trace without further configuration. In this way, you can identify the sources of your CPU load beyond the granularity of your URLs and analyze the call tree in isolation for specific browser events.

Java profiling across JVM boundaries

This screen cast shows “Remote request tracking” in JProfiler. It makes it possible to profile business transactions that span multiple JVMs. Here, a web service call to another JVM is shown and profiled in isolation of other requests that are handled by the server. In addition, JProfiler supports remote request tracking for RMI and remote EJB calls.

Profiling MongoDB

This screen cast shows how to use the MongoDB probe in JProfiler that has been added in JProfiler 8.0. The profiled application is the vert.x web demo application that uses mongodb as a storage option. MongoDB events are correlated to the the activity in the web application and it is shown how the exclusion of primitive data leads to a useful definition of hots spots.

Attaching to Windows services for Java profiling

Several profilers can attach to running JVMs, but only JProfiler can attach to Windows services. It is very easy to do:

1.Start “Quick attach”:

2. All JVMs are shown that run with your user account. Select the “Show services” button at the top:

 3. Select your service:
4. Profile!

Using the probe tracker

This screen cast shows how the probe tracker can be used to record fine-grained chronological information for selected hot spots and control objects, such as JDBC connections. The probe tracker is available for all probes in JProfiler.