Features/Tracing: Difference between revisions

From QEMU
 
(11 intermediate revisions by 5 users not shown)
Line 6: Line 6:


* Name: [[User:stefanha|Stefan Hajnoczi]]
* Name: [[User:stefanha|Stefan Hajnoczi]]
* Email: stefanha@linux.vnet.ibm.com
* Email: stefanha@redhat.com


== Description ==
== Description ==
Line 15: Line 15:


== Status ==
== 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 ==
== Links ==
* [http://repo.or.cz/w/qemu/stefanha.git/blob_plain/refs/heads/tracing:/docs/tracing.txt User documentation]
* [https://qemu.org/docs/master/devel/tracing.html User documentation]
* [[Features/Tracing/UseCases|Use cases]]
* [[Features/Tracing/Roadmap|Roadmap]]
* William Cohen's [https://github.com/wcohen/qemu_systemtap SystemTap scripts for QEMU]
 
[[Category:Completed feature pages]]

Latest revision as of 15:48, 24 February 2021

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