mirror of
https://github.com/ocaml-tracing/ocaml-trace.git
synced 2026-03-09 20:33:34 -04:00
deploy: 35df74c82e
This commit is contained in:
parent
130480acd5
commit
5465c9322c
8 changed files with 19 additions and 35 deletions
|
|
@ -16,7 +16,7 @@
|
|||
<span>name:string <span class="arrow">-></span></span>
|
||||
<span>t_ref:<a href="../../Thread_ref/index.html#type-t">Thread_ref.t</a> <span class="arrow">-></span></span>
|
||||
<span>time_ns:int64 <span class="arrow">-></span></span>
|
||||
<span>async_id:int <span class="arrow">-></span></span>
|
||||
<span>async_id:<a href="../../../../trace/Trace_core/index.html#type-trace_id">Trace_core.trace_id</a> <span class="arrow">-></span></span>
|
||||
<span>args:
|
||||
<span><span>[< <span>`Bool of bool & <span class="type-var">'a</span> & <span class="type-var">'b</span> & <span class="type-var">'c</span> & <span class="type-var">'d</span> & <span class="type-var">'e</span> & <span class="type-var">'f</span> & <span class="type-var">'g</span></span>
|
||||
<span><span>| `Float</span> of float & <span class="type-var">'h</span> & <span class="type-var">'i</span> & <span class="type-var">'j</span> & <span class="type-var">'k</span> & <span class="type-var">'l</span> & <span class="type-var">'m</span> & <span class="type-var">'n</span></span>
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
<span>name:string <span class="arrow">-></span></span>
|
||||
<span>t_ref:<a href="../../Thread_ref/index.html#type-t">Thread_ref.t</a> <span class="arrow">-></span></span>
|
||||
<span>time_ns:int64 <span class="arrow">-></span></span>
|
||||
<span>async_id:int <span class="arrow">-></span></span>
|
||||
<span>async_id:<a href="../../../../trace/Trace_core/index.html#type-trace_id">Trace_core.trace_id</a> <span class="arrow">-></span></span>
|
||||
<span>args:
|
||||
<span><span>[< <span>`Bool of bool & <span class="type-var">'a</span> & <span class="type-var">'b</span> & <span class="type-var">'c</span> & <span class="type-var">'d</span> & <span class="type-var">'e</span> & <span class="type-var">'f</span> & <span class="type-var">'g</span></span>
|
||||
<span><span>| `Float</span> of float & <span class="type-var">'h</span> & <span class="type-var">'i</span> & <span class="type-var">'j</span> & <span class="type-var">'k</span> & <span class="type-var">'l</span> & <span class="type-var">'m</span> & <span class="type-var">'n</span></span>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1,2 +1,2 @@
|
|||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Collector (trace.Trace_core.Collector)</title><link rel="stylesheet" href="../../../_odoc-theme/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.2"/><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">trace</a> » <a href="../index.html">Trace_core</a> » Collector</nav><header class="odoc-preamble"><h1>Module <code><span>Trace_core.Collector</span></code></h1><p>A global collector.</p><p>The collector, if present, is responsible for collecting messages and spans, and storing them, recording them, forward them, or offering them to other services and processes.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-dummy_span"><a href="#val-dummy_span" class="anchor"></a><code><span><span class="keyword">val</span> dummy_span : int64</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-dummy_explicit_span"><a href="#val-dummy_explicit_span" class="anchor"></a><code><span><span class="keyword">val</span> dummy_explicit_span : <span class="xref-unresolved">Trace_core__.Types.explicit_span</span></span></code></div></div><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-S"><a href="#module-type-S" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-S/index.html">S</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Signature for a collector.</p></div></div></div></body></html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Collector (trace.Trace_core.Collector)</title><link rel="stylesheet" href="../../../_odoc-theme/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.2"/><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">trace</a> » <a href="../index.html">Trace_core</a> » Collector</nav><header class="odoc-preamble"><h1>Module <code><span>Trace_core.Collector</span></code></h1><p>A global collector.</p><p>The collector, if present, is responsible for collecting messages and spans, and storing them, recording them, forward them, or offering them to other services and processes.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-dummy_span"><a href="#val-dummy_span" class="anchor"></a><code><span><span class="keyword">val</span> dummy_span : int64</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-dummy_trace_id"><a href="#val-dummy_trace_id" class="anchor"></a><code><span><span class="keyword">val</span> dummy_trace_id : string</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-dummy_explicit_span"><a href="#val-dummy_explicit_span" class="anchor"></a><code><span><span class="keyword">val</span> dummy_explicit_span : <span class="xref-unresolved">Trace_core__.Types.explicit_span</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-dummy_explicit_span_ctx"><a href="#val-dummy_explicit_span_ctx" class="anchor"></a><code><span><span class="keyword">val</span> dummy_explicit_span_ctx : <span class="xref-unresolved">Trace_core__.Types.explicit_span_ctx</span></span></code></div></div><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-S"><a href="#module-type-S" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-S/index.html">S</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Signature for a collector.</p></div></div></div></body></html>
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
list</span> <span class="arrow">-></span></span>
|
||||
<span>string <span class="arrow">-></span></span>
|
||||
<span><span>(<span>int64 <span class="arrow">-></span></span> <span class="type-var">'a</span>)</span> <span class="arrow">-></span></span>
|
||||
<span class="type-var">'a</span></span></code></div><div class="spec-doc"><p>Run the function in a new span.</p><p>This replaces the previous <code>enter_span</code> and <code>exit_span</code> which were too flexible to be efficient to implement in async contexts.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-enter_span"><a href="#val-enter_span" class="anchor"></a><code><span><span class="keyword">val</span> enter_span :
|
||||
<span class="type-var">'a</span></span></code></div><div class="spec-doc"><p>Run the function in a new span.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-enter_span"><a href="#val-enter_span" class="anchor"></a><code><span><span class="keyword">val</span> enter_span :
|
||||
<span>__FUNCTION__:<span>string option</span> <span class="arrow">-></span></span>
|
||||
<span>__FILE__:string <span class="arrow">-></span></span>
|
||||
<span>__LINE__:int <span class="arrow">-></span></span>
|
||||
|
|
@ -27,7 +27,7 @@
|
|||
list</span> <span class="arrow">-></span></span>
|
||||
<span>string <span class="arrow">-></span></span>
|
||||
int64</span></code></div><div class="spec-doc"><p>Enter a new implicit span. For many uses cases, <a href="#val-with_span"><code>with_span</code></a> will be easier to use.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.6</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-exit_span"><a href="#val-exit_span" class="anchor"></a><code><span><span class="keyword">val</span> exit_span : <span>int64 <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p>Exit span. This should be called on the same thread as the corresponding <a href="#val-enter_span"><code>enter_span</code></a>, and nest properly with other calls to enter/exit_span and <a href="#val-with_span"><code>with_span</code></a>.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.6</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-enter_manual_span"><a href="#val-enter_manual_span" class="anchor"></a><code><span><span class="keyword">val</span> enter_manual_span :
|
||||
<span>parent:<span><span class="xref-unresolved">Trace_core__.Types.explicit_span</span> option</span> <span class="arrow">-></span></span>
|
||||
<span>parent:<span><span class="xref-unresolved">Trace_core__.Types.explicit_span_ctx</span> option</span> <span class="arrow">-></span></span>
|
||||
<span>flavor:<span><span>[ `Sync <span>| `Async</span> ]</span> option</span> <span class="arrow">-></span></span>
|
||||
<span>__FUNCTION__:<span>string option</span> <span class="arrow">-></span></span>
|
||||
<span>__FILE__:string <span class="arrow">-></span></span>
|
||||
|
|
@ -41,7 +41,7 @@
|
|||
<span>| `None</span> ]</span>)</span>
|
||||
list</span> <span class="arrow">-></span></span>
|
||||
<span>string <span class="arrow">-></span></span>
|
||||
<span class="xref-unresolved">Trace_core__.Types.explicit_span</span></span></code></div><div class="spec-doc"><p>Enter an explicit span. Surrounding scope, if any, is provided by <code>parent</code>, and this function can store as much metadata as it wants in the hmap in the <a href="../../index.html#type-explicit_span"><code>explicit_span</code></a>'s <code>meta</code> field.</p><p>This means that the collector doesn't need to implement contextual storage mapping <a href="../../index.html#type-explicit_span.span"><code>span</code></a> to scopes, metadata, etc. on its side; everything can be transmitted in the <a href="../../index.html#type-explicit_span"><code>explicit_span</code></a>.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-exit_manual_span"><a href="#val-exit_manual_span" class="anchor"></a><code><span><span class="keyword">val</span> exit_manual_span : <span><span class="xref-unresolved">Trace_core__.Types.explicit_span</span> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p>Exit an explicit span.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_data_to_span"><a href="#val-add_data_to_span" class="anchor"></a><code><span><span class="keyword">val</span> add_data_to_span :
|
||||
<span class="xref-unresolved">Trace_core__.Types.explicit_span</span></span></code></div><div class="spec-doc"><p>Enter an explicit span. Surrounding scope, if any, is provided by <code>parent</code>, and this function can store as much metadata as it wants in the hmap in the <a href="../../index.html#type-explicit_span"><code>explicit_span</code></a>'s <code>meta</code> field.</p><p><b>NOTE</b> the <code>parent</code> argument is now an <a href="../../index.html#type-explicit_span_ctx"><code>explicit_span_ctx</code></a> and not an <a href="../../index.html#type-explicit_span"><code>explicit_span</code></a> since NEXT_RELEASE.</p><p>This means that the collector doesn't need to implement contextual storage mapping <a href="../../index.html#type-explicit_span.span"><code>span</code></a> to scopes, metadata, etc. on its side; everything can be transmitted in the <a href="../../index.html#type-explicit_span"><code>explicit_span</code></a>.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-exit_manual_span"><a href="#val-exit_manual_span" class="anchor"></a><code><span><span class="keyword">val</span> exit_manual_span : <span><span class="xref-unresolved">Trace_core__.Types.explicit_span</span> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p>Exit an explicit span.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> 0.3</li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_data_to_span"><a href="#val-add_data_to_span" class="anchor"></a><code><span><span class="keyword">val</span> add_data_to_span :
|
||||
<span>int64 <span class="arrow">-></span></span>
|
||||
<span><span><span>(string
|
||||
* <span>[ <span>`Int of int</span>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -7,4 +7,4 @@
|
|||
let on_init (state:st) ~time_ns : unit = …
|
||||
|
||||
(* … other custom callbacks … *)
|
||||
end </code></pre></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-S"><a href="#module-type-S" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-S/index.html">S</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>First class module signature for callbacks</p></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> <span>'st t</span></span><span> = <span>(<span class="keyword">module</span> <a href="module-type-S/index.html">S</a> <span class="keyword">with</span> <span class="keyword">type</span> <a href="module-type-S/index.html#type-st">st</a> = <span class="type-var">'st</span>)</span></span></code></div><div class="spec-doc"><p>Callbacks for a subscriber. There is one callback per event in <a href="../../Trace/index.html"><code>Trace</code></a>. The type <code>'st</code> is the state that is passed to every single callback.</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Dummy"><a href="#module-Dummy" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Dummy/index.html">Dummy</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Dummy callbacks. It can be useful to reuse some of these functions in a real subscriber that doesn't want to handle <b>all</b> events, but only some of them.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-dummy"><a href="#val-dummy" class="anchor"></a><code><span><span class="keyword">val</span> dummy : <span>unit <span class="arrow">-></span></span> <span><span class="type-var">'st</span> <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p>Dummy callbacks, ignores all events.</p></div></div></div></body></html>
|
||||
end </code></pre><p><b>NOTE</b>: the <code>trace_id</code> passed alongside manual spans is guaranteed to be at least 64 bits.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-S"><a href="#module-type-S" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> <a href="module-type-S/index.html">S</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>First class module signature for callbacks</p></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> <span>'st t</span></span><span> = <span>(<span class="keyword">module</span> <a href="module-type-S/index.html">S</a> <span class="keyword">with</span> <span class="keyword">type</span> <a href="module-type-S/index.html#type-st">st</a> = <span class="type-var">'st</span>)</span></span></code></div><div class="spec-doc"><p>Callbacks for a subscriber. There is one callback per event in <a href="../../Trace/index.html"><code>Trace</code></a>. The type <code>'st</code> is the state that is passed to every single callback.</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Dummy"><a href="#module-Dummy" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Dummy/index.html">Dummy</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Dummy callbacks. It can be useful to reuse some of these functions in a real subscriber that doesn't want to handle <b>all</b> events, but only some of them.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-dummy"><a href="#val-dummy" class="anchor"></a><code><span><span class="keyword">val</span> dummy : <span>unit <span class="arrow">-></span></span> <span><span class="type-var">'st</span> <a href="#type-t">t</a></span></span></code></div><div class="spec-doc"><p>Dummy callbacks, ignores all events.</p></div></div></div></body></html>
|
||||
|
|
@ -38,7 +38,7 @@
|
|||
<span>data:<span><span>(string * <span class="xref-unresolved">Trace_subscriber__.Types.user_data</span>)</span> list</span> <span class="arrow">-></span></span>
|
||||
<span>name:string <span class="arrow">-></span></span>
|
||||
<span>flavor:<span><span class="xref-unresolved">Trace_subscriber__.Types.flavor</span> option</span> <span class="arrow">-></span></span>
|
||||
<span>trace_id:int <span class="arrow">-></span></span>
|
||||
<span>trace_id:<a href="../../../Trace_core/index.html#type-trace_id">Trace_core.trace_id</a> <span class="arrow">-></span></span>
|
||||
<span><a href="../../../Trace_core/index.html#type-span">Trace_core.span</a> <span class="arrow">-></span></span>
|
||||
unit</span></code></div><div class="spec-doc"><p>Enter a manual (possibly async) span</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-on_exit_manual_span"><a href="#val-on_exit_manual_span" class="anchor"></a><code><span><span class="keyword">val</span> on_exit_manual_span :
|
||||
<span><a href="#type-st">st</a> <span class="arrow">-></span></span>
|
||||
|
|
@ -47,7 +47,7 @@
|
|||
<span>name:string <span class="arrow">-></span></span>
|
||||
<span>data:<span><span>(string * <span class="xref-unresolved">Trace_subscriber__.Types.user_data</span>)</span> list</span> <span class="arrow">-></span></span>
|
||||
<span>flavor:<span><span class="xref-unresolved">Trace_subscriber__.Types.flavor</span> option</span> <span class="arrow">-></span></span>
|
||||
<span>trace_id:int <span class="arrow">-></span></span>
|
||||
<span>trace_id:<a href="../../../Trace_core/index.html#type-trace_id">Trace_core.trace_id</a> <span class="arrow">-></span></span>
|
||||
<span><a href="../../../Trace_core/index.html#type-span">Trace_core.span</a> <span class="arrow">-></span></span>
|
||||
unit</span></code></div><div class="spec-doc"><p>Exit a manual span</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-on_extension_event"><a href="#val-on_extension_event" class="anchor"></a><code><span><span class="keyword">val</span> on_extension_event :
|
||||
<span><a href="#type-st">st</a> <span class="arrow">-></span></span>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue