[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 03/11] trace: recommend "log" backend for getting started with tra
From: |
Stefan Hajnoczi |
Subject: |
[PULL 03/11] trace: recommend "log" backend for getting started with tracing |
Date: |
Mon, 1 Feb 2021 15:46:55 +0000 |
The "simple" backend is actually more complicated to use than the "log"
backend. Update the quickstart documentation to feature the "log"
backend instead of the "simple" backend.
Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20201216160923.722894-4-stefanha@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
---
docs/devel/tracing.rst | 35 ++++++++++++++++++-----------------
1 file changed, 18 insertions(+), 17 deletions(-)
diff --git a/docs/devel/tracing.rst b/docs/devel/tracing.rst
index f7e589f67c..4ebf8e38ea 100644
--- a/docs/devel/tracing.rst
+++ b/docs/devel/tracing.rst
@@ -11,22 +11,22 @@ for debugging, profiling, and observing execution.
Quickstart
==========
-1. Build with the 'simple' trace backend::
+Enable tracing of ``memory_region_ops_read`` and ``memory_region_ops_write``
+events::
- ./configure --enable-trace-backends=simple
- make
+ $ qemu --trace "memory_region_ops_*" ...
+ ...
+ 719585@1608130130.441188:memory_region_ops_read cpu 0 mr 0x562fdfbb3820
addr 0x3cc value 0x67 size 1
+ 719585@1608130130.441190:memory_region_ops_write cpu 0 mr 0x562fdfbd2f00
addr 0x3d4 value 0x70e size 2
-2. Create a file with the events you want to trace::
+This output comes from the "log" trace backend that is enabled by default when
+``./configure --enable-trace-backends=BACKENDS`` was not explicitly specified.
- echo memory_region_ops_read >/tmp/events
+More than one trace event pattern can be specified by providing a file
+instead::
-3. Run the virtual machine to produce a trace file::
-
- qemu --trace events=/tmp/events ... # your normal QEMU invocation
-
-4. Pretty-print the binary trace file::
-
- ./scripts/simpletrace.py trace-events-all trace-* # Override * with QEMU
<pid>
+ $ echo "memory_region_ops_*" >/tmp/events
+ $ qemu --trace events=/tmp/events ...
Trace events
============
@@ -195,7 +195,7 @@ script.
The trace backends are chosen at configure time::
- ./configure --enable-trace-backends=simple
+ ./configure --enable-trace-backends=simple,dtrace
For a list of supported trace backends, try ./configure --help or see below.
If multiple backends are enabled, the trace is sent to them all.
@@ -227,10 +227,11 @@ uses DPRINTF().
Simpletrace
-----------
-The "simple" backend supports common use cases and comes as part of the QEMU
-source tree. It may not be as powerful as platform-specific or third-party
-trace backends but it is portable. This is the recommended trace backend
-unless you have specific needs for more advanced backends.
+The "simple" backend writes binary trace logs to a file from a thread, making
+it lower overhead than the "log" backend. A Python API is available for writing
+offline trace file analysis scripts. It may not be as powerful as
+platform-specific or third-party trace backends but it is portable and has no
+special library dependencies.
Monitor commands
~~~~~~~~~~~~~~~~
--
2.29.2
- [PULL 00/11] Tracing patches, Stefan Hajnoczi, 2021/02/01
- [PULL 01/11] trace: fix simpletrace doc mismerge, Stefan Hajnoczi, 2021/02/01
- [PULL 06/11] trace: add meson custom_target() depend_files for tracetool, Stefan Hajnoczi, 2021/02/01
- [PULL 04/11] tracetool: fix "PRI" macro decoding, Stefan Hajnoczi, 2021/02/01
- [PULL 07/11] error: rename error_with_timestamp to message_with_timestamp, Stefan Hajnoczi, 2021/02/01
- [PULL 08/11] trace: make the 'log' backend timestamp configurable, Stefan Hajnoczi, 2021/02/01
- [PULL 03/11] trace: recommend "log" backend for getting started with tracing,
Stefan Hajnoczi <=
- [PULL 02/11] tracing: convert documentation to rST, Stefan Hajnoczi, 2021/02/01
- [PULL 11/11] trace: update docs with meson build information, Stefan Hajnoczi, 2021/02/01
- [PULL 10/11] trace: document how to specify multiple --trace patterns, Stefan Hajnoczi, 2021/02/01
- Re: [PULL 10/11] trace: document how to specify multiple --trace patterns, BALATON Zoltan, 2021/02/01
- Re: [PULL 10/11] trace: document how to specify multiple --trace patterns, Kevin Wolf, 2021/02/01
- Re: [PULL 10/11] trace: document how to specify multiple --trace patterns, Philippe Mathieu-Daudé, 2021/02/01
- Re: [PULL 10/11] trace: document how to specify multiple --trace patterns, BALATON Zoltan, 2021/02/01
- Re: [PULL 10/11] trace: document how to specify multiple --trace patterns, Kevin Wolf, 2021/02/01
- Re: [PULL 10/11] trace: document how to specify multiple --trace patterns, Paolo Bonzini, 2021/02/01
- Re: [PULL 10/11] trace: document how to specify multiple --trace patterns, BALATON Zoltan, 2021/02/01