Skip to content

Commit 9850b39

Browse files
committed
docs: Update tracing.md
This commit fixes a link pointing to wrong location and refines the content to ease reading. Signed-off-by: Marco Cali <[email protected]>
1 parent 57a44fe commit 9850b39

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

docs/tracing.md

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@
22

33
## Introduction
44

5-
Firecracker implements a framework for instrumentation based tracing.
5+
Firecracker implements a framework for instrumentation based tracing with the
6+
aim to improve its debugability.
67

7-
Instrumentation based tracing as defined by
8-
[Sheng Liang on usenix.org](https://www.usenix.org/legacy/publications/library/proceedings/coots99/full_papers/liang/liang_html/node9.html):
8+
Instrumentation based tracing was defined by
9+
[Sheng Liang on usenix.org](https://www.usenix.org/legacy/publications/library/proceedings/coots99/full_papers/liang/liang_html/node9.html)
10+
as:
911

1012
> There are two ways to obtain profiling information: either statistical
1113
> sampling or code instrumentation. Statistical sampling is less disruptive to
@@ -16,8 +18,6 @@ Instrumentation based tracing as defined by
1618
> percentage of time spent in frequently-called methods, whereas code
1719
> instrumentation can report the exact number of time each method is invoked.
1820
19-
The focus with tracing in Firecracker is to improve debug-ability.
20-
2121
Enabling tracing adds logs output on each functions entry and exit. This assists
2222
debugging problems that relate to deadlocks or high latencies by quickly
2323
identifying elongated function calls.
@@ -26,11 +26,12 @@ identifying elongated function calls.
2626

2727
Firecracker implements instrumentation based tracing via
2828
[`log`](https://github.com/rust-lang/log) and
29-
[`log_instrument`](https://github.com/JonathanWoollett-Light/log-instrument),
30-
outputting a `Trace` level log when entering and exiting every function.
29+
[`log_instrument`](../src/log-instrument), outputting a `Trace` level log when
30+
entering and exiting every function.
3131

32-
It is disabled by default at compile-time. Tracing functionality has no impact
33-
on the release binary.
32+
Adding traces impacts Firecracker binary size and its performance, so
33+
instrumentation is not present by default. Instrumentation is also not present
34+
on the release binaries.
3435

3536
You can use `cargo run --bin clippy-tracing --` to build and run the latest
3637
version in the repo or you can run `cargo install --path src/clippy-tracing` to

0 commit comments

Comments
 (0)