ocaml-trace/trace-fuchsia/Trace_fuchsia/index.html
2026-01-21 01:25:53 +00:00

2 lines
6.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Trace_fuchsia (trace-fuchsia.Trace_fuchsia)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../_odoc-theme/odoc.css"/><meta name="generator" content="odoc 3.1.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">Index</a> &#x00BB; <a href="../index.html">trace-fuchsia</a> &#x00BB; Trace_fuchsia</nav><header class="odoc-preamble"><h1>Module <code><span>Trace_fuchsia</span></code></h1><p>Fuchsia trace collector.</p><p>This provides a collector for traces that emits data into a file using the compact binary <a href="https://fuchsia.dev/fuchsia-src/reference/tracing/trace-format">Fuchsia trace format</a>. This reduces the tracing overhead compared to <code>trace-tef</code>, at the expense of simplicity.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-Buf"><a href="#module-Buf" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Buf/index.html">Buf</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Buf_chain"><a href="#module-Buf_chain" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Buf_chain/index.html">Buf_chain</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>A set of buffers in use, and a set of ready buffers</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Buf_pool"><a href="#module-Buf_pool" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Buf_pool/index.html">Buf_pool</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Exporter"><a href="#module-Exporter" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Exporter/index.html">Exporter</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>An exporter, takes buffers with fuchsia events, and writes them somewhere</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Collector_fuchsia"><a href="#module-Collector_fuchsia" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Collector_fuchsia/index.html">Collector_fuchsia</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Writer"><a href="#module-Writer" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Writer/index.html">Writer</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Write fuchsia events into buffers.</p></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-output"><a href="#type-output" class="anchor"></a><code><span><span class="keyword">type</span> output</span><span> = </span><span>[ </span></code><ol><li id="type-output.File" class="def variant constructor anchored"><a href="#type-output.File" class="anchor"></a><code><span>| </span><span>`File <span class="keyword">of</span> string</span></code></li><li id="type-output.Exporter" class="def variant constructor anchored"><a href="#type-output.Exporter" class="anchor"></a><code><span>| </span><span>`Exporter <span class="keyword">of</span> <a href="Exporter/index.html#type-t">Exporter.t</a></span></code></li></ol><code><span> ]</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-collector"><a href="#val-collector" class="anchor"></a><code><span><span class="keyword">val</span> collector : <span><span class="label">out</span>:<span>[&lt; <a href="#type-output">output</a> ]</span> <span class="arrow">&#45;&gt;</span></span> <span>unit <span class="arrow">&#45;&gt;</span></span> <a href="../../trace/Trace_core/index.html#type-collector">Trace_core.collector</a></span></code></div><div class="spec-doc"><p>Make a collector that writes into the given output. See <a href="#val-setup"><code>setup</code></a> for more details.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-setup"><a href="#val-setup" class="anchor"></a><code><span><span class="keyword">val</span> setup : <span><span class="optlabel">?out</span>:<span>[ <a href="#type-output">output</a> <span>| `Env</span> ]</span> <span class="arrow">&#45;&gt;</span></span> <span>unit <span class="arrow">&#45;&gt;</span></span> unit</span></code></div><div class="spec-doc"><p><code>setup ()</code> installs the collector depending on <code>out</code>.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">out</span> <p>can take different values:</p><ul><li>regular <a href="#type-output"><code>output</code></a> value to specify where events go</li><li><code>`Env</code> will enable tracing if the environment variable &quot;TRACE&quot; is set.</li></ul></li></ul><ul><li>If it's set to &quot;1&quot;, then the file is &quot;trace.fxt&quot;.</li><li>Otherwise, if it's set to a non empty string, the value is taken to be the file path into which to write.</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-with_setup"><a href="#val-with_setup" class="anchor"></a><code><span><span class="keyword">val</span> with_setup : <span><span class="optlabel">?out</span>:<span>[&lt; <a href="#type-output">output</a> <span>| `Env</span> Env ]</span> <span class="arrow">&#45;&gt;</span></span> <span>unit <span class="arrow">&#45;&gt;</span></span> <span><span>(<span>unit <span class="arrow">&#45;&gt;</span></span> <span class="type-var">'a</span>)</span> <span class="arrow">&#45;&gt;</span></span> <span class="type-var">'a</span></span></code></div><div class="spec-doc"><p><code>with_setup () f</code> (optionally) sets a collector up, calls <code>f()</code>, and makes sure to shutdown before exiting.</p></div></div></div></body></html>