Trace Levels¶
Hierarchical debugging using numeric trace levels.
Levels 0-9¶
You can use integers 0 through 9 as flavors. These correspond to trace levels, where higher numbers indicate deeper or more verbose tracing.
>>> ictr( 0, address = 'doctest' )( 'Top level trace.' )
TRACE0| Top level trace.
>>> ictr( 1, address = 'doctest' )( 'Detailed trace.' )
TRACE1| Detailed trace.
>>> ictr( 9, address = 'doctest' )( 'Very verbose trace.' )
TRACE9| Very verbose trace.
Filtering by Level¶
You can control which trace levels are displayed by setting the trace_levels
configuration. Messages with a level less than or equal to the configured
limit will be displayed.
>>> ictr( 0, address = 'doctest' )( 'Level 0 visible' )
TRACE0| Level 0 visible
>>> ictr( 1, address = 'doctest' )( 'Level 1 visible' )
TRACE1| Level 1 visible
>>> ictr( 2, address = 'doctest' )( 'Level 2 hidden' )
Indentation¶
By default, the standard printer indents trace messages based on their level to visually represent the hierarchy.
Level 0: No indentation
Level 1: 2 spaces
Level 2: 4 spaces
…and so on.