bpo-37937: Mention frame.f_trace in sys.settrace docs (GH-15439)
Mention frame.f_trace in sys.settrace docs, as well as the fact you still need to call `sys.settrace` to enable the tracing machinery before setting `frame.f_trace` will have any effect.
This commit is contained in:
parent
062cfe3b11
commit
9c2682efc6
|
@ -1301,6 +1301,17 @@ always available.
|
||||||
Note that as an exception is propagated down the chain of callers, an
|
Note that as an exception is propagated down the chain of callers, an
|
||||||
``'exception'`` event is generated at each level.
|
``'exception'`` event is generated at each level.
|
||||||
|
|
||||||
|
For more fine-grained usage, it's possible to set a trace function by
|
||||||
|
assigning ``frame.f_trace = tracefunc`` explicitly, rather than relying on
|
||||||
|
it being set indirectly via the return value from an already installed
|
||||||
|
trace function. This is also required for activating the trace function on
|
||||||
|
the current frame, which :func:`settrace` doesn't do. Note that in order
|
||||||
|
for this to work, a global tracing function must have been installed
|
||||||
|
with :func:`settrace` in order to enable the runtime tracing machinery,
|
||||||
|
but it doesn't need to be the same tracing function (e.g. it could be a
|
||||||
|
low overhead tracing function that simply returns ``None`` to disable
|
||||||
|
itself immediately on each frame).
|
||||||
|
|
||||||
For more information on code and frame objects, refer to :ref:`types`.
|
For more information on code and frame objects, refer to :ref:`types`.
|
||||||
|
|
||||||
.. audit-event:: sys.settrace "" sys.settrace
|
.. audit-event:: sys.settrace "" sys.settrace
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Mention ``frame.f_trace`` in :func:`sys.settrace` docs.
|
Loading…
Reference in New Issue