pub struct PythonSpy {
pub pid: Pid,
pub process: Process,
pub version: Version,
pub interpreter_address: usize,
pub threadstate_address: usize,
pub config: Config,
pub short_filenames: HashMap<String, Option<String>>,
pub python_thread_ids: HashMap<u64, Tid>,
pub python_thread_names: HashMap<u64, String>,
pub dockerized: bool,
}
Expand description
Lets you retrieve stack traces of a running python program
Fields§
§pid: Pid
§process: Process
§version: Version
§interpreter_address: usize
§threadstate_address: usize
§config: Config
§short_filenames: HashMap<String, Option<String>>
§python_thread_ids: HashMap<u64, Tid>
§python_thread_names: HashMap<u64, String>
§dockerized: bool
Implementations§
Source§impl PythonSpy
impl PythonSpy
Sourcepub fn new(pid: Pid, config: &Config) -> Result<PythonSpy, Error>
pub fn new(pid: Pid, config: &Config) -> Result<PythonSpy, Error>
Constructs a new PythonSpy object.
Sourcepub fn retry_new(
pid: Pid,
config: &Config,
max_retries: u64,
) -> Result<PythonSpy, Error>
pub fn retry_new( pid: Pid, config: &Config, max_retries: u64, ) -> Result<PythonSpy, Error>
Creates a PythonSpy object, retrying up to max_retries times. Mainly useful for the case where the process is just started and symbols or the python interpreter might not be loaded yet.
Sourcepub fn get_stack_traces(&mut self) -> Result<Vec<StackTrace>, Error>
pub fn get_stack_traces(&mut self) -> Result<Vec<StackTrace>, Error>
Gets a StackTrace for each thread in the current process
Auto Trait Implementations§
impl Freeze for PythonSpy
impl RefUnwindSafe for PythonSpy
impl Send for PythonSpy
impl Sync for PythonSpy
impl Unpin for PythonSpy
impl UnwindSafe for PythonSpy
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more