There are 3 trace levels that can be selected: ERROR, INFO, and VERBOSE. The trace levels are inclusive. An active trace level of NONE indicates trace is not active for a given component. The following table demonstrates which component's trace points are collected based on the active trace level, so long as the other trace conditions are met.
Active Trace Level
Error-level trace point
Info-level trace point
Verbose-level trace point
NONE
No
No
No
ERROR
Yes
No
No
INFO
Yes
Yes
No
VERBOSE
Yes
Yes
Yes
Choosing the Coded Trace Level
Each component decides how to use the coded trace level on each trace point to define the level of detail that is collected when a particular active trace level is specified for that component. During application development, it is fairly common to change the coded trace level, after reviewing trace records collected for a particular active trace level. The following recommendations generalize how a coded trace level should be selected when enabling a component for trace:
ERROR-level trace point: Use this type of trace point when returning from a program or function with an error condition, encountering an unexpected return code or exception condition, or upon receiving invalid input. These types of trace points should help determine why a given error condition or other failure condition is being reported by the application. The goal is to not have any ERROR-level trace points collected under normal running conditions, so that tracing a failure condition using an ERROR trace will be distinct. ERROR-level trace points are also collected for an INFO trace as well as for a VERBOSE trace.
INFO-level trace point: Use this type of trace point to provide informational data such as to indicate entry and exit from a program or major function, to show parameter values and return codes, or to show major flow changes due to input or other environment conditions. These types of trace points should help determine why certain processing was performed or why a given action was taken. INFO-level trace points are also collected for a VERBOSE trace.
VERBOSE-level trace point: Use this type of trace point to include detailed data, control flows, data structures, environment conditions, internal state conditions, call stacks, resource allocations, or the use of synchronization methods. These types of trace points should provide additional detailed data that would otherwise not be collected in an ERROR trace or INFO trace due to their large size or insignificance. Any useful data that may aid in debug should be collected. VERBOSE-level trace points are only collected for a VERBOSE trace.