Settings

Theme

Show HN: A simple, pretty alternative to strace written in Rust

github.com

36 points by JAKWAI 3 years ago · 9 comments

Reader

suprjami 3 years ago

Heavy professional strace user here.

afaics the wall clock time of the call is not implemented. This is effectively useless to me without that.

The second -ff is critical for following busy multiprocess stuff like a JVM.

If you aren't resolving every known struct then -x and -xx can be useful.

The FD resolution provided by -yy is not critical but can be a real time saver.

The flags I use most often are -ffttTyy -o -s

  • JAKWAIOP 3 years ago

    Uhh thanks for your feedback. That's very valuable to me since I did not actually know anyone who regularly uses strace. I will definitely look into implementing these flags then!

JAKWAIOP 3 years ago

Hi! Like strace, lurk allows a user to trace system calls. It implements an opinionated subset of strace. Compared to strace, lurk is optimized for readability and supports structured output in JSON format.

I’d be happy to receive some feedback : )

alexellisuk 3 years ago

It's been interesting watching you build this on Twitter.

What prompted you to invest your time in this project vs the others that you were probably considering?

  • JAKWAIOP 3 years ago

    Thanks! I was invested in improving the user experience of strace. Strace is incredibly useful for debugging but I wouldn't consider it particularly "accessible". Understanding the output is quite a challenge at first. My goal was to remove this burden and therefore make strace accessible to a broader audience. I probably should also mention that Julia Evan's talks also had quite an impact on me: https://www.youtube.com/watch?v=HfD9IMZ9rKY :)

pojntfx 3 years ago

Cool project, I really like the new structured output - that will make parsing stuff much easier than with strace! Is the performance overhead of tracing the syscalls comparable to strace?

  • JAKWAIOP 3 years ago

    Thanks for your feedback :D! I have actually never tested the performance compared to strace. I just used `time` to try to get a rough estimate and the two were basically taking the same time for the tasks I threw at them. I certainly think that there is _some_ overhead. Either in my _not fully optimized_ implementation or in the libc wrappers the *nix crate provides. Probably the former ;).

badrabbit 3 years ago

Supporting ltrace type tracing would be awesome

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection