Features/Tracing

From QEMU

Summary

Tracing aids debugging and performance analysis with a set of light-weight events throughout QEMU that are logged when hit.

Owner

Description

Light-weight logging at points of interest inside QEMU can improve common debugging and performance analysis tasks. Currently the QEMU community has to rely on debuggers, which may be invasive and slow, or printfs, which are not suited for high-frequency logging.

Tracing addresses these observability shortcomings with an easily extended set of trace events in QEMU that can be enabled/disable at runtime.

Status

Tracing support is available in qemu.git for several backends:

  • SystemTap (DTrace)
  • LTTng Userspace Tracer
  • ftrace trace_marker
  • syslog
  • 'simple' built-in backend
  • qemu_log()

Git repository:

https://qemu-project.gitlab.io/qemu/devel/tracing.html

Links