diff --git a/trace/Trace/Collector/index.html b/trace/Trace/Collector/index.html index 138c09b..c08ff49 100644 --- a/trace/Trace/Collector/index.html +++ b/trace/Trace/Collector/index.html @@ -1,2 +1,2 @@ -
Trace.CollectorA global collector.
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.
module type S = sig ... endTrace.CollectorA global collector.
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.
module type S = sig ... endSignature for a collector.
Collector.Sval enter_span :
+S (trace.Trace.Collector.S) Module type Collector.S
Signature for a collector.
This is only relevant to implementors of tracing backends; to instrument your code you only need to look at the Trace module.
val enter_span :
?__FUNCTION__:string ->
__FILE__:string ->
__LINE__:int ->
diff --git a/trace/Trace/index.html b/trace/Trace/index.html
index e882786..1d54f5d 100644
--- a/trace/Trace/index.html
+++ b/trace/Trace/index.html
@@ -1,23 +1,23 @@
-Trace (trace.Trace) Module Trace
Trace.
User defined data, generally passed as key/value pairs
module Collector : sig ... endA global collector.
Tracing
Is there a collector?
This is fast, so that the traced program can check it before creating any span or message
val enter_span :
+Trace (trace.Trace) Module Trace
Trace.
User defined data, generally passed as key/value pairs to whatever collector is installed (if any).
module Collector : sig ... endA global collector.
Tracing
Is there a collector?
This is fast, so that the traced program can check it before creating any span or message
val exit_span : span -> unitval with_span :
+ spanEnter a span. A span is a delimited period of time with a start instant ("enter") and stop instant ("exit"), associated with some metadata about the code entering/exiting some piece of code.
In particular the entrypoint comes with the location of the code (you can use __FILE__ and __LINE__ directly in OCaml), a mandatory name, and some optional metadata in a JSON-like representation.
val exit_span : span -> unitExit the span.
This should be called exactly once per span (even in case of exception). Once this is called, a timestamp might be recorded, and the span is considered finished and can't be used anymore
with_span ~__FILE__ ~__LINE__ name f enters a new span sp, and calls f sp. sp might be a dummy span if no collector is installed. When f sp returns or raises, the span sp is exited.
This is the recommended way to instrument most code.
message msg logs a message msg (if a collector is installed). Additional metadata can be provided.
Collector
type collector = (module Collector.S)val setup_collector : collector -> unitsetup_collector c installs c as the collector.
\ No newline at end of file
+ unitmessagef (fun k->k"hello %s %d!" "world" 42) is like message "hello world 42!" but only computes the string formatting if a collector is installed.
Give a name to the current thread. This might be used by the collector to display traces in a more informative way.
Give a name to the current process. This might be used by the collector to display traces in a more informative way.
Emit a counter of type int. Counters represent the evolution of some quantity over time.
Emit a counter of type float. See counter_int for more details.
Collector
type collector = (module Collector.S)An event collector.
See Collector for more details.
val setup_collector : collector -> unitsetup_collector c installs c as the current collector.
\ No newline at end of file