Remote tracing — Hunter 3.6.1 documentation (original) (raw)
Hunter supports tracing local processes, with two backends: manhole and GDB. For now Windows isn’t supported.
Using GDB is risky (if anything goes wrong your process will probably be hosed up badly) so the Manhole backend is recommended. To use it:
from hunter import remote remote.install()
You should put this somewhere where it’s run early in your project (settings or package’s __init__.py
file).
The remote.install()
takes same arguments as manhole.install()
. You’ll probably only want to use verbose=False
…
The CLI¶
usage: hunter-trace [-h] -p PID [-t TIMEOUT] [--gdb] [-s SIGNAL] [OPTIONS [OPTIONS ...]]
positional arguments:
OPTIONS
optional arguments:
-h, --help | show this help message and exit |
---|---|
-p PID, --pid PID | |
A numerical process id. | |
-t TIMEOUT, --timeout TIMEOUT | |
Timeout to use. Default: 1 seconds. | |
--gdb | Use GDB to activate tracing. WARNING: it may deadlock the process! |
-s SIGNAL, --signal SIGNAL | |
Send the given SIGNAL to the process before connecting. |
The OPTIONS
are hunter.trace()
arguments.