The Collect Stack Information pane is to the middle right of the Setup panel. Using this pane, you can create, modify, remove and configure stack areas — collections of code elements like classes, routines, units or modules — that specify which routines AQTime profilers will include into collected call stacks. Limiting the number of routines in stacks decreases the amount of profiling results and helps you concentrate on the needed routines.
For complete information on stack areas, their types and profiling levels, see About Areas.
Stack areas are supported by the profilers listed below. The Collect Stack Information pane is visible only when one of the following profilers is selected:
The Collect Stack Information pane contains a number of predefined areas. You can use them to easily include large code portions into stack areas:
All Project Modules - The collected stacks will include all routines that belong to modules added to current AQTime project modules (except for routines added to excluding areas or excluded by the Ignore Files or Ignore Routines dialog).
Entire .NET Code - The collected stacks will include all managed functions even if they do not belong to modules added to the Setup panel.
Entire Script Code - The collected stacks will include all script routines that are executed within the host application launched by AQTime.
Entire Java Code - The collected stacks will include all functions executed by the Java Virtual Machine.
|Note:||In case you select either the Entire .NET Code, Entire Script Code or Entire Java Code area, AQTime will profile even those .NET, script or Java functions that were added to stack areas of the excluding type. To exclude code from profiling in this case, use the Ignore Files and Ignore Routines dialogs. For complete information on specifying code portions for profiling, see Controlling What to Profile.|
In addition to using predefined stack areas, you can also create and use custom stack areas to specify routines to be included into collected stacks.
Each custom stack area can contain individual routines as well as larger code elements like classes, namespaces, files, units and modules. When you add a class, unit or module to an area, this means that the area contains all routines defined in the class, unit or module.
Right-click somewhere within the Collect Stack Information pane and select Add Stack Area from the context menu.
For including areas, you can also select the Collect info about lines check box in the dialog. In this case, the area becomes a line-level area, and for all routines added to the area, the collected call stacks will include information on source lines of the routine calls. If the setting is disabled, the stacks will contain the line number where the function’s code begins in a source file.
Right-click the desired area in the Collect Stack Information pane and choose Edit Stack Area from the context menu.
Change the area settings in the subsequent Edit Area dialog.
Drag the desired code element (like routine, class, unit or module) from the Modules pane to the stack area.
-- or --
Right-click the desired elements in the Modules pane and select the target stack area from the list in the Add Selected to ... submenu.
An element can belong to as many stack areas as you wish.
If an element is checked in an excluding stack area, however, this will override all checks in including stack areas.
Right-click the desired area and select Remove from the context menu.
-- or --
Select the area and press Delete.
You can also drag elements from the area back to the Modules pane, but using Remove or Delete is easier.