Chapter 12. Languages

There are many programming languages, as well as compilers and runtimes to execute them, and the way each language is executed affects how it can be traced. This chapter explains such differences and will help you find ways to trace any given language.

Learning Objectives:

  • Understand compiled language instrumentation (e.g.: C)

  • Understand JIT compiled language instrumentation (e.g.: Java, Node.js)

  • Understand interpreted language instrumentation (e.g.: bash shell)

  • Trace function calls, arguments, return value, and latency when possible

  • Trace the user-level stack trace in a given language

This chapter begins by summarizing programming language implementations, then uses a few languages as examples: C for compiled languages, ...

Get BPF Performance Tools now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.