Profiling options for profiling an application in stand-alone mode

In stand-alone mode, profiling options are specified in a file. The following describes the file format and the valid profiling options that can be used in the file.

Comments can be made in the profile options file by using *. For example, the line
* This is a comment in the profile file
will be ignored by the profiler when processing the file.
All other lines in the file follow this format:

<option_key> = <option_value>
The following table lists the profiling valid option key-option value pairs:
Option key Option value
MONITOR_MODE
This option controls whether monitor events appear in the trace. Monitor events are of two kinds: monitor contended events, and monitor wait events. Monitor contended events occur when a thread tries acquiring a monitor that is already acquired by another thread. Monitor wait events occur when a thread waits on a monitor (for example, by executing the wait() method).
all
All monitor events will appear in the trace.
none
No monitor events will appear in the trace
FILTERS
Used to specify whether the used filters are printed out at the beginning of the trace.
true
Print out the filters at the beginning of the trace.
false
Do not print out the filters at the beginning of the trace.
TRACK_GC_EVENT_TYPES
Used to indicate what type of garbage collection (GC) events should be printed to the trace. The two types of GC events are object free events and object move events.
none
Do not print out any GC events.
deletes
frees
Print out only object free events
moves
Print out only object move events
deletesAndMoves
movesAndFrees
Print out both object frees and object moves.
ID_STYLE
Used to specify the types of object ID's that are printed. The possible types are Static ID and Relocatable ID. A Static ID is essentially a one-time id assigned to an object in the trace the first time it is seen. Furthermore, the id doesn't change during the duration of execution (even if the JVM moves the object internally). Static id's are the type that are typically used by the profiler.
A Relocatable ID is the id the the JVM associates with the objects and can change during execution (if, for example, during garbage collection, an object move event occurs).
static
Print only Static IDs
relocatable
Print only Relocatable IDs
staticAndRelocatable
Print both Static and Relocatable IDs
OPTIONS
Used to specify whether the profiling options should be printed to the trace.
true
Print the profiling options to the trace.
false
Do not print the profiling options to the trace.
TIMESTAMPS
Used to specify whether timestamps should be printed in the trace.
true
Print timestamps
false
Do not print timestamps
METHOD_COUNTS
Used to specify whether the method counts should be printed at the end of the trace.
true
For the methods that were traced, print a total of the number of times they were called at the end of the trace just before JVM shutdown.
false
Do not print method counts.
OBJ_ALLOC_IS_ARRAY
Used to specify whether to print out the isArray attribute for object allocations. (i.e., when an object is allocated, it is either an array or it is not; the isArray attribute contains that information.)
true
Print the isArray attribute.
false
Do not print the isArray attribute.
STACK_INFORMATION
This option is used to specify what type of method tracing should be done.
none
Do not do any method tracing. This is the equivalent of NOT selecting Execution Time Analysis in the Profile configuration window in the workbench.
normal
Trace all non-filtered methods.
boundary
Trace all non-filtered methods PLUS all boundary methods. This is the equivalent of having Profile Configuration > Execution Time Analysis > Collect boundary classes excluded by the filter set selected in the workbench.
contiguous
Trace all non-filtered methods PLUS all filtered methods that occur on the method invocation stack that are between two non-filtered methods. For example, suppose methodA calls methodB, which calls methodC, which in turn calls methodD. Further suppose methodA and methodD are not filtered, but methodB and methodC are. Since methodB and methodC are between two non-filtered methods, they also get traced.
boundaryAndContiguous
Same behavior as having both the contiguous and boundary option values set for STACK_INFORMATION.
BOUNDARY_DEPTH
Used to specify the boundary tracing depth when the STACK_INFORMATION=boundary or boundaryAndContiguous.
Integer
Integer value specifying the boundary tracing depth.
TICKET
Used to specify whether the ticket attribute should appear in the trace.
true
Ticket attribute should appear in the trace.
false
Ticket attribute should not appear in the trace.
TRACE_MODE
Used to specify the tracing mode. Basically the tracing mode specifies whether object (heap) information is kept track of or not. (The 'none' value has special meaning.)
full
Trace all possible object information. That is, trace object allocations and trace the objects that are associated with method invocations (if STACK_INFORMATION is set to do method tracing).
none
Do not do any tracing whatsoever. (If this value is set, then the STACK_INFORMATION option gets overridden even if it is set to trace method invocations.)
noObjectCorrelation
Do not trace object information. This is different from the 'none' value in that method invocation tracing can still take place (if STACK_INFORMATION is appropriately set), but the objects associated with method invocations won't be kept track of, nor will any object allocation information be kept track of.
TRACE_ID_REFS
Used to specify whether to print out the trace id reference attribute. The trace reference id is an identifier that is unique to the trace.
true
Print out the trace id reference attribute.
false
Do not print out the trace id reference attribute.

Related tasks
Profiling an application
Profiling an application in standalone mode

Related references
Limitations when profiling an application on AS/400