The hot spots view shows a list of calls of a selected type. The list is truncated
at the point
where calls use less than 0.1% of the total time of all calls.
See the help on the
estimated CPU time/elapsed time
setting and take into account the selection of the
thread state selector
to properly assess the meaning of these time measurements. By opening
a hot spot node, the tree of backtraces leading to that node are calculated and shown.
|
The type of the hot spots can be selected in the drop-down list above the table labeled "Filtered classes":
- Show separately
The displayed hot spots are calculated from all method calls in the call tree. Filtered
classes can contribute
hot spots of their own. This is the default mode.
- Add to calling class
Calls to filtered classes are always added to the calling class. In this mode, a filtered
class
cannot contribute a hot spot, except if it has a thread entry method (run and main
methods).
Depending on your selection of the aggregation level, the method hot spots will change. They
and their hot spot backtraces will be aggregated into classes or packages or filtered
for
Java EE component types.
Note: The notion of a method hot spot is relative. Method hot spots depend on the
filter sets that you have enabled in the
filter settings.
Filtered methods are opaque, in the sense that calls into other filtered methods are
attributed
to their own time. If you change your filter sets you're likely to get different
method hot spots
since you are changing your point of view. Please see
the help topic on hot spots and filters
for a detailed discussion.
|
|
Every hot spot is described in several columns:
|
|
If you click on the handle
on the left side of a hot spot, a tree of backtraces will be shown.
Every entry in the backtrace tree has textual information attached to it which depends
on the view settings.
|
|
JProfiler automatically detects Java EE components
and displays the relevant nodes in the hot spot backtraces tree with special icons that depend
on the Java EE component type:
servlets
JSPs
EJBs
For certain classes, JProfiler shows a display name:
- JSPs
the path of the JSP source file
- EJBs
the name of the EJB interface
- RMI proxies
the name of the remote interface
- Web service proxies
the QName of the end point
If HTTP splitting is enabled in the servlet probe
each request URL creates a new node with a
special icon and the prefix
HTTP:, followed by the part of the request URL on which the hot spot backtraces tree
was split. Note that HTTP nodes group request by the displayed URL.
|
|
When navigating through the hot spot backtraces tree by opening
method calls, JProfiler automatically expands methods which are only called
by one other method themselves.
To quickly expand larger portions
of the hot spot backtraces tree, select a method and choose
View->Expand Multiple Levels from the main window's menu or
choose the corresponding menu item from the context menu. A dialog is shown
where you can adjust the number of levels (20 by default) and the threshold in per
mille
of the parent node's value that determines which child nodes are expanded.
If you want to
collapse an opened part of the hot spot backtraces tree, select the
topmost method that should remain visible and choose
View->Collapse All from the main window's menu or
the context menu.
|
|
If a method node is selected, the context menu allows you to quickly add a
method trigger for the selected method with the
add method trigger action.
A dialog will be displayed where you
can choose whether to add the method interception to an existing method trigger or
whether to create a
new method trigger.
|
|
Nodes in the hot spot backtraces tree can be hidden by selecting them and hitting the DEL key
or by choosing Hide Selected from the context menu. Percentages will be corrected accordingly as if the
hidden node did not exist.
When you hide a node, the toolbar and the context menu will get a Show Hidden
action. Invoking this action will bring up a dialog where you can select hidden elements
to be shown again.
|
|
For method, class or package nodes, the context menu and the View menu have an
Add Filter From Selection entry. The sub-menu contains actions to add
appropriate filters as well
as an action to add an ignored method entry.
If a node is excluded, you will get options to add a profiled package, otherwise you
will get options to add a
compact or ignored filter. These actions are not available for classes in the "java."
packages.
|