Abstract
Tracing System Calls when things go wrong is a tradition that predates the Linux kernel, proto-forms of strace and even the original strace existed in operating systems since the late 80s. 35 years later, that tradition is alive and well, and the ptrace interface which powers it all is in a slightly better shape now, tracing System Calls and strace remain a relevant tool in the arsenal of systems programmers.
Intentrace is a command line alternative to strace that brings "zero-cost reasoning" to the debugging surface of strace `telling it like it is`, and in doing so opening the door for an entire new category of developers to utilize System Call tracing in their daily workflow. In this talk, an introduction to intentrace is given, followed by a discussion of the linux kernel and how engineers can navigate its unintentional obfuscations, in addition to other topics like syscall naming conventions, performance techniques in intentrace, and complexity in developer tooling.