GNU Info

Info Node: (slib.info)Trace

(slib.info)Trace


Next: System Interface Prev: Breakpoints Up: Session Support
Enter node , (file) or (file)node

Tracing
-------

  `(require 'trace)'

This feature provides three ways to monitor procedure invocations:

stack
     Pushes the procedure-name when the procedure is called; pops when
     it returns.

track
     Pushes the procedure-name and arguments when the procedure is
     called; pops when it returns.

trace
     Pushes the procedure-name and prints `CALL PROCEDURE-NAME ARG1
     ...' when the procdure is called; pops and prints `RETN
     PROCEDURE-NAME VALUE' when the procedure returns.

 - Variable: debug:max-count
     If a traced procedure calls itself or untraced procedures which
     call it, stack, track, and trace will limit the number of stack
     pushes to DEBUG:MAX-COUNT.

 - Function: print-call-stack
 - Function: print-call-stack port
     Prints the call-stack to PORT or the current-error-port.

 - Macro: trace proc1 ...
     Traces the top-level named procedures given as arguments.

 - Macro: trace
     With no arguments, makes sure that all the currently traced
     identifiers are traced (even if those identifiers have been
     redefined) and returns a list of the traced identifiers.

 - Macro: track proc1 ...
     Traces the top-level named procedures given as arguments.

 - Macro: track
     With no arguments, makes sure that all the currently tracked
     identifiers are tracked (even if those identifiers have been
     redefined) and returns a list of the tracked identifiers.

 - Macro: stack proc1 ...
     Traces the top-level named procedures given as arguments.

 - Macro: stack
     With no arguments, makes sure that all the currently stacked
     identifiers are stacked (even if those identifiers have been
     redefined) and returns a list of the stacked identifiers.

 - Macro: untrace proc1 ...
     Turns tracing, tracking, and  off for its arguments.

 - Macro: untrace
     With no arguments, untraces all currently traced identifiers and
     returns a list of these formerly traced identifiers.

 - Macro: untrack proc1 ...
     Turns tracing, tracking, and  off for its arguments.

 - Macro: untrack
     With no arguments, untracks all currently tracked identifiers and
     returns a list of these formerly tracked identifiers.

 - Macro: unstack proc1 ...
     Turns tracing, stacking, and  off for its arguments.

 - Macro: unstack
     With no arguments, unstacks all currently stacked identifiers and
     returns a list of these formerly stacked identifiers.

  These are _procedures_ for tracing.  If defmacros are not natively
supported by your implementation, these might be more convenient to use.

 - Function: tracef proc
 - Function: tracef proc name
     To trace, type
          (set! SYMBOL (tracef SYMBOL))

     or
          (set! SYMBOL (tracef SYMBOL 'SYMBOL))

     or
          (define SYMBOL (tracef FUNCTION))

     or
          (define SYMBOL (tracef FUNCTION 'SYMBOL))

 - Function: untracef proc
     Removes tracing, tracking, or stacking for PROC.  To untrace, type
          (set! SYMBOL (untracef SYMBOL))


automatically generated by info2www version 1.2.2.9