resym 0.2.0

Serialize and symbolicate stack traces from remotely located PBD
Documentation
  • Coverage
  • 0%
    0 out of 9 items documented0 out of 1 items with examples
  • Size
  • Source code size: 27.86 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.92 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 23s Average build duration of successful builds.
  • all releases: 21s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • littledivy/resym
    3 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • littledivy

Crates.io

Documentation | Example

resym

Serialize and symbolicate stack traces from remotely located PDB.

[dependencies]
resym = "0.1"

Here's an example:

// your application

fn set_panic_hook() {
  std::panic::set_hook(Box::new(move |info| {
    #[cfg(all(target_os = "windows", target_arch = "x86_64"))]
    {
      let trace_str = resym::win64::trace();
      println!("Visit to symbolicate: http://<resym_svc>/{}", trace_str);
    }
  }));
}

fn main() {
  set_panic_hook();

  panic!("oh no!");
}
// your symbolification service

// GET /<trace_str>
fn handle_request(mut trace_str: Vec<u8>) -> Result<String> {
  let mut writer = Vec::new();
  let stream = std::fs::File::open("example.pdb")?;

  resym::symbolicate(stream, &mut trace_str, resym::DefaultFormatter::new(&mut writer))?;

  Ok(String::from_utf8(writer)?)
}

image